cristina0botez
Programmer
I am having problems invoking a SOAP Web Service from an XML-RPC Web Service. They are both deployed on WebLogic.
Here are the details:
We have ported a JBOSS .esb application that implements XML-RPC Web Services to a WebLogic .ear application. The porting was successful. Bellow you can see the the .ear archive structure:
The offersService-Client-1.0.jar contains a Web Service definition (not the implementation) and is used to invoke the Offers Web Service. The WS client and the jar were created using JDeveloper. The key files inside this jar are:
When invoking this WS from a class in the xmlrpc-services-app.ear, I get the following error:
HOWEVER, when I invoke it from a simple Web Service created in JDeveloper and deployed on WebLogic or even from the command line (so outside the WebLogic context), I do not get this error.
Here is how I create the client for the service:
Do you have any idea of what might be wrong? If you need any other details, please do not hesitate to ask.
Here are the details:
We have ported a JBOSS .esb application that implements XML-RPC Web Services to a WebLogic .ear application. The porting was successful. Bellow you can see the the .ear archive structure:
Code:
xmlrpc-services-app.ear
+ lib
+ aopalliance-1.0.jar
+ aspects-5.2.0.jar
+ commons-codec-1.3.jar
+ commons-collections-3.2.jar
+ commons-lang-2.4.jar
+ commons-logging-1.1.jar
+ container-common-api-5.2.0.jar
+ jettison-1.2.jar
+ junit-3.8.1.jar
+ log4j-1.2.16.jar
+ mysql-connector-java-5.1.12.jar
+ openads-api-xmlrpc-1.xmlrpc3.cmt_fix.2.jar
+ snmpTrapAppender-1.2.9.jar
+ spring-aop-3.0.1.RELEASE.jar
+ spring-asm-3.0.1.RELEASE.jar
+ spring-beans-3.0.1.RELEASE.jar
+ spring-context-3.0.1.RELEASE.jar
+ spring-context-support-3.0.1.RELEASE.jar
+ spring-core-3.0.1.RELEASE.jar
+ spring-expression-3.0.1.RELEASE.jar
+ spring-jdbc-3.0.1.RELEASE.jar
+ spring-ldap-1.2.1.jar
+ spring-security-core-2.0.5.RELEASE.jar
+ spring-tx-3.0.1.RELEASE.jar
+ spring-web-3.0.1.RELEASE.jar
+ lib-common-tools-1.5.jar
+ lib-security-1.5.jar
+ stax-api-1.0.1.jar
+ ws-commons-util-1.0.2.jar
+ xml-apis-1.0.b2.jar
+ xmlrpc-client-3.1.3.jar
+ xmlrpc-common-3.1.3.jar
+ xmlrpc-server-3.1.3.jar
+ META-INF
+ MANIFEST.MF
+ application.xml
+ weblogic-application.xml
+ xmlrpc-services-app.war
+ META-INF - generated by Maven
+ WEB-INF
+ classes
+ jboss-web.xml
+ lib
+ apache-mime4j-0.6.1.jar
+ commons-codec-1.4.jar
+ commons-logging-1.1.jar
+ httpclient-4.2-beta1.jar
+ httpcore-4.2-beta1.jar
+ httpmime-4.2-beta1.jar
+ servlet-api-2.3.jar
+ offersService-Client-1.0.jar
+ web.xml
+ index.jsp - not really used
Code:
GetOfferRequest.class
ObjectFactory.class
Offer.class
OffersPortType.class
OffersSchema.xsd
OffersService.class
OffersService.wsdl
OffersService.xml
Code:
com.sun.xml.ws.model.RuntimeModelerException: A WebService annotation is not present on class: offers.OffersPortType
at com.sun.xml.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:237)
at com.sun.xml.ws.client.WSServiceDelegate.buildRuntimeModel(WSServiceDelegate.java:762)
at weblogic.wsee.jaxws.spi.WLSProvider$ServiceDelegate.buildRuntimeModel(WLSProvider.java:982)
at com.sun.xml.ws.client.WSServiceDelegate.createSEIPortInfo(WSServiceDelegate.java:746)
at com.sun.xml.ws.client.WSServiceDelegate.addSEI(WSServiceDelegate.java:737)
at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:361)
at weblogic.wsee.jaxws.spi.WLSProvider$ServiceDelegate.internalGetPort(WLSProvider.java:934)
at weblogic.wsee.jaxws.spi.WLSProvider$ServiceDelegate$PortClientInstanceFactory.createClientInstance(WLSProvider.java:1039)
at weblogic.wsee.jaxws.spi.ClientInstancePool.takeSimpleClientInstance(ClientInstancePool.java:376)
at weblogic.wsee.jaxws.spi.ClientInstancePool.take(ClientInstancePool.java:232)
at weblogic.wsee.jaxws.spi.WLSProvider$ServiceDelegate.getPort(WLSProvider.java:852)
at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:344)
at weblogic.wsee.jaxws.spi.WLSProvider$ServiceDelegate.getPort(WLSProvider.java:792)
at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:326)
at javax.xml.ws.Service.getPort(Service.java:92)
at offers.OffersService.getOffersPort(OffersService.java:68)
Here is how I create the client for the service:
Code:
OffersService offersService = new OffersService();
OffersPortType offersPortType = offersService.getOffersPort(); // it crashes here