Weblogic的通用WS客户端

时间:2015-11-26 02:53:41

标签: java web-services soap wsdl

我在Jboss 7和Weblogic 12上运行应用程序,当我在weblogic上进行soap调用时比jboss更具限制性。我的客户端接口必须实现wsdl的所有方法,方法和参数的注释和返回类型必须完全相同。 Jboss更宽容。 有没有办法为soap调用实现一个简单的通用客户端而不必实现在Weblogic上运行的wsdl的所有方法?只是用我需要的方法?

在我的具体情况下,我实现了一个简单的客户端,只调用ws的一个方法(返回类型为void,我不需要/想要实现的结构)返回对象和我的界面没有实现wsdl的所有方法,在weblogic下我收到以下错误:

  

com.sun.xml.ws.api.wsdl.parser.WSDLParserExtensionContext.getWSDLModel()LCOM /太阳/ XML / WS / API /模型/ WSDL /编辑/ EditableWSDLModel;   java.lang.NoSuchMethodError:   com.sun.xml.ws.api.wsdl.parser.WSDLParserExtensionContext.getWSDLModel()LCOM /太阳/ XML / WS / API /模型/ WSDL /编辑/ EditableWSDLModel;           在weblogic.wsee.jaxws.framework.policy.WSDLParserExtension.definitionsElements(WSDLParserExtension.java:541)

1 个答案:

答案 0 :(得分:0)

我决定使用SAAJ

我按照这个例子http://www.concretepage.com/webservices/java-saaj-web-service-example

但在我的pom中,我不得不将javaee-api版本从6.0更改为7.0

TridentTopology topology = new TridentTopology();        
TridentState wordCounts =
     topology.newStream("spout1", spout)
       .each(new Fields("sentence"), new Split(), new Fields("word"))
       .groupBy(new Fields("word"))
       .persistentAggregate(new MemoryMapState.Factory(), new Count(), new Fields("count"))                
       .parallelismHint(6);

我试图遵循这个建议

Maven tests troubles with SOAP having Java EE 6 dependency

但解决方案对我不起作用