axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Volodymyr Ilchenko (JIRA)" <axis-...@ws.apache.org>
Subject [jira] Commented: (AXIS-1901) Implementation of the standard UDDI v.3 API web services with Axis fails
Date Mon, 28 Mar 2005 13:14:19 GMT
     [ http://issues.apache.org/jira/browse/AXIS-1901?page=comments#action_61634 ]
     
Volodymyr Ilchenko commented on AXIS-1901:
------------------------------------------

The problem seems to be with the binding style. The UDDI WSDLs don't specify style for the
bindings. Thus, Axis assumes the default style, which is 'document'. If I explicitly specify
the style to be 'rpc', then all the tests (except retrieving WSDLs) succeed.


Old uddi_api_v3_binding.wsdl:
=== snip ===
<binding name="UDDI_Inquiry_SoapBinding" type="uddi_api_v3_portType:UDDI_Inquiry_PortType">
	<soap:binding transport="http://schemas.xmlsoap.org/soap/http"/>
		<operation name="find_binding">
=== snip ===


New uddi_api_v3_binding.wsdl:
=== snip ===
<binding name="UDDI_Inquiry_SoapBinding" type="uddi_api_v3_portType:UDDI_Inquiry_PortType">
	<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>
		<operation name="find_binding">
=== snip ===

Anyway the problem remains for 'document' style.

> Implementation of the standard UDDI v.3 API web services with Axis fails
> ------------------------------------------------------------------------
>
>          Key: AXIS-1901
>          URL: http://issues.apache.org/jira/browse/AXIS-1901
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization, WSDL processing
>     Versions: 1.2RC3
>  Environment: Linux, Tomcat 5.5.8, Java 1.4.2_06
>     Reporter: Volodymyr Ilchenko

>
> I was investigating how Axis 1.2RC3 could be used to implement UDDI v.3 API web-services.
UDDI provides WSDL files at http://www.oasis-open.org/committees/uddi-spec/doc/tcspecs.htm#uddiv3
. There is also a slightly modified schema (without xsd:choice elements) at http://www.oasis-open.org/committees/uddi-spec/doc/tns.htm#jaxrpc11
.
> I did the following:
> 1. Generate Java classes from WSDL with WSDL2Java tool:
>   java org.apache.axis.wsdl.WSDL2Java -o src -t -s file:uddi_v3_service.wsdl
> where uddi_v3_service.wsdl is taken from http://www.oasis-open.org/committees/uddi-spec/doc/tn/uddi-spec-tc-tn-jax-rpc-20050126/wsdl/uddi_v3_service.wsdl
> 2. Compile the generated sources. The compilation fails in the test case: the CompletionStatus
class is instantiated with a simple constructor while it has a protected constructor which
requires a string parameter. I change the instantiation into a CompletionSrarus.value1 const
final field.
> 3. Implement a simple test method and a corresponding server implementation.
> 4. Deploy the web services with AdminClient:
>   org.apache.axis.client.AdminClient src/null/deploy.wsdd
> The deployment succeeds.
> 5. Run the test. The test fails with an exception in the Tomcat log.
> 6. Also an exception is generated if the web service is requested to generate a WSDL
(with ?wsdl URL parameter).
> The following exceptions occur:
> ===============================
> 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
> ===============================
> 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: Bean attribute _value is of type java.lang.String, which is not a simple type
>         at org.apache.axis.encoding.ser.SimpleSerializer.writeSchema(SimpleSerializer.java:252)
>         at org.apache.axis.wsdl.fromJava.Types.makeTypeElement(Types.java:1774)
>         at org.apache.axis.wsdl.fromJava.Types.writeType(Types.java:972)
>         at org.apache.axis.encoding.ser.BeanSerializer.writeField(BeanSerializer.java:422)
>         at org.apache.axis.encoding.ser.BeanSerializer.writeSchema(BeanSerializer.java:350)
>         at org.apache.axis.wsdl.fromJava.Types.makeTypeElement(Types.java:1774)
>         at org.apache.axis.wsdl.fromJava.Types.writeType(Types.java:972)
>         at org.apache.axis.encoding.ser.BeanSerializer.writeField(BeanSerializer.java:422)
>         at org.apache.axis.encoding.ser.BeanSerializer.writeSchema(BeanSerializer.java:350)
>         at org.apache.axis.wsdl.fromJava.Types.makeTypeElement(Types.java:1774)
>         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
> ===============================

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


Mime
View raw message