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 "Doug Guzek (JIRA)" <ji...@apache.org> on 2009/02/26 16:27:01 UTC

[jira] Created: (AXIS2-4256) Problems with generated Java code from WSLD using AXIS2 Eclipse and JBOSS

Problems with generated Java code from WSLD using AXIS2 Eclipse and JBOSS
-------------------------------------------------------------------------

                 Key: AXIS2-4256
                 URL: https://issues.apache.org/jira/browse/AXIS2-4256
             Project: Axis 2.0 (Axis2)
          Issue Type: Bug
          Components: wsdl
    Affects Versions: 1.3
         Environment: Windows OS running JBOSS
            Reporter: Doug Guzek


We have created our web services using Eclipse Wizard to create a new web service, using Top down Java Bean web Service.
Server:JBoss V4.2
Web Service Run Time: Apache Axis2

I have 2 web services. One is a SYNC web service. This works fine. Client calls us, we provide resposne. All is good.
The other is a ASYNC. The client calls us, we are good. We do some stuff, then call the client. This is where I am having trouble.

The client is IIS/.NET 2.0 while we are JBOSS/Java
I am encountering the following problem:
1. The contents of my envelope are missing forcing me to manually build them.  I would think that this should be done automatically as they are defined in the WSDL.  The missing elements that I have to create manually are:
- Payload
- Content List
and I have to manually set all kinds of values and namespaces
2. As you will see from my code, I have to force the Content ID and PayloadMessageID values. I dont want to do this, the java code generated from the WSDL should have generated code that I can call or not have to call to be done automatically for me.

NOTE: This exact same web service runs fine on IBM Websphere...and none of this code was needed as it was handled for me automatically.

SO, is there problems with AXIS2 and this WSDL? 
Or is there problems with Eclipse generating the java code from the WSDL?

Here is a snippet of my code:
PutMessage putMessageRequest = new PutMessage();
Payload    payLoadOM = new Payload();
Content    contentList = new Content();
									
//Content  contentList = new Content();
Id contentId = new Id();
									
//Need to figure out a Unique value here
contentId.setValue("contentID1234");
contentList.setId(contentId);
									
//Need to figure out a Unique value here
Id payloadMessageId = new Id();
payloadMessageId.setValue("payloadID1234");

//Add Response to Content List and to Payload
contentList.setExtraElement(pROElement.cloneOMElement());
payLoadOM.addContent(contentList);
payLoadOM.setMessageID(payloadMessageId);

Here is the WSDL
<wsdl:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
	xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
	xmlns:s="http://www.w3.org/2001/XMLSchema"
	xmlns:tns="http://www.starstandards.org/webservices/2003/12/transport"
	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
	xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
	xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"
	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
	targetNamespace="http://www.starstandards.org/webservices/2003/12/transport">

	<wsdl:types>
		<s:schema elementFormDefault="qualified"
			targetNamespace="http://www.starstandards.org/webservices/2003/12/transport">
			<s:complexType name="Payload">
				<s:sequence>
					<s:element form="unqualified" maxOccurs="unbounded"
						minOccurs="0" name="content" type="tns:Content" />
				</s:sequence>
				<s:attribute name="messageID" type="s:ID" />
				<s:anyAttribute />
			</s:complexType>
			<s:complexType name="Content">
				<s:sequence>
					<s:any maxOccurs="1" minOccurs="0" />
				</s:sequence>
				<s:attribute name="id" type="s:ID" />
				<s:anyAttribute />
			</s:complexType>
			<s:element name="PutMessage">
				<s:complexType>
					<s:sequence>
						<s:element maxOccurs="1" minOccurs="0"
							name="payload" type="tns:Payload" />
					</s:sequence>
				</s:complexType>
			</s:element>
			<s:element name="payloadManifest" type="tns:PayloadManifest" />
			<s:complexType name="PayloadManifest">
				<s:sequence>
					<s:element form="unqualified" maxOccurs="unbounded"
						minOccurs="0" name="manifest" type="tns:Manifest" />
				</s:sequence>
				<s:attribute name="messageID" type="s:ID" />
			</s:complexType>
			<s:complexType name="Manifest">
				<s:attribute name="id" type="s:ID" />
				<s:attribute name="namespaceURI" type="s:anyURI" />
				<s:attribute name="element" type="s:string" />
				<s:attribute name="relatedID" type="s:string" />
				<s:attribute name="action" type="s:anyURI" />
			</s:complexType>
			<s:element name="PullMessage">
				<s:complexType />
			</s:element>
			<s:element name="PullMessageResponse">
				<s:complexType>
					<s:sequence>
						<s:element maxOccurs="1" minOccurs="0"
							name="PullMessageResult" type="tns:Payload" />
					</s:sequence>
				</s:complexType>
			</s:element>
			<s:element name="PutMessageResponse">
				<s:complexType />
			</s:element>
			<s:element name="ProcessMessage">
				<s:complexType>
					<s:sequence>
						<s:element maxOccurs="1" minOccurs="0"
							name="payload" type="tns:Payload" />
					</s:sequence>
				</s:complexType>
			</s:element>
			<s:element name="ProcessMessageResponse">
				<s:complexType>
					<s:sequence>
						<s:element maxOccurs="1" minOccurs="0"
							name="payload" type="tns:Payload" />
					</s:sequence>
				</s:complexType>
			</s:element>
		</s:schema>
	</wsdl:types>


	<wsdl:message name="PullMessageSoapIn">
		<wsdl:part element="tns:PullMessage" name="parameters" />
	</wsdl:message>
	<wsdl:message name="PullMessageSoapOut">
		<wsdl:part element="tns:PullMessageResponse" name="parameters" />
	</wsdl:message>
	<wsdl:message name="PutMessageSoapIn">
		<wsdl:part element="tns:PutMessage" name="parameters" />
	</wsdl:message>
	<wsdl:message name="PutMessageSoapOut">
		<wsdl:part element="tns:PutMessageResponse" name="parameters" />
	</wsdl:message>
	<wsdl:message name="PutMessagepayloadManifest">
		<wsdl:part element="tns:payloadManifest" name="payloadManifest" />
	</wsdl:message>
	<wsdl:message name="ProcessMessageSoapIn">
		<wsdl:part element="tns:ProcessMessage" name="parameters" />
	</wsdl:message>
	<wsdl:message name="ProcessMessageSoapOut">
		<wsdl:part element="tns:ProcessMessageResponse"
			name="parameters" />
	</wsdl:message>


	<wsdl:portType name="MRClaimsWSPortType">
		<wsdl:operation name="PullMessage">
			<wsdl:input message="tns:PullMessageSoapIn" />
			<wsdl:output message="tns:PullMessageSoapOut" />
		</wsdl:operation>
		<wsdl:operation name="PutMessage">
			<wsdl:input message="tns:PutMessageSoapIn" />
			<wsdl:output message="tns:PutMessageSoapOut" />
		</wsdl:operation>
		<wsdl:operation name="ProcessMessage">
			<wsdl:input message="tns:ProcessMessageSoapIn" />
			<wsdl:output message="tns:ProcessMessageSoapOut" />
		</wsdl:operation>
	</wsdl:portType>


	<wsdl:binding name="MRClaimsWSBinding" type="tns:MRClaimsWSPortType">
		<soap:binding style="document"
			transport="http://schemas.xmlsoap.org/soap/http" />
		<wsdl:operation name="PullMessage">
			<soap:operation
				soapAction="http://www.starstandards.org/webservices/2003/12/transport/operations/PullMessage"
				style="document" />
			<wsdl:input>
				<soap:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="PutMessage">
			<soap:operation
				soapAction="http://www.starstandards.org/webservices/2003/12/transport/operations/PutMessage"
				style="document" />
			<wsdl:input>
				<soap:body use="literal" />
				<soap:header message="tns:PutMessagepayloadManifest"
					part="payloadManifest" use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="ProcessMessage">
			<soap:operation
				soapAction="http://www.starstandards.org/webservices/2003/12/transport/operations/ProcessMessage"
				style="document" />
			<wsdl:input>
				<soap:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>


	<wsdl:service name="AWGMRWebServices">
		<wsdl:port binding="tns:MRClaimsWSBinding" name="MRClaimsWebService">
			<soap:address
				location="http://localhost:8080/MRClaimsWebService/services/MRClaimsWebService" />
		</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.