When I try to browse the WSDL for the Attachments services, I get exceptions on the server. Best I can tell, there are qnames or maybe type definitions or other missing parts that never get added to the wsdl4j javax.wsdl.Definition object from which the WSDL is emitted.
For the EchoAttachmentsService I get: WSDLException: faultCode=OTHER_ERROR: Can't find prefix for 'EchoAttachmentsService'. Namespace prefixes must be set on the Definition object using the addNamespace(...) method.: at com.ibm.wsdl.util.xml.DOMUtils.getPrefix(Unknown Source) at com.ibm.wsdl.util.xml.DOMUtils.getQualifiedValue(Unknown Source) at com.ibm.wsdl.util.xml.DOMUtils.printQualifiedAttribute(Unknown Source) at com.ibm.wsdl.xml.WSDLWriterImpl.printParts(Unknown Source) at com.ibm.wsdl.xml.WSDLWriterImpl.printMessages(Unknown Source) at com.ibm.wsdl.xml.WSDLWriterImpl.printDefinition(Unknown Source) at com.ibm.wsdl.xml.WSDLWriterImpl.writeWSDL(Unknown Source) at com.ibm.wsdl.xml.WSDLWriterImpl.getDocument(Unknown Source) at org.apache.axis.wsdl.fromJava.Emitter.emit(Emitter.java:267) at org.apache.axis.providers.java.JavaProvider.generateWSDL(JavaProvider.ja va:494) at org.apache.axis.strategies.WSDLGenStrategy.visit(WSDLGenStrategy.java:72 ) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150) at org.apache.axis.SimpleChain.generateWSDL(SimpleChain.java:137) at org.apache.axis.handlers.soap.SOAPService.generateWSDL(SOAPService.java: 375) at org.apache.axis.server.AxisServer.generateWSDL(AxisServer.java:499) at org.apache.axis.transport.http.AxisServlet.processWsdlRequest(AxisServle t.java:484) at org.apache.axis.transport.http.AxisServlet.doGet(AxisServlet.java:285) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.j ava:339) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictSe rvletInstance.java:110) at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLi fecycleServlet.java:174) at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycle Servlet.java:313) at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLif ecycleServlet.java:116) at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance. java:283) at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(Vali dServletReferenceState.java:42) at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(Servle tInstanceReference.java:40) at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispa tch(WebAppRequestDispatcher.java:948) at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRe questDispatcher.java:530) at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppReq uestDispatcher.java:176) at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:7 9) at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInv oker.java:201) at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocati on(CachedInvocation.java:71) at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(Servle tRequestProcessor.java:182) at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSELis tener.java:334) at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection .java:56) at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java: 610) at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:431) at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:593) For the attachmentsTestRef service, I get: Attempted to write schema for bad QName (no namespace) : fault at org.apache.axis.wsdl.fromJava.Types.writeSchemaElement(Types.java:656) at org.apache.axis.wsdl.fromJava.Emitter.writePartToMessage(Emitter.java:13 68) at org.apache.axis.wsdl.fromJava.Emitter.writeFaultMessage(Emitter.java:129 0) at org.apache.axis.wsdl.fromJava.Emitter.writeMessages(Emitter.java:909) at org.apache.axis.wsdl.fromJava.Emitter.writePortType(Emitter.java:848) at org.apache.axis.wsdl.fromJava.Emitter.getWSDL(Emitter.java:383) at org.apache.axis.wsdl.fromJava.Emitter.emit(Emitter.java:262) at org.apache.axis.providers.java.JavaProvider.generateWSDL(JavaProvider.ja va:494) at org.apache.axis.strategies.WSDLGenStrategy.visit(WSDLGenStrategy.java:72 ) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150) at org.apache.axis.SimpleChain.generateWSDL(SimpleChain.java:137) at org.apache.axis.handlers.soap.SOAPService.generateWSDL(SOAPService.java: 375) at org.apache.axis.server.AxisServer.generateWSDL(AxisServer.java:499) at org.apache.axis.transport.http.AxisServlet.processWsdlRequest(AxisServle t.java:484) at org.apache.axis.transport.http.AxisServlet.doGet(AxisServlet.java:285) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.j ava:339) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictSe rvletInstance.java:110) at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLi fecycleServlet.java:174) at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycle Servlet.java:313) at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLif ecycleServlet.java:116) at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance. java:283) at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(Vali dServletReferenceState.java:42) at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(Servle tInstanceReference.java:40) at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispa tch(WebAppRequestDispatcher.java:948) at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRe questDispatcher.java:530) at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppReq uestDispatcher.java:176) at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:7 9) at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInv oker.java:201) at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocati on(CachedInvocation.java:71) at com.ibm.ws.webcontainer.cache.invocation.CacheableInvocationContext.invo ke(CacheableInvocationContext.java:114) at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(Servle tRequestProcessor.java:186) at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSELis tener.java:334) at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection .java:56) at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java: 610) at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:435) at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:593) Any idea what is wrong? Are there definitions missing from the WSDD that need to be there to generate WSDL, but don't need to be there to actually call the services successfully? I would like to implement an RPC-style web service that will return a result with an attachment, and would like to understand what has to be there in the WSDD both in order to successfully call the service, and to generate WSDL. Any help would be appreciated! Please follow up via e-mail as well as on the list. Thanks! Phil Schwarz Commercial Markets I/S Liberty Mutual Insurance Group Portsmouth, NH, USA [EMAIL PROTECTED]