2011-02-09 84 views
1

我使用Jersey创建了简单的Web服务,它读入XML文件,然后基于该XML创建一些对象。我所拥有的只是一个将消息发布为xml的方法。我解析XML并使用值来创建一些业务对象。围绕现有Jersey Jersey REST风格的服务的SOAP包装

最近我们发现我们的客户只支持SOAP。

有没有一种方法可以在此基础上轻松编写SOAP封装器? (我看到穆勒提到,但从未使用过它)

或者从零开始并重写SOAP会更容易吗?

我完全不熟悉SOAP,看起来比我在泽西岛的经验复杂得多。谢谢!

+0

您使用的骡子? – b7kich 2011-03-02 03:52:39

回答

0

最简单的方法是公开一个将XML作为字符串解析并返回XML文档(再次作为字符串)的单个方法。

public class Receiver { 
    public String postXML(String inputDocument) { 
    // parse and process XML xml 
    ... 
    return outputDocument.toString(); 
    } 
... 
} 

您应该能够使用该方法在泽西岛的服务,如果需要的话通过代表团单独的类。围绕创建一个这样的外观对象SOAP服务应该很容易用肥皂:http://axis.apache.org/axis/java/index.html

技术上优越的解决方案是分解的XML成一个面向对象的数据传输对象或实现与例如SOAP服务文件/文字信息。前者可能会增加成本而没有价值,这取决于你的情况。后者甚至可能得不到你的合作伙伴的支持。对于的SOAP消息样式的讨论,参见:

http://msdn.microsoft.com/en-us/library/ms996466.aspx#rpc_literal_topic3

相关问题