You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Samisa Abeysinghe (JIRA)" <ax...@ws.apache.org> on 2004/10/28 11:30:32 UTC

[jira] Closed: (AXISCPP-91) An input message part and output message part cannot be the same element

     [ http://issues.apache.org/jira/browse/AXISCPP-91?page=history ]
     
Samisa Abeysinghe closed AXISCPP-91:
------------------------------------

     Resolution: Fixed
    Fix Version: 1.3 Final

The attached WSDL file has similar content described in the issue and works with WSDL2Ws tool that comes with 1.3 Final release

> An input message part and output message part cannot be the same element
> ------------------------------------------------------------------------
>
>          Key: AXISCPP-91
>          URL: http://issues.apache.org/jira/browse/AXISCPP-91
>      Project: Axis-C++
>         Type: Bug
>   Components: WSDL generation
>     Versions: 1.1 Final
>  Environment: Axis C 1.1.1
> Windows
>     Reporter: Steve Cheng`
>     Priority: Minor
>      Fix For: 1.3 Final
>  Attachments: Test.wsdl
>
> If the WSDL port operation uses messages that are the same element type, wsdl2ws chokes.  Here's an example of such a case:
> 	<message name="EchoInput">
> 		<part element="tns:myBean" name="request"/>
> 	</message>
> 	<message name="EchoOutput">
> 		<part element="tns:myBean" name="result"/>
> 	</message>
> 	<portType name="EchoPortType">
> 		<operation name="echo">
> 			<input  message="tns:EchoInput"/>
> 			<output message="tns:EchoOutput"/>
> 		</operation>
> 	</portType>
> Here's the output of running it through wsdl2ws:
> 1
> ############## the type found ={http://www.acme.com
> }>myBean
> Exception in thread "main" org.apache.axis.wsdl.wsdl2ws.WrapperFault: unregister
> d type {http://www.acme.com}>myBean refered
>         at org.apache.axis.wsdl.wsdl2ws.WSDL2Ws.getServiceInfo(Unknown Source)
>         at org.apache.axis.wsdl.wsdl2ws.WSDL2Ws.genarateWrappers(Unknown Source)
>         at org.apache.axis.wsdl.wsdl2ws.WSDL2Ws.main(Unknown Source)
> I traced the issue back to WSDL2Ws.getServiceInfo().  There's a call to remove the type that represents the wrapping element:
> this.typeMap.removeType(qname);
> The typeMap has the type >myBean prior to this call.  When the loop iterates through again to process the return type, it can no longer find >myBean.

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira