You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Davanum Srinivas (JIRA)" <ji...@apache.org> on 2007/08/07 04:45:59 UTC

[jira] Updated: (AXIS2-3082) The generated wsdl doesn't validate & the generated wsdl chokes ....

     [ https://issues.apache.org/jira/browse/AXIS2-3082?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Davanum Srinivas updated AXIS2-3082:
------------------------------------

    Assignee: Deepal Jayasinghe

> The generated wsdl doesn't validate & the generated wsdl chokes ....
> --------------------------------------------------------------------
>
>                 Key: AXIS2-3082
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3082
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: codegen, wsdl
>         Environment: WinXP
>            Reporter: M Bissonnette
>            Assignee: Deepal Jayasinghe
>             Fix For: nightly
>
>
> I'm trying something very simple.  I'm using the latest axis2 1.3 RC3 nightly.  I'm using this class as input to Java2WSDL
> package quote.intfc;
> public interface Quotable {
>  public String getQuote();
> }
> So there is 1 method & it takes no input parameters and it returns a string.
> The relevant part of the build.xml is
>         <java2wsdl outputfilename="${service.wsdl}"
>                    className="${interface.class}"
>                    outputLocation="${build.dir}\wsdl"
>                    targetNamespace="${ service.namespace}"
>                    servicename="${service.name}"
>                    schemaTargetNamespace="${service.data.namespace}">
>         </java2wsdl> 
> The generated wsdl (included at the end) doesn't validate with XMLSpy.  I think it should or am I mistaken?  I get complaints about 
> attribute 'part' in extensibility element '<mime:content>' refers to part 'getQuote' which could not be found in message 'getQuoteRequest'  which seems to be from this fragment
> <http:operation location="RandomQuoteWS/getQuote"/>
>  <wsdl:input>
>   <mime:content part="getQuote" type="text/xml"/>
>  </wsdl:input>
>  <wsdl:output> 
>   <mime:content part="getQuote" type="text/xml"/>
>  </wsdl:output>
> </wsdl:operation>
> Also, I'm seeing this kind of message:
> extensibility element '<soap12:binding>' might be part of an unsupported WSDL extension because it is not in namespace ' http://schemas.xmlsoap.org/wsdl/soap' or 'http://schemas.xmlsoap.org/wsdl/http/' and therefore will not be validated
> Are you all using XMLSpy?  Is there something I need to do to make it happily validate this wsdl?
> Thinking that maybe XMLSpy is just complaining erroneously, I moved along and tried to use the wsdl to generate code.  The part from ant is
>        <java classname="org.apache.axis2.wsdl.WSDL2Java"
>             fork="true" classpathref="${axis2.classpath}">
>             <arg value="-uri"/>
>             <arg file="${ build.dir}/wsdl/${service.wsdl}"/>
>             <arg value="-o"/>
>             <arg file="${build.dir}"/>
>             <arg value="-p"/>
>             <arg value="${ service.java.packageName}"/>
>             <arg value="-ss"/>
>             <arg value="-g"/>
>             <arg value="-sd"/>
>             <arg value="-t"/> 
>             <arg value="-d"/>
>             <arg value="-s"/>
>             <arg value="adb"/>
>  </java>
> (yes, I'm trying adb and after I post this, I will go back to xmlbeans)
> and I get
> Exception in thread "main" org.apache.axis2.wsdl.codegen.CodeGenerationException: Error parsing WSDL
>         at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.<init>(CodeGenerationEngine.java:153) 
>         at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:35)
>         at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:24)
> Caused by: java.lang.NullPointerException
>         at org.apache.axis2.wsdl.codegen.CodeGenerationEngine .<init>(CodeGenerationEngine.java:129)
>         ... 2 more
> Java Result: 1
> So, is this reasonable?  Is there something wrong with my input interface?  Or are there options/settings I should be using?
> Thanks for any & all help.
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:axis2=" http://service.quote" xmlns:ns1="http://org.apache.axis2/xsd" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/ " xmlns:ns0="http://data.quote" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:mime=" http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12=" http://schemas.xmlsoap.org/wsdl/soap12/" targetNamespace="http://service.quote">
>     <wsdl:types>
>         <xs:schema xmlns:ns=" http://data.quote" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://data.quote">
>             <xs:element name="getQuoteResponse"> 
>                 <xs:complexType>
>                     <xs:sequence>
>                         <xs:element minOccurs="0" name="return" nillable="true" type="xs:string"/> 
>                     </xs:sequence>
>                 </xs:complexType>
>             </xs:element>
>         </xs:schema>
>     </wsdl:types>
>     <wsdl:message name="getQuoteRequest"/> 
>     <wsdl:message name="getQuoteResponse">
>         <wsdl:part name="parameters" element="ns0:getQuoteResponse"/>
>     </wsdl:message>
>     <wsdl:portType name="RandomQuoteWSPortType"> 
>         <wsdl:operation name="getQuote">
>             <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" message="axis2:getQuoteRequest" wsaw:Action="urn:getQuote"/> 
>             <wsdl:output xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" message="axis2:getQuoteResponse" wsaw:Action="urn:getQuoteResponse"/> 
>         </wsdl:operation>
>     </wsdl:portType>
>     <wsdl:binding name="RandomQuoteWSSOAP11Binding" type="axis2:RandomQuoteWSPortType">
>         <soap:binding transport=" http://schemas.xmlsoap.org/soap/http" style="document"/>
>         <wsdl:operation name="getQuote">
>             <soap:operation soapAction="urn:getQuote" style="document"/> 
>             <wsdl:input>
>                 <soap:body use="literal"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <soap:body use="literal"/> 
>             </wsdl:output>
>         </wsdl:operation>
>     </wsdl:binding>
>     <wsdl:binding name="RandomQuoteWSSOAP12Binding" type="axis2:RandomQuoteWSPortType">
>         <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
>         <wsdl:operation name="getQuote"> 
>             <soap12:operation soapAction="urn:getQuote" style="document"/>
>             <wsdl:input>
>                 <soap12:body use="literal"/>
>             </wsdl:input> 
>             <wsdl:output>
>                 <soap12:body use="literal"/>
>             </wsdl:output>
>         </wsdl:operation>
>     </wsdl:binding>
>     <wsdl:binding name="RandomQuoteWSHttpBinding" type="axis2:RandomQuoteWSPortType"> 
>         <http:binding verb="POST"/>
>         <wsdl:operation name="getQuote">
>             <http:operation location="RandomQuoteWS/getQuote"/>
>             <wsdl:input> 
>                 <mime:content type="text/xml" part="getQuote"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <mime:content type="text/xml" part="getQuote"/> 
>             </wsdl:output>
>         </wsdl:operation>
>     </wsdl:binding>
>     <wsdl:service name="RandomQuoteWS">
>         <wsdl:port name="RandomQuoteWSSOAP11port_http" binding="axis2:RandomQuoteWSSOAP11Binding"> 
>             <soap:address location="http://localhost:8080/axis2/services/RandomQuoteWS"/>
>         </wsdl:port>
>         <wsdl:port name="RandomQuoteWSSOAP12port_http" binding="axis2:RandomQuoteWSSOAP12Binding"> 
>             <soap12:address location="http://localhost:8080/axis2/services/RandomQuoteWS"/>
>         </wsdl:port>
>         <wsdl:port name="RandomQuoteWSHttpport" binding="axis2:RandomQuoteWSHttpBinding"> 
>             <http:address location="http://localhost:8080/axis2/services/RandomQuoteWS"/>
>         </wsdl:port>
>     </wsdl:service> 
> </wsdl:definitions>
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:axis2=" http://service.quote" xmlns:ns1="http://org.apache.axis2/xsd" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/ " xmlns:ns0="http://data.quote" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:mime=" http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12=" http://schemas.xmlsoap.org/wsdl/soap12/" targetNamespace="http://service.quote">
>     <wsdl:types>
>         <xs:schema xmlns:ns=" http://data.quote" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://data.quote">
>             <xs:element name="getQuoteResponse"> 
>                 <xs:complexType>
>                     <xs:sequence>
>                         <xs:element minOccurs="0" name="return" nillable="true" type="xs:string"/> 
>                     </xs:sequence>
>                 </xs:complexType>
>             </xs:element>
>         </xs:schema>
>     </wsdl:types>
>     <wsdl:message name="getQuoteRequest"/> 
>     <wsdl:message name="getQuoteResponse">
>         <wsdl:part name="parameters" element="ns0:getQuoteResponse"/>
>     </wsdl:message>
>     <wsdl:portType name="RandomQuoteWSPortType"> 
>         <wsdl:operation name="getQuote">
>             <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" message="axis2:getQuoteRequest" wsaw:Action="urn:getQuote"/> 
>             <wsdl:output xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" message="axis2:getQuoteResponse" wsaw:Action="urn:getQuoteResponse"/> 
>         </wsdl:operation>
>     </wsdl:portType>
>     <wsdl:binding name="RandomQuoteWSSOAP11Binding" type="axis2:RandomQuoteWSPortType">
>         <soap:binding transport=" http://schemas.xmlsoap.org/soap/http" style="document"/>
>         <wsdl:operation name="getQuote">
>             <soap:operation soapAction="urn:getQuote" style="document"/> 
>             <wsdl:input>
>                 <soap:body use="literal"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <soap:body use="literal"/> 
>             </wsdl:output>
>         </wsdl:operation>
>     </wsdl:binding>
>     <wsdl:binding name="RandomQuoteWSSOAP12Binding" type="axis2:RandomQuoteWSPortType">
>         <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
>         <wsdl:operation name="getQuote"> 
>             <soap12:operation soapAction="urn:getQuote" style="document"/>
>             <wsdl:input>
>                 <soap12:body use="literal"/>
>             </wsdl:input> 
>             <wsdl:output>
>                 <soap12:body use="literal"/>
>             </wsdl:output>
>         </wsdl:operation>
>     </wsdl:binding>
>     <wsdl:binding name="RandomQuoteWSHttpBinding" type="axis2:RandomQuoteWSPortType"> 
>         <http:binding verb="POST"/>
>         <wsdl:operation name="getQuote">
>             <http:operation location="RandomQuoteWS/getQuote"/>
>             <wsdl:input> 
>                 <mime:content type="text/xml" part="getQuote"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <mime:content type="text/xml" part="getQuote"/> 
>             </wsdl:output>
>         </wsdl:operation>
>     </wsdl:binding>
>     <wsdl:service name="RandomQuoteWS">
>         <wsdl:port name="RandomQuoteWSSOAP11port_http" binding="axis2:RandomQuoteWSSOAP11Binding"> 
>             <soap:address location="http://localhost:8080/axis2/services/RandomQuoteWS"/>
>         </wsdl:port>
>         <wsdl:port name="RandomQuoteWSSOAP12port_http" binding="axis2:RandomQuoteWSSOAP12Binding"> 
>             <soap12:address location="http://localhost:8080/axis2/services/RandomQuoteWS"/>
>         </wsdl:port>
>         <wsdl:port name="RandomQuoteWSHttpport" binding="axis2:RandomQuoteWSHttpBinding"> 
>             <http:address location="http://localhost:8080/axis2/services/RandomQuoteWS"/>
>         </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