[ 
http://issues.apache.org/jira/browse/AXIS2-647?page=comments#action_12377585 ] 

Thilo Frotscher commented on AXIS2-647:
---------------------------------------

Did you only try to generate the code? Or did you actually deploy the service 
and use the generated stub to send a message to the service?

Code generation works fine for me as well. However, after deploying the service 
and using the stub to send a message, I get an "Unbound namespace URI" 
exception if my WSDL imports a schema which imports a second schema.
After moving all types from the second schema to the first schema and 
restarting WSDL2Java everything works fine...

That's why I think that there's a bug in how WSDL2Java deals with schemas that 
import other schemas. 
I tested the latest sources from SVN and the problem is still there. Here's the 
stack trace:

org.apache.axis2.AxisFault: Unbound namespace URI 
'http://www.frotscher.com/ws/Restaurant'
        at 
org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:287)
        at 
org.apache.axis2.RestaurantServiceStub.GetMenuList(RestaurantServiceStub.java:113)
        at 
com.frotscher.restaurant.client.MyServiceClient.testADB(MyServiceClient.java:40)
        at 
com.frotscher.restaurant.client.MyServiceClient.main(MyServiceClient.java:85)
Caused by: java.lang.Exception: org.apache.axis2.AxisFault: Unbound namespace 
URI 'http://www.frotscher.com/ws/Restaurant'; nested exception is: 
        javax.xml.stream.XMLStreamException: Unbound namespace URI 
'http://www.frotscher.com/ws/Restaurant'
        at 
org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:219)
        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:589)
        at 
org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.receive(AbstractInOutSyncMessageReceiver.java:43)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:454)
        at 
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:284)
        at 
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:136)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
        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:869)
        at 
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
        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: javax.xml.stream.XMLStreamException: Unbound namespace URI 
'http://www.frotscher.com/ws/Restaurant'
        at 
com.ctc.wstx.sw.SimpleNsStreamWriter.writeStartOrEmpty(SimpleNsStreamWriter.java:240)
        at 
com.ctc.wstx.sw.BaseNsStreamWriter.writeStartElement(BaseNsStreamWriter.java:273)
        at 
org.apache.axiom.om.impl.MTOMXMLStreamWriter.writeStartElement(MTOMXMLStreamWriter.java:87)
        at 
org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeElement(StreamingOMSerializer.java:123)
        at 
org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:73)
        at 
org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:56)
        at 
org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:315)
        at 
org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:790)
        at 
org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:171)
        at 
org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:809)
        at 
org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:381)
        at 
org.apache.axis2.transport.http.CommonsHTTPTransportSender.sendUsingOutputStream(CommonsHTTPTransportSender.java:256)
        at 
org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:210)
        ... 21 more

        at org.apache.axis2.AxisFault.<init>(AxisFault.java:159)
        ... 4 more


> "Unbound namespace URI" when generating code for ADB and using chained schema 
> imports
> -------------------------------------------------------------------------------------
>
>          Key: AXIS2-647
>          URL: http://issues.apache.org/jira/browse/AXIS2-647
>      Project: Apache Axis 2.0 (Axis2)
>         Type: Bug

>  Environment: Axis2 1.0 RC4
>     Reporter: Thilo Frotscher
>  Attachments: Restaurant.xsd, RestaurantMessages.xsd, RestaurantService.aar, 
> RestaurantService.wsdl, restaurant-client-src.zip, restaurant-src.zip
>
> My scenario is as follows:
> - I defined the datatypes for my sample application in file Restaurant.xsd 
> and namespace R1
> - I defined the messages for communication with the RestaurantService in file 
> RestaurantMessages.xsd and namespace R2
> - RestaurantMessages.xsd imports Restaurant.xsd, since the messages make use 
> of the basic datatypes.
> - My WSDL imports RestaurantMessages.xsd
> - WS-I test tools show that this WSDL complies to BP
> - This scenario worked nicely with Axis 1.3
> I generated service and client code for this WSDL with WSDL2Java and ADB 
> option. When I send a message to the service using the generated proxy, I get 
> an "Unbound namespace URI" error for namespace R1( ! ) on the server side. 
> That is interesting, because the messages that are sent back and forth are 
> all in namespace R2 and my request message does not contain any reference to 
> R1 whatsoever. However, the response message (R2) is supposed to contain 
> types defined in Restaurant.xsd.
>  
> If I move all the datatype definitions from file Restaurant.xsd into 
> RestaurantMessages.xsd and thus from R1 to R2, everything works fine.
> Apparently Axis2 / ADB has issues with chained imports, perhaps only if not 
> all of the imports belong to the same namespace.

-- 
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
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to