Can you create jira issue and attach your code ( or maybe better some test project ) so i'll be able to reproduce it ?. I'll try to check it during weekend.
On 3/21/07, Shal Jain <[EMAIL PROTECTED]> wrote:
Here's the SOAP request - Client is running from w/in Eclipse so its using the 1.2.4 jars. POST /MyService/services/MyService HTTP/1.1 SOAPAction: "" Content-Type: multipart/related; type="application/xop+xml"; start=" <[EMAIL PROTECTED]>"; start-info="text/xml"; boundary="----=_Part_1_14301042.1174511288000"User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; XFire Client +http://xfire.codehaus.org)Host: localhost:8080Cookie: $Version=0; JSESSIONID=431E2DED07FA7F17CEED8D08EE7B91C9; $Path=/MyServiceExpect: 100-continueTransfer-Encoding: chunked 284 ------=_Part_1_14301042.1174511288000 Content-Type: application/xop+xml; charset=UTF-8; type="text/xml" Content-Transfer-Encoding: 8bit Content-ID: <[EMAIL PROTECTED]> <soap:Envelope xmlns:soap=" http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd=" http://www.w3.org/2001/XMLSchema" xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance"> <soap:Body> <oper1 xmlns="http://xfire.codehaus.org/MTOMService"> <in0 xmlns="http://xfire.codehaus.org/MTOMService ">6</in0> <in1 xmlns="http://xfire.codehaus.org/MTOMService"> <!--- This argument should be in the header and not here --> <Token xmlns="http://myservice.xyz.com">1174511447000</Token> <!--- where is this namespace coming from. Its not in the WSDL. --> </in1> <!--- WSDL states http://www.xyz.com/MyService --> </oper1> </soap:Body> </soap:Envelope>------=_Part_1_14301042.1174511288000--0 Here's the response from the webservice - running external to Eclipse using 1.2.5 jars ------=_Part_2_18326726.1174511447000-- 0 HTTP/1.1 100 Continue HTTP/1.1 500 Internal Server Error Content-Type: multipart/related; type="application/xop+xml"; start=" <[EMAIL PROTECTED]>"; start-info="text/xml"; boundary="----=_Part_3_339055.1174511452609"Transfer-Encoding: chunkedDate: Wed, 21 Mar 2007 21:10:52 GMTServer: Apache-Coyote/1.1Connection: close29e------=_Part_3_339055.1174511452609Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"Content-Transfer-Encoding: 8bitContent-ID: <[EMAIL PROTECTED]> <soap:Envelope xmlns:soap=" http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd=" http://www.w3.org/2001/XMLSchema" xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance"> <soap:Body> <soap:Fault> <faultcode>soap:Client</faultcode> <faultstring>Illegal argument invoking ' com.xyz.myservice.MyServicePortType.oper1(int, com.xyz.myservice.Token)': wrong number of arguments</faultstring> </soap:Fault> </soap:Body> </soap:Envelope> 29 ------=_Part_3_339055.1174511452609-- 0 Shal Jain FoundationIP - Part of CPA Software Solutions *"Tomek Sztelak" <[EMAIL PROTECTED]>* 03/21/2007 05:11 AM Please respond to [email protected] To [email protected] cc Subject Re: [xfire-user] question on how to handle soap headers Hi I think i overlooked something ( i didn't notice mtom property ). can you post soap message generated by client ? On 3/21/07, *Phil Bowker* < [EMAIL PROTECTED]<[EMAIL PROTECTED]>> wrote: I'm not sure I understand your problem exactly but if you're just looking for the XFire libraries you're using In Eclipse check the properties of your project which has the XFire nature applied, open up the Java Build Path and then open the XFire classpath container. Here you'll see the jars and the path. On 20/03/07, *Shal Jain* <[EMAIL PROTECTED] *<[EMAIL PROTECTED]>> wrote: No I haven't done that. Thanks for pointing that out. How do I do this ? The plugin was installed by specifying the URL *http://dist.codehaus.org/xfire/update/ * <http://dist.codehaus.org/xfire/update/> I have searched the eclipse workspace and eclipse installation folder and don't see a codehaus...xfire related folder. Shal Jain FoundationIP - Part of CPA Software Solutions Tel: +1 612-236-9981* [EMAIL PROTECTED] <[EMAIL PROTECTED]> Fax: +1 612-332-0080 900 Second Avenue South, Suite 1700 Minneapolis, Minnesota 55402 CPA is the world's leading provider of outsourced IP services. For further information about our products and services go to * www.cpaglobal.com* <http://www.cpaglobal.com/> *"Tomek Sztelak" <[EMAIL PROTECTED] * <[EMAIL PROTECTED]>*>* 03/20/2007 03:21 AM Please respond to* [EMAIL PROTECTED] <[email protected]> To [EMAIL PROTECTED] <[email protected]> cc Subject Re: [xfire-user] question on how to handle soap headers Did you overwrite XFire jars in plugin folders ? On 3/19/07, *Shal Jain* <* [EMAIL PROTECTED]<[EMAIL PROTECTED]>> wrote: I downloaded 1.2.5 and copied in the new jars These are the ones that I found that were changed between 1.2.4 and 1.2.5 xfire-all-1.2.5 wss4j-1.5.1 xbean-spring-2.8 The eclipse plugin still generates using version 1.2.4 - I didn't think I would need any change there Rerunning the webserivce and the client against it resulted in the same issues Am I missing something obvious ? Shal Jain FoundationIP - Part of CPA Software Solutions *"Tomek Sztelak" <** [EMAIL PROTECTED] <[EMAIL PROTECTED]>*>* 03/19/2007 01:46 PM Please respond to* [EMAIL PROTECTED] <[email protected]> To [EMAIL PROTECTED] <[email protected]> cc Subject Re: [xfire-user] question on how to handle soap headers I believe its fixed in 1.2.5 On 3/19/07, Shal Jain <* [EMAIL PROTECTED]<[EMAIL PROTECTED]>> wrote: > > XFIRE version 1.2.4 > Using Eclipse XFIRE plugin to generate classes from the WSDL > Webservice and client both written using XFIRE > > I am running into issues handle soap:header elements defined in the WSDL > The two problems that I am seeing are > a) How do I actually send the header element and have it appear in the SOAP > header (w/out registering an outHandler against the client) > b) When creating the client, the method interface requires passing in the > header element as part of the parameter stack > which results in an Illegal Argument XFault because the WSDL really defines > that as a header obj. > > I am including all the necessary bits to see if someone has a recommended > solution > > Including the relevant components from the WSDL > <types> > <s:schema elementFormDefault="qualified" > targetNamespace="* **http://www.xyz.com/MyService*<http://www.xyz.com/MyService> "> > <s:element name="Token" > > <s:complexType> > <s:sequence> > <s:element name="Token_1" type="s:string" > maxOccurs="1" minOccurs="1"/> > </s:sequence> > </s:complexType> > </s:element> > </s:schema> > </types> > > > <message name="tokenMessage"> > <part name="header" element="y:Token" /> > </message> > > > > <binding...> > > <operation name="oper1"> > <soap:operation > soapAction=" *http://www.xyz.com/MyService/oper1*<http://www.xyz.com/MyService/oper1> "/> > <input> > <soap:header message="y:tokenMessage" part="header" > use="literal"/> > <soap:body use="literal"/> > </input> > <output> > <soap:body use="literal"/> > </output> > </operation> > </binding> > > The generated interface (MyServicePortType.java) looks something like this > > > @WebMethod(operationName = "oper1", action = > " *http://www.xyz.com/MyService/oper1*<http://www.xyz.com/MyService/oper1> ") > @WebResult(name = "oper1Result", targetNamespace = > "* **http://www.xyz.com/MyService* <http://www.xyz.com/MyService>") > public String oper1( > @WebParam(name = "inpCode", targetNamespace = > "* **http://www.xyz.com/MyService* <http://www.xyz.com/MyService>") > int inpCode, > @WebParam(name = "Token", targetNamespace = > " *http://www.xyz.com/MyService* <http://www.xyz.com/MyService> ", header = true) > com.xyz.myservice.Token Token); > > > Actual client code > > Service serviceModel = new ObjectServiceFactory().create( > MyServicePortType.class , "MyService", > "*http://xfire.codehaus.org/MTOMService *<http://xfire.codehaus.org/MTOMService>", null); > > MyServicePortType service = null; > try { > service = (MyServicePortType) new XFireProxyFactory().create( > serviceModel, > "*http://localhost:8080/MyService/services/MyService *<http://localhost:8080/MyService/services/MyService> "); > } catch (MalformedURLException e) { > e.printStackTrace(); > assertTrue(false); > } > > Client client = Client.getInstance (service); > client.setProperty("mtom-enabled","true"); > > Token token = new Token(); > > service.oper1(42, token); <--- making this call throws an > illegal argument exception. Also, the token is not placed into the SOAP > header > > > > > > > > Shal Jain > FoundationIP - Part of CPA Software Solutions > > Tel: +1 612-236-9981 > [EMAIL PROTECTED] * <[EMAIL PROTECTED]> > Fax: +1 612-332-0080 > > 900 Second Avenue South, Suite 1700 > Minneapolis, Minnesota 55402 > > CPA is the world's leading provider of outsourced IP services. For further > information about our products and services go to *www.cpaglobal.com *<http://www.cpaglobal.com/> > > > ******************************************************************************** > The information in this message is confidential and may be legally > privileged. It is intended solely for the addressee; access to this > email by anyone else is unauthorized. > > If you are not the intended recipient: (1) you are kindly requested > to return a copy of this message to the sender indicating that you > have received it in error, and to destroy the received copy; and (2) > any disclosure or distribution of this message, as well as any action > taken or omitted to be taken in reliance on its content, is prohibited > and may be unlawful. > ******************************************************************************** > > -- ----- When one of our products stops working, we'll blame another vendor within 24 hours. --------------------------------------------------------------------- To unsubscribe from this list please visit: *http://xircles.codehaus.org/manage_email*<http://xircles.codehaus.org/manage_email> ******************************************************************************** The information in this message is confidential and may be legally privileged. It is intended solely for the addressee; access to this email by anyone else is unauthorized. If you are not the intended recipient: (1) you are kindly requested to return a copy of this message to the sender indicating that you have received it in error, and to destroy the received copy; and (2) any disclosure or distribution of this message, as well as any action taken or omitted to be taken in reliance on its content, is prohibited and may be unlawful. ******************************************************************************** -- ----- When one of our products stops working, we'll blame another vendor within 24 hours. ******************************************************************************** The information in this message is confidential and may be legally privileged. It is intended solely for the addressee; access to this email by anyone else is unauthorized. If you are not the intended recipient: (1) you are kindly requested to return a copy of this message to the sender indicating that you have received it in error, and to destroy the received copy; and (2) any disclosure or distribution of this message, as well as any action taken or omitted to be taken in reliance on its content, is prohibited and may be unlawful. ******************************************************************************** -- ----- When one of our products stops working, we'll blame another vendor within 24 hours. ******************************************************************************** The information in this message is confidential and may be legally privileged. It is intended solely for the addressee; access to this email by anyone else is unauthorized. If you are not the intended recipient: (1) you are kindly requested to return a copy of this message to the sender indicating that you have received it in error, and to destroy the received copy; and (2) any disclosure or distribution of this message, as well as any action taken or omitted to be taken in reliance on its content, is prohibited and may be unlawful. ********************************************************************************
-- ----- When one of our products stops working, we'll blame another vendor within 24 hours.
