axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Rodriguez (JIRA)" <j...@apache.org>
Subject [jira] Created: (AXIS2-3029) wsd2java no-namespace import error
Date Fri, 27 Jul 2007 20:21:52 GMT
wsd2java no-namespace import error
----------------------------------

                 Key: AXIS2-3029
                 URL: https://issues.apache.org/jira/browse/AXIS2-3029
             Project: Axis 2.0 (Axis2)
          Issue Type: Bug
          Components: codegen
    Affects Versions: 1.2
         Environment: WinXP, jdk1.5
            Reporter: Alex Rodriguez
         Attachments: test.wsdl

I have a wsdl that imports a schema with no namespace; I've included a sample at the bottom
of this email. Trying to generate a client stub fails with both xmlbeans and adb, the error
is:

Exception in thread "main" org.apache.axis2.wsdl.codegen.CodeGenerationException: java.lang.RuntimeException:
java.lang.reflect.InvocationTargetException
        at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:256)
        at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:32)
        at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:21)
Caused by: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
        at org.apache.axis2.wsdl.codegen.extension.XMLBeansExtension.engage(XMLBeansExtension.java:103)
        at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:209)
        ... 2 more
Caused by: 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.axis2.wsdl.codegen.extension.XMLBeansExtension.engage(XMLBeansExtension.java:92)
        ... 3 more
Caused by: java.lang.RuntimeException: org.apache.xmlbeans.XmlException: error: src-resolve.a:
Could not find element 'AccountBOS@http://some.namespace'. Do you mean to refer to the element
named AccountBOS?
        at org.apache.axis2.xmlbeans.CodeGenerationUtility.processSchemas(CodeGenerationUtility.java:310)
        ... 8 more
Caused by: org.apache.xmlbeans.XmlException: error: src-resolve.a: Could not find element
'AccountBOS@http://some.namespace'. Do you mean to refer to the element named AccountBOS?
        at org.apache.xmlbeans.impl.schema.SchemaTypeSystemCompiler.compile(SchemaTypeSystemCompiler.java:225)
        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.xmlbeans.XmlBeans.compileXmlBeans(XmlBeans.java:667)
        at org.apache.axis2.xmlbeans.CodeGenerationUtility.processSchemas(CodeGenerationUtility.java:174)

I've independently run xmlbeans generation on this and it succeeds, correctly generating AccountBOS
in noNamespace. The problem with wsdl2java is that the reference to AccountBOS is being assigned
a namespace when it shouldn't be, this is an import, not an include.

<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns="" xmlns:conv="http://www.openuri.org/2002/04/soap/conversation/"
xmlns:cw="http://www.openuri.org/2002/04/wsdl/conversation/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
xmlns:jms="http://www.openuri.org/2002/04/wsdl/jms/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://some.namespace" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
targetNamespace="http://some.namespace">
  <wsdl:types>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:element name="AccountBOS">
        <xs:complexType>
            <xs:sequence>
                <xs:element type="xs:long" name="Account_ID"/>
            </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://some.namespace" xmlns:s="http://www.w3.org/2001/XMLSchema"
xmlns:acc="http://some.namespace"> 
      <s:import/>
      <s:element name="getAccount">
        <s:complexType>
          <s:sequence>
            <s:element ref="AccountBOS"/>
          </s:sequence>
        </s:complexType>
      </s:element>
    </s:schema>
  </wsdl:types>
  <wsdl:message name="getAccountSoapIn">
      <wsdl:part name="parameters" element="s0:getAccount"/>
    </wsdl:message>
  <wsdl:message name="getAccountSoapOut">
    <wsdl:part name="parameters" element="s0:getAccount"/>
  </wsdl:message>
  <wsdl:portType name="AccountServiceSoap">
    <wsdl:operation name="getAccount">
      <wsdl:input message="s0:getAccountSoapIn"/>
      <wsdl:output message="s0:getAccountSoapOut"/>
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="AccountServiceSoap" type="s0:AccountServiceSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
    <wsdl:operation name="getAccount">
      <soap:operation soapAction="http://some.namespace/getAccount" style="document"/>
      <wsdl:input>
        <soap:body use="literal"/>
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
    <wsdl:service name="AccountService">
    <wsdl:port name="AccountServiceSoap" binding="s0:AccountServiceSoap">
      <soap:address location="http://localhost:7001/AccountService.jws"/>
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


Mime
View raw message