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 bu...@apache.org on 2003/08/18 13:08:45 UTC

DO NOT REPLY [Bug 22507] New: - Request Headers not generated by WSDL2Java

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22507>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22507

Request Headers not generated by WSDL2Java 

           Summary: Request Headers not generated by WSDL2Java
           Product: Axis
           Version: 1.1
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Major
          Priority: Other
         Component: WSDL processing
        AssignedTo: axis-dev@ws.apache.org
        ReportedBy: psaisuda@baan.com


Hi,
 I have a WSDL in which the Header is defined as a separate message . Now when 
i generate the proxies using WSDL2Java, the classes for Headers are not 
generated,  i.e the port::method() method does not include the header type as a 
parameter . Moreover the type safe interfaces for the header Element defined in 
the 'wsdl:types'  are also not generated.
  The example below will make my point more clear :

Here's the relevant part od the WSDL.

   <message name="RequestHeaderMsg">
        <part element="userinfo:RequestHeaderMsg" name="HeaderUserInfo"/>
    </message> 
    <message name="CreateRequestMsg">
        <part element="tnscreate:CreateRequest" name="CreateRequest"/>
    </message>
    <message name="CreateResponseMsg">
        <part element="tnscreate:CreateResponse" name="CreateResponse"/>
    </message>

    <portType name="FFNPort">
        <operation name="Create">
            <input message="wsdlns:CreateRequestMsg"/>
            <output message="wsdlns:CreateResponseMsg"/>
        </operation>
    </portType>
    <binding name="FFNbinding" type="wsdlns:FFNPort">
       <soap:binding style="document"     
transport="http://schemas.xmlsoap.org/soap/http"/>
        <operation name="Create">
            <soap:operation
            <input>
                <soap:body use="literal"/>
                <soap:header
                    message="wsdlns:RequestHeaderMsg"
                    part="HeaderUserInfo"
                    use="literal"> 
            </input>
            <output>
                <soap:body use="literal"/>
            </output>
        </operation>
    </binding>

   Here ,the header is defined in the message  'RequestHeaderMsg'. Now since 
the PortType Operations Input and output messages do not include the header , 
WSDL2Java does not generate the proxies for it . The fact that the soap:header 
is present in the soap:Binding is completely ignored. 
  

Regards,
Sai