Yes -- there are structures within the UDDI schema that cause "challenges" for JAX-RPC.
See the JAX-RPC Technical Note: http://www.oasis-open.org/committees/uddi-spec/doc/tns.htm#jaxrpc11 Anne On Thu, 24 Mar 2005 15:45:39 +0100, Volodymir Ilchenko <[EMAIL PROTECTED]> wrote: > Hi All, > > I'm investigating the possibility to use Axis1.2beta3 & Tomcat5.5.8 as a web > service container for a UDDI v3 server. Simple samples provided by Axis > Tutorial work perfectly. > > I have created a WSDL doc with service description pointing to standard WSDL > bindings for UDDI API web services. After processing the WSDL doc with > WSDL2Java, I received a set of classes. Then I deployed the web services to > Axis. However, they don't work. Neither test succeeds from the generated > junit TestCase. > > An error is produced: > > java.lang.reflect.InvocationTargetException > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:585) > at > org.apache.axis.transport.http.AxisServlet.processQuery(AxisServlet.java:1116) > at > org.apache.axis.transport.http.AxisServlet.doGet(AxisServlet.java:224) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) > at > org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:301) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:825) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:743) > at > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) > at > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) > at java.lang.Thread.run(Thread.java:595) > Caused by: makeTypeElement() was told to create a type > "{urn:uddi-org:api_v3}>authInfo", with no containing element > at org.apache.axis.wsdl.fromJava.Types.makeTypeElement(Types.java:1723) > at org.apache.axis.wsdl.fromJava.Types.writeTypeForPart(Types.java:395) > at > org.apache.axis.wsdl.fromJava.Types.writeWrappedParameter(Types.java:582) > at > org.apache.axis.wsdl.fromJava.Emitter.writeWrapperPart(Emitter.java:1654) > at > org.apache.axis.wsdl.fromJava.Emitter.writeRequestMessage(Emitter.java:1451) > at > org.apache.axis.wsdl.fromJava.Emitter.writeMessages(Emitter.java:1087) > at > org.apache.axis.wsdl.fromJava.Emitter.writePortType(Emitter.java:1056) > at org.apache.axis.wsdl.fromJava.Emitter.getWSDL(Emitter.java:471) > at org.apache.axis.wsdl.fromJava.Emitter.emit(Emitter.java:322) > at > org.apache.axis.providers.BasicProvider.generateWSDL(BasicProvider.java:237) > at > org.apache.axis.strategies.WSDLGenStrategy.visit(WSDLGenStrategy.java:33) > at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) > at org.apache.axis.SimpleChain.generateWSDL(SimpleChain.java:104) > at > org.apache.axis.handlers.soap.SOAPService.generateWSDL(SOAPService.java:321) > at org.apache.axis.server.AxisServer.generateWSDL(AxisServer.java:467) > at > org.apache.axis.transport.http.QSWSDLHandler.invoke(QSWSDLHandler.java:68) > ... 23 more > > Could you point me to a possible cause of the error? > I have an assumption that WSDL2Java doesn't properly support the syntax of > UDDI XML schema (http://uddi.org/schema/uddi_v3.xsd). For instance, it > contains xsd:choice expression. > > If it turns out that WSDL2Java cannot handle the UDDI XML schema, what > workaround/scenario could be applied? Maybe JAXB/XMLBeans? > > Thanks in advance. > Volodymyr Ilchenko >
