Author: samisa
Date: Tue Feb 26 07:00:29 2008
New Revision: 14231

Log:

Fixed the bug in input type not generated for rpc style

Modified:
   trunk/commons/dynamic-codegen/src/wsdl11to20.xsl10.xsl

Modified: trunk/commons/dynamic-codegen/src/wsdl11to20.xsl10.xsl
==============================================================================
--- trunk/commons/dynamic-codegen/src/wsdl11to20.xsl10.xsl      (original)
+++ trunk/commons/dynamic-codegen/src/wsdl11to20.xsl10.xsl      Tue Feb 26 
07:00:29 2008
@@ -139,13 +139,15 @@
                 <xsl:call-template name="resolve-soaprpc-element-localname">
                     <xsl:with-param name="msg" select=".."/>
                 </xsl:call-template>
-            </xsl:variable>
+            </xsl:variable>
+
             <xsl:if test="$localName != '#any'">
-                <xs:schema targetNamespace="[EMAIL PROTECTED]">
+                <xs:schema targetNamespace="[EMAIL PROTECTED]">
                     <xs:element name="{$localName}">
                         <xs:complexType>
                             <xs:sequence>
-                                <xsl:choose>
+                                <xsl:choose>
+                                
                                     <xsl:when test="$usestypes='yes'">
                                         <xsl:for-each 
select="$message/w11:part[not($parts) or contains($parts,concat(' ',@name,' 
'))]">
                                             <xsl:variable name="type_prefix" 
select="substring-before(@type,':')"/>
@@ -163,6 +165,7 @@
                                             <xsl:variable 
name="type_prefix-separator">
                                                 <xsl:if test="$type_prefix != 
''">:</xsl:if>
                                             </xsl:variable>
+                                            
                                             <xs:element name="[EMAIL 
PROTECTED]" type="{$type_prefix}{$type_prefix-separator}{$type_local-name}">
                                                 <xsl:copy-of 
select="namespace::*[local-name()=$type_prefix]"/>                        
</xs:element>
                                         </xsl:for-each>
@@ -446,6 +449,7 @@
         <xsl:param name="element"/>
         <xsl:param name="namespace"/>
         <xsl:param name="faultname"/>
+        
         <xsl:choose>
             <xsl:when test="self::w11:fault">
                 <xsl:attribute name="name">
@@ -520,8 +524,7 @@
         <xsl:variable name="message_name_namespace-uri" 
select="string(namespace::*[local-name()=$message_name_prefix])"/>
         <xsl:variable name="message"
             
select="/w11:definitions/w11:message[/w11:definitions/@targetNamespace =
-            $message_name_namespace-uri and @name = 
$message_name_local-name]"/>
-            
+            $message_name_namespace-uri and @name = 
$message_name_local-name]"/>                    
         <xsl:variable name="portType_namespace-uri" 
select="/w11:definitions/@targetNamespace"/>
         <xsl:variable name="portType_local-name" select="../../@name"/>
 
@@ -564,8 +567,19 @@
                         </xsl:call-template>
                     </xsl:when>
                     <xsl:otherwise>
+                        <xsl:variable name="new_msg_name">
+                            <xsl:choose>
+                                <xsl:when test="local-name(.)='input'">
+                                    <xsl:value-of select="$operation_name"/>
+                                </xsl:when>
+                                <xsl:otherwise>
+                                    <xsl:value-of 
select="concat($operation_name, 'Response')"/>
+                                </xsl:otherwise>
+                            </xsl:choose>
+                        </xsl:variable>
                         <xsl:call-template name="resolve-elementType-attrs">
-                            <xsl:with-param name="element" 
select="$message_name_local-name"/>
+
+                               <xsl:with-param name="element" 
select="$new_msg_name"/>
                             <xsl:with-param name="namespace" 
select="$message_name_namespace-uri"/>
                             <xsl:with-param name="faultname" select="@name"/>
                         </xsl:call-template>

_______________________________________________
Commons-dev mailing list
Commons-dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/commons-dev

Reply via email to