hi all, It seems that this is one solution. Thanks! Yves-Marie.
Does anybody know that how to make classes for <soap:Header> by wsdl2java without AXIOM-API(s) ? such as, create the following classes by wsdl2java. mypackage.ID; mypackage.MACAddress; Regards! Guo ----- Original Message ----- From: "DANIEL, Yves Marie" <[email protected]> To: <[email protected]> Sent: Wednesday, February 18, 2009 7:22 PM Subject: RE: how to make classes for <soap:Header> by wsdl2java |I don't konw, but you can add elements in the header with : | | | QName elementName = new QName( "YOUR_ID" ); | OMFactory omFactory = OMAbstractFactory.getOMFactory(); | OMElement omElement = omFactory.createOMElement( elementName, null ); | omElement.setText( "YOUR_VALUE" ); | this._YOUR_STUB._getServiceClient().addHeader( omElement ); | | | Yves-Marie | | | | | | -----Message d'origine----- | De : Guo Tianchong [mailto:[email protected]] | Envoyé : mercredi 18 février 2009 11:09 | À : axis-user | Objet : how to make classes for <soap:Header> by wsdl2java | | hi all, | | I am using wsdl2java command to create java class. | Now, I can create classes for my <soap:Body>'s child elements. | but, how to make classes for <soap:Header>'s child elements? | | My resquest/response soap message is the following: | | ----> request message | <soap:Enveloper ...> | <soap:Header> | <mh:ID soap:mustUnderstand="1">1<mh:ID> | <mh:MACAddress soap:mustUnderstand="1">01234567ABC<mh:ID> | </soap:Header> | <soap:Body> | <mh:Inform> | ... ... | </mh:Inform> | <soap:Body> | </soap:Enveloper> | | ---->response message | <soap:Enveloper ...> | <soap:Header> | <mh:ID soap:mustUnderstand="1">1<mh:ID> | <mh:MACAddress soap:mustUnderstand="1">01234567ABC<mh:ID> | </soap:Header> | <soap:Body> | <mh:InformResponse> | ... ... | </mh:InformResponse> | <soap:Body> | </soap:Enveloper> | | | ************and my .wsdl file is: | <definitions> | .... | <types> | <xsd:schema targetNamespace="..."> | <xs:element name="Inform"> | <xs:complexType> | <xs:sequence> | .... | </xs:sequence> | </xs:complexType> | </xs:element> | <xs:element name="InformResponse"> | <xs:complexType> | <xs:sequence> | .... | </xs:sequence> | </xs:complexType> | </xs:element> | </xsd:schema> | </types> | | <message name="Headers"> | <part name="ID" element="tns:ID" /> | <part name="MACAddress" element="tns:MACAddress" /> </message> <message name="InformRequest"> | <part name="part0" element="tns:Inform" /> </message> <message name="InformResponse"> | <part name="part0" element="tns:InformResponse" /> </message> | | ..... | | <binding name="Mybinding" type="tns:MyportType"> | <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> | <operation name="inform"> | <soap:operation style="document" soapAction="urn:inform" /> | <input> | <soap:header message="tns:Headers" part="ID" use="literal" /> | <soap:header message="tns:Headers" part="MACAddress" use="literal" /> | <soap:body use="literal" /> | </input> | <output> | <soap:header message="tns:Headers" part="ID" use="literal" /> | <soap:header message="tns:Headers" part="MACAddress" use="literal" /> | <soap:body use="literal" /> | </output> | </operation> | </binding> | .... | | </definitions> | | | | Now, I can create InformDocument & InformResponseDocument classes, but how can make classes for <soap:Header> by wsdl2java? | | Thanks for any help! | | Guo | | | | | | | | This message contains information that may be privileged or confidential and is the property of the Capgemini Group. It is | intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to | read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message | in error, please notify the sender immediately and delete all copies of this message. |
