axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Todd Doolittle (JIRA)" <j...@apache.org>
Subject [jira] Commented: (AXIS2-1103) Generated client code doesn't handle SOAPAction correctly
Date Sat, 02 Sep 2006 02:30:22 GMT
    [ http://issues.apache.org/jira/browse/AXIS2-1103?page=comments#action_12432267 ] 
            
Todd Doolittle commented on AXIS2-1103:
---------------------------------------


Ajith,

No, I am not reusing the stub.  I just have one call in my test code.

Thanks!
Todd

> Generated client code doesn't handle SOAPAction correctly
> ---------------------------------------------------------
>
>                 Key: AXIS2-1103
>                 URL: http://issues.apache.org/jira/browse/AXIS2-1103
>             Project: Apache Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: M2
>         Environment: Windows XP, Java 1.5.0_08
>            Reporter: Todd Doolittle
>
> I'm using the nightly build from 08/31/2006.  I am creating a client using wsdl2java.
 The WSDL specified a soapAction="" for the operation "Getinfo".  However the http header
"SOAPAction" is being set to "urn:Getinfo". 
> In the generated stub, the method Getinfo() specifically sets the action="" in the options
for both the messageContext and the operationContext which would appear to be correct accorind
to the WSDL.  However when the message is received by the server it contains the header SOAPAction:
"urn:Getinfo".
>  I added code to the Getinfo method in the stub to print the action for options in both
the messageContext and operationConext just before the operationContext.execute() call and
right after the operationContext.execute() call.  Just before the call both the messageContext
and the operationContext's action is set to "" in their respective options.  However, right
after the operationContext.execute() call the messageContext's action is set to "urn:Getinfo"
in it's options (the opertionContext's action in it's options is still set to "").
> I am working around this by calling  _messageContext.getAxisOperation().setSoapAction("")
just before the operationContext.execute() call.  But I don't believe I should have to do
this.
> Note, in the release 1.0 version of Axis 2, it appears to work correctly (i.e. the SOAPAction
header is "" when the WSDL specifies the soapAction="").
> Here is the WSDL that was used to generate the client code.  I was using ADB databinding
if it matters.
> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> 	name="POC" targetNamespace="http://tempuri.org/"
> 	xmlns:fjs="http://tempuri.org/"
> 	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> 	xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> 	<wsdl:types>
> 		<xsd:schema elementFormDefault="qualified"
> 			targetNamespace="http://tempuri.org/"
> 			xmlns:s1="http://tempuri.org/">
> 			<xsd:element name="lookup">
> 				<xsd:complexType>
> 					<xsd:sequence>
> 						<xsd:element maxOccurs="unbounded" minOccurs="0"
> 							name="upc" nillable="true" type="xsd:string" />
> 					</xsd:sequence>
> 					<xsd:attribute name="count" type="xsd:int"
> 						use="required" />
> 				</xsd:complexType>
> 			</xsd:element>
> 			<xsd:element name="GetinfoResponse">
> 				<xsd:complexType>
> 					<xsd:sequence>
> 						<xsd:element name="item" nillable="true">
> 							<xsd:complexType>
> 								<xsd:sequence>
> 									<xsd:element maxOccurs="unbounded"
> 										minOccurs="0" name="item" nillable="true">
> 										<xsd:complexType>
> 											<xsd:sequence>
> 												<xsd:element name="ksn"
> 													nillable="true" type="xsd:int" />
> 												<xsd:element name="upc"
> 													nillable="true" type="xsd:string" />
> 												<xsd:element
> 													name="maintdt" nillable="true" type="xsd:date" />
> 												<xsd:element name="dpt"
> 													nillable="true" type="xsd:int" />
> 											</xsd:sequence>
> 											<xsd:attribute name="count"
> 												type="xsd:int" use="required" />
> 										</xsd:complexType>
> 									</xsd:element>
> 								</xsd:sequence>
> 							</xsd:complexType>
> 						</xsd:element>
> 					</xsd:sequence>
> 				</xsd:complexType>
> 			</xsd:element>
> 		</xsd:schema>
> 	</wsdl:types>
> 	<wsdl:message name="GetinfoIn">
> 		<wsdl:part element="fjs:lookup" name="parameters" />
> 	</wsdl:message>
> 	<wsdl:message name="GetinfoOut">
> 		<wsdl:part element="fjs:GetinfoResponse" name="parameters" />
> 	</wsdl:message>
> 	<wsdl:portType name="POCPortType">
> 		<wsdl:operation name="Getinfo">
> 			<wsdl:input message="fjs:GetinfoIn" name="lookup" />
> 			<wsdl:output message="fjs:GetinfoOut"
> 				name="GetinfoResponse" />
> 		</wsdl:operation>
> 	</wsdl:portType>
> 	<wsdl:binding name="POCBinding" type="fjs:POCPortType">
> 		<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
> 		<wsdl:operation name="Getinfo">
> 			<soap:operation soapAction="" style="document" />
> 			<wsdl:input name="lookup">
> 				<soap:body use="literal" />
> 			</wsdl:input>
> 			<wsdl:output name="GetinfoResponse">
> 				<soap:body use="literal" />
> 			</wsdl:output>
> 		</wsdl:operation>
> 	</wsdl:binding>
> 	<wsdl:service name="POC">
> 		<wsdl:port binding="fjs:POCBinding" name="POCPortType">
> 			<soap:address location="http://localhost:8090/POC/POC" />
> 		</wsdl:port>
> 	</wsdl:service>
> </wsdl:definitions>

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
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