After battling WID 6.1.2 start up, few more problems come up during migration of mediation projects to the new WID 6.1.2
1. WebService export binding does not regenerate the binding servlet in descriptors even after the full clean and rebuild. The error received when sending SOAP
Error 404: SRVE0190E: File not found: /sca/WebService
Basically the web.xml was missing servlet mapping
<servlet id=”WebService_WebServicePortTypeHttpPort“>
<display-name>Web Services Router Servlet for SCA</display-name>
<servlet-name>WebService_WebServicePortTypeHttpPort</servlet-name>
<servlet-class>com.ibm.ws.webservices.engine.transport.http.WebServicesServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>WebService_WebServicePortTypeHttpPort</servlet-name>
<url-pattern>sca/WebService</url-pattern>
</servlet-mapping>
The easiest way for WID to regenerate the web.xml properly was to “Replace the Binding” on the Export.
2. Web Service Import binding does not regenerate the EJB references in descriptors after full clean and rebuild. Getting the following exeption while testing the mediation module:
com.ibm.websphere.sca.ServiceRuntimeException: Resource
java:comp/env/sca/import/SOAServicesInterfacePartner cannot be resovled.:
caused by: javax.naming.NameNotFoundException: Name comp/env/sca not found in context “java:”.
This problem looks pretty much the same as in IBM support note:
The following ejb reference is misssing in ejb-jar.xml:
<service-ref>
<description>SOAServicesInterfacePartner</description>
<service-ref-name>sca/import/SOAServicesInterfacePartner</service-ref-name>
<service-interface>javax.xml.rpc.Service</service-interface>
<wsdl-file>META-INF/wsdl/validateUser.wsdl</wsdl-file>
<jaxrpc-mapping-file>META-INF/validateUser_mapping.xml</jaxrpc-mapping-file>
<service-qname xmlns:pfx=”urn:com:deloitte:pim:soa“>pfx:SOAServices</service-qname>
<handler>
<display-name>SCA Service Import Handler</display-name>
<handler-name>ServiceImportHandler</handler-name>
<handler-class>com.ibm.wsspi.sca.webservice.jaxrpc.ServiceImportHandler</handler-class>
</handler>
</service-ref>
the same trick with refactoring the name of the import did not work – looking for workaround ….
The root cause for both problems were presense of Soap 1.2 bindings in .NET Web Service WSDL. Disabling Soap 1.2 did the trick…
July 4, 2008 at 2:56 am |
I’m surprised that something so core to the platform is broken like this. I assume it’s a problem that only manifests itself with Mediation Modules created in WID 6.0.x? Is it also ‘Module’ Projects?
July 7, 2008 at 6:37 pm |
Yes, looks like it affects only the Mediation Modules created with WID 6.1.0.1