Fixes are available
6.1.0.33: Java SDK 1.5 SR12 FP1 Cumulative Fix for WebSphere
6.1.0.35: Java SDK 1.5 SR12 FP2 Cumulative Fix for WebSphere
6.1.0.37: Java SDK 1.5 SR12 FP3 Cumulative Fix for WebSphere
6.1.0.47: WebSphere Application Server V6.1 Fix Pack 47
6.1.0.39: Java SDK 1.5 SR12 FP4 Cumulative Fix for WebSphere Application Server
6.1.0.41: Java SDK 1.5 SR12 FP5 Cumulative Fix for WebSphere Application Server
6.1.0.43: Java SDK 1.5 SR13 Cumulative Fix for WebSphere Application Server
6.1.0.45: Java SDK 1.5 SR14 Cumulative Fix for WebSphere Application Server
6.1.0.47: Java SDK 1.5 SR16 Cumulative Fix for WebSphere Application Server
APAR status
Closed as program error.
Error description
When a user issues a ?wsdl request for a JAX-WS web service, the request may fail with the following error: [02/02/10 17:23:42:082 EST] 000000a2 ServletWrappe E SRVE0068E: Uncaught exception thrown in one of the service methods of the servlet: sca.webservice.provider.CIFModuleExport. Exception thrown : javax.servlet.ServletException at com.ibm.ws.websvcs.transport.http.WASAxis2Servlet.doGet(WASAxis2 Servlet.java:353) at javax.servlet.http.HttpServlet.service(HttpServlet.java:743) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWr apper.java:1152) at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(Ser vletWrapper.java:592) at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(S ervletWrapper.java:525) ... ---- Begin backtrace for Nested Throwables java.lang.IllegalStateException at com.ibm.ws.webcontainer.webapp.WebAppDispatcherContext.sendRedir ectWithStatusCode(WebAppDispatcherContext.java:493) at com.ibm.ws.webcontainer.webapp.WebAppDispatcherContext.sendRedir ect(WebAppDispatcherContext.java:450) at com.ibm.ws.webcontainer.srt.SRTServletResponse.sendRedirect(SRTS ervletResponse.java:1046) at com.ibm.ws.websvcs.transport.http.WASAxis2Servlet.processWsdlReq uest(WASAxis2Servlet.java:510) at com.ibm.ws.websvcs.transport.http.WASAxis2Servlet.doGet(WASAxis2 Servlet.java:338) ... This error happens when the JAX-WS web service meets both of the following criteria: - It does not specify the wsdlLocation parameter with its annotation javax.xml.ws.WebServiceProvider or javax.xml.ws.WebService annotation. - It uses the SOAP 1.2 binding. For example: @WebServiceProvider( targetNamespace="http://littlelulu.ibm.com/sample/Hello", serviceName="HelloWorldService", portName="HelloWorldPort" ) @ServiceMode(value=Service.Mode.MESSAGE) @BindingType(SOAPBinding.SOAP12HTTP_BINDING) public class HelloWorld implements Provider<OMElement> { ... } The JAX-WS runtime cannot dynamically generate a WSDL for this service because the JAX-WS specification forbids it: "SOAP 1.2/HTTP Binding A JAX-WS implementation MUST NOT generate a WSDL description for the endpoint." The ?wsdl request should fail with a more informative and concise error.
Local fix
To resolve the issue, add the wsdlLocation attribute. Using the example above, this would be the solution: @WebServiceProvider( targetNamespace="http://littlelulu.ibm.com/sample/Hello", serviceName="HelloWorldService", portName="HelloWorldPort", wsdlLocation="<relativePathNameToWSDL>" ) @ServiceMode(value=Service.Mode.MESSAGE) @BindingType(SOAPBinding.SOAP12HTTP_BINDING) public class HelloWorld implements Provider<OMElement> { ... }
Problem summary
**************************************************************** * USERS AFFECTED: Developers of JAX-WS services in IBM * * WebSphere Application Server Feature Pack * * for Web Services * **************************************************************** * PROBLEM DESCRIPTION: A JAX-WS ?wsdl request should fail * * with a more concise error message. * **************************************************************** * RECOMMENDATION: * **************************************************************** When a user issues a ?wsdl request for a JAX-WS web service, the request may fail with the following error: [02/02/10 17:23:42:082 EST] 000000a2 ServletWrappe E SRVE0068E: Uncaught exception thrown in one of the service methods of the servlet: sca.webservice.provider.CIFModuleExport. Exception thrown : javax.servlet.ServletException at com.ibm.ws.websvcs.transport.http.WASAxis2Servlet.doGet(WASAxis2 Servlet.java:353) at javax.servlet.http.HttpServlet.service(HttpServlet.java:743) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWr apper.java:1152) at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(Ser vletWrapper.java:592) at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(S ervletWrapper.java:525) ... ---- Begin backtrace for Nested Throwables java.lang.IllegalStateException at com.ibm.ws.webcontainer.webapp.WebAppDispatcherContext.sendRedir ectWithStatusCode(WebAppDispatcherContext.java:493) at com.ibm.ws.webcontainer.webapp.WebAppDispatcherContext.sendRedir ect(WebAppDispatcherContext.java:450) at com.ibm.ws.webcontainer.srt.SRTServletResponse.sendRedirect(SRTS ervletResponse.java:1046) at com.ibm.ws.websvcs.transport.http.WASAxis2Servlet.processWsdlReq uest(WASAxis2Servlet.java:510) at com.ibm.ws.websvcs.transport.http.WASAxis2Servlet.doGet(WASAxis2 Servlet.java:338) ... This error happens when the JAX-WS web service meets both of the following criteria: - It does not specify the wsdlLocation parameter with its annotation javax.xml.ws.WebServiceProvider or javax.jws.WebService annotation. - It uses the SOAP 1.2 binding. For example: @WebServiceProvider( targetNamespace="http://littlelulu.ibm.com/sample/Hello", serviceName="HelloWorldService", portName="HelloWorldPort" ) @ServiceMode(value=Service.Mode.MESSAGE) @BindingType(SOAPBinding.SOAP12HTTP_BINDING) public class HelloWorld implements Provider<OMElement> { ... } The JAX-WS runtime cannot dynamically generate a WSDL for this service because the JAX-WS specification forbids it: "SOAP 1.2/HTTP Binding A JAX-WS implementation MUST NOT generate a WSDL description for the endpoint." The ?wsdl request should fail with a more informative and concise exception and message. Note that this APAR does NOT fix the customer's application error. To resolve the error, the application developer must supply the WSDL file in the application and specify its location with the wsdlLocation parameter.
Problem conclusion
The JAX-WS runtime was fixed to throw a "javax.servlet.ServletException: WSWS7068E: The application server cannot display the Web Services Description Language (WSDL) file because the file cannot be loaded" error for a ?wsdl request failure as described previously. The fix for this APAR is currently targeted for inclusion in fix pack 6.1.0.33. Please refer to the Recommended Updates page for delivery information: http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
Temporary fix
Comments
APAR Information
APAR number
PM09209
Reported component name
WEBSERVIC FEATU
Reported component ID
5724J0850
Reported release
610
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2010-03-05
Closed date
2010-03-31
Last modified date
2010-03-31
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
WEBSERVIC FEATU
Fixed component ID
5724J0850
Applicable component levels
R610 PSY
UP
Document Information
Modified date:
25 October 2021