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 "Michael Xiong (JIRA)" <ax...@ws.apache.org> on 2006/06/15 13:37:29 UTC

[jira] Created: (AXISCPP-975) WSDL2WS: WrapWriter.java

WSDL2WS: WrapWriter.java
------------------------

         Key: AXISCPP-975
         URL: http://issues.apache.org/jira/browse/AXISCPP-975
     Project: Axis-C++
        Type: Bug

  Components: WSDL processing - RPC  
    Versions:  1.6 Beta    
 Environment:   	     Platform:
        Linux fedora 3.0
Axis version:
        Server-side Axis C++ 1.6Beta
XML Parser Lib:
xersesc 2.6
WSDL2ws tool by using axis java 1.3
Client-side version Axis java 1.3
Http Server Version:
Apache 2.0.53
Tomcat 2.0.58
    Reporter: Michael Xiong


I found that in axis-c-1.6beta, you seems have tried to fix some problems similar to axiscpp-931, the solution is to split localpart of returnParamName before writing it in generated wrapper class.

I think the necessary code fix which we need to do are all inside the  method writeMethodInWrapper, which belongs to  WSDL2WS's WrapWriter class(src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/WrapWriter.jaava).
i.e. 
When the return type is simpletype or array,  you've added the below split processing instead of write returnParamName directly
----------------------------------
+ returnParamName.substring(returnParamName.lastIndexOf(">")+1)
----------------------------------

That's OK, no problem.

But there're still some case being ignored by you, I think it's still a bug:
When the return type is complex array, you have not added the split processing before writing.

ie. I used a  sample wsdl which containing the bllow piece(which will generate a complex array):
----------------------------------
			<xs:element name="GetTestResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element minOccurs="0" maxOccurs="unbounded" name="Test" type="mb:TestInformation"/>
						<xs:element minOccurs="0" maxOccurs="1" name="Context" type="xs:string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
------------------------------------

By  axis-c-1.6beta, the generated code is wrong:
the generated element name in code and run-time server response to client is like : ">GetTestResponse>Test", which is not correct according to my sample wsdl.

My fix code looks like the below(in  the  method writeMethodInWrapper of WrapWriter class):
----------(...when it's complex array ...)-----------------------
                                    writer.write(
                                        "\tpIWSSZ->addOutputCmplxArrayParam((Axis_Array*)(&out"
                                            + i
                                            + "),"
                                            + "(void*) Axis_Serialize_"
                                            + containedType
                                            + ", (void*) Axis_Delete_"
                                            + containedType
                                            + ", (void*) Axis_GetSize_"
                                            + containedType
                                            + ", \""
//<mxiong debug 2006/6/15                                            
//                                            + returnParamName
                                            + returnParamName.substring(returnParamName.lastIndexOf(">")+1)
//>mxiong debug 2006/6/15                                            
                                            + "\", Axis_URI_"
                                            + containedType
                                            + ");\n");
-
---------------------------------

So would you like to check it and adopt my solution for this case?

-- 
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-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Updated: (AXISCPP-975) WSDL2WS: WrapWriter.java: returnParamName's localpart not split in some cases.

Posted by "John Hawkins (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXISCPP-975?page=all ]

John Hawkins updated AXISCPP-975:
---------------------------------

    Summary: WSDL2WS: WrapWriter.java: returnParamName's localpart not split in some cases.   (was: WSDL2WS: WrapWriter.java)

Done !

> WSDL2WS: WrapWriter.java: returnParamName's localpart not split in some cases. 
> -------------------------------------------------------------------------------
>
>          Key: AXISCPP-975
>          URL: http://issues.apache.org/jira/browse/AXISCPP-975
>      Project: Axis-C++
>         Type: Bug

>   Components: WSDL processing - RPC
>     Versions:  1.6 Beta
>  Environment:   	     Platform:
>         Linux fedora 3.0
> Axis version:
>         Server-side Axis C++ 1.6Beta
> XML Parser Lib:
> xersesc 2.6
> WSDL2ws tool by using axis java 1.3
> Client-side version Axis java 1.3
> Http Server Version:
> Apache 2.0.53
> Tomcat 2.0.58
>     Reporter: Michael Xiong

>
> I found that in axis-c-1.6beta, you seems have tried to fix some problems similar to axiscpp-931, the solution is to split localpart of returnParamName before writing it in generated wrapper class.
> I think the necessary code fix which we need to do are all inside the  method writeMethodInWrapper, which belongs to  WSDL2WS's WrapWriter class(src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/WrapWriter.jaava).
> i.e. 
> When the return type is simpletype or array,  you've added the below split processing instead of write returnParamName directly
> ----------------------------------
> + returnParamName.substring(returnParamName.lastIndexOf(">")+1)
> ----------------------------------
> That's OK, no problem.
> But there're still some case being ignored by you, I think it's still a bug:
> When the return type is complex array, you have not added the split processing before writing.
> ie. I used a  sample wsdl which containing the bllow piece(which will generate a complex array):
> ----------------------------------
> 			<xs:element name="GetTestResponse">
> 				<xs:complexType>
> 					<xs:sequence>
> 						<xs:element minOccurs="0" maxOccurs="unbounded" name="Test" type="mb:TestInformation"/>
> 						<xs:element minOccurs="0" maxOccurs="1" name="Context" type="xs:string"/>
> 					</xs:sequence>
> 				</xs:complexType>
> 			</xs:element>
> ------------------------------------
> By  axis-c-1.6beta, the generated code is wrong:
> the generated element name in code and run-time server response to client is like : ">GetTestResponse>Test", which is not correct according to my sample wsdl.
> My fix code looks like the below(in  the  method writeMethodInWrapper of WrapWriter class):
> ----------(...when it's complex array ...)-----------------------
>                                     writer.write(
>                                         "\tpIWSSZ->addOutputCmplxArrayParam((Axis_Array*)(&out"
>                                             + i
>                                             + "),"
>                                             + "(void*) Axis_Serialize_"
>                                             + containedType
>                                             + ", (void*) Axis_Delete_"
>                                             + containedType
>                                             + ", (void*) Axis_GetSize_"
>                                             + containedType
>                                             + ", \""
> //<mxiong debug 2006/6/15                                            
> //                                            + returnParamName
>                                             + returnParamName.substring(returnParamName.lastIndexOf(">")+1)
> //>mxiong debug 2006/6/15                                            
>                                             + "\", Axis_URI_"
>                                             + containedType
>                                             + ");\n");
> -
> ---------------------------------
> So would you like to check it and adopt my solution for this case?

-- 
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-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Commented: (AXISCPP-975) WSDL2WS: WrapWriter.java: returnParamName's localpart not split in some cases.

Posted by "Michael Xiong (JIRA)" <ax...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/AXISCPP-975?page=comments#action_12416436 ] 

Michael Xiong commented on AXISCPP-975:
---------------------------------------

Sorry, in my description, a little change is necessary like the below:
============================================
When the return type is simpletype or array, you've added the below split processing instead of write returnParamName directly 

should be -->

When the return type is simpletype or non-array, you've added the below split processing instead of write returnParamName directly 

============================================

The only change-point is: array --> non-array.

Can someone help me to update my description?

P.S. Or can some one give me the modify permission on JIRA ? So that I can do the update by my-self later.

Thanks.
Michael Xiong



> WSDL2WS: WrapWriter.java: returnParamName's localpart not split in some cases.
> ------------------------------------------------------------------------------
>
>          Key: AXISCPP-975
>          URL: http://issues.apache.org/jira/browse/AXISCPP-975
>      Project: Axis-C++
>         Type: Bug

>   Components: WSDL processing - RPC
>     Versions:  1.6 Beta
>  Environment:   	     Platform:
>         Linux fedora 3.0
> Axis version:
>         Server-side Axis C++ 1.6Beta
> XML Parser Lib:
> xersesc 2.6
> WSDL2ws tool by using axis java 1.3
> Client-side version Axis java 1.3
> Http Server Version:
> Apache 2.0.53
> Tomcat 2.0.58
>     Reporter: Michael Xiong

>
> I found that in axis-c-1.6beta, you seems have tried to fix some problems similar to axiscpp-931, the solution is to split localpart of returnParamName before writing it in generated wrapper class.
> I think the necessary code fix which we need to do are all inside the  method writeMethodInWrapper, which belongs to  WSDL2WS's WrapWriter class(src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/WrapWriter.jaava).
> i.e. 
> When the return type is simpletype or array,  you've added the below split processing instead of write returnParamName directly
> ----------------------------------
> + returnParamName.substring(returnParamName.lastIndexOf(">")+1)
> ----------------------------------
> That's OK, no problem.
> But there're still some case being ignored by you, I think it's still a bug:
> When the return type is complex array, you have not added the split processing before writing.
> ie. I used a  sample wsdl which containing the bllow piece(which will generate a complex array):
> ----------------------------------
> 			<xs:element name="GetTestResponse">
> 				<xs:complexType>
> 					<xs:sequence>
> 						<xs:element minOccurs="0" maxOccurs="unbounded" name="Test" type="mb:TestInformation"/>
> 						<xs:element minOccurs="0" maxOccurs="1" name="Context" type="xs:string"/>
> 					</xs:sequence>
> 				</xs:complexType>
> 			</xs:element>
> ------------------------------------
> By  axis-c-1.6beta, the generated code is wrong:
> the generated element name in code and run-time server response to client is like : ">GetTestResponse>Test", which is not correct according to my sample wsdl.
> My fix code looks like the below(in  the  method writeMethodInWrapper of WrapWriter class):
> ----------(...when it's complex array ...)-----------------------
>                                     writer.write(
>                                         "\tpIWSSZ->addOutputCmplxArrayParam((Axis_Array*)(&out"
>                                             + i
>                                             + "),"
>                                             + "(void*) Axis_Serialize_"
>                                             + containedType
>                                             + ", (void*) Axis_Delete_"
>                                             + containedType
>                                             + ", (void*) Axis_GetSize_"
>                                             + containedType
>                                             + ", \""
> //<mxiong debug 2006/6/15                                            
> //                                            + returnParamName
>                                             + returnParamName.substring(returnParamName.lastIndexOf(">")+1)
> //>mxiong debug 2006/6/15                                            
>                                             + "\", Axis_URI_"
>                                             + containedType
>                                             + ");\n");
> -
> ---------------------------------
> So would you like to check it and adopt my solution for this case?

-- 
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-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Commented: (AXISCPP-975) WSDL2WS: WrapWriter.java: returnParamName's localpart not split in some cases.

Posted by "Michael Xiong (JIRA)" <ax...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/AXISCPP-975?page=comments#action_12437988 ] 
            
Michael Xiong commented on AXISCPP-975:
---------------------------------------

Dear all,

Environment:
Tomcat 2.0.58 should be -->
Tomcat 5.0.28

Could someboday help me to update the "Environment:" info ?

Thanks a lot !
Michael Xiong

> WSDL2WS: WrapWriter.java: returnParamName's localpart not split in some cases.
> ------------------------------------------------------------------------------
>
>                 Key: AXISCPP-975
>                 URL: http://issues.apache.org/jira/browse/AXISCPP-975
>             Project: Axis-C++
>          Issue Type: Bug
>          Components: WSDL processing - RPC
>    Affects Versions:  1.6 Beta
>         Environment:   	     Platform:
>         Linux fedora 3.0
> Axis version:
>         Server-side Axis C++ 1.6Beta
> XML Parser Lib:
> xersesc 2.6
> WSDL2ws tool by using axis java 1.3
> Client-side version Axis java 1.3
> Http Server Version:
> Apache 2.0.53
> Tomcat 2.0.58
>            Reporter: Michael Xiong
>
> I found that in axis-c-1.6beta, you seems have tried to fix some problems similar to axiscpp-931, the solution is to split localpart of returnParamName before writing it in generated wrapper class.
> I think the necessary code fix which we need to do are all inside the  method writeMethodInWrapper, which belongs to  WSDL2WS's WrapWriter class(src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/WrapWriter.jaava).
> i.e. 
> When the return type is simpletype or array,  you've added the below split processing instead of write returnParamName directly
> ----------------------------------
> + returnParamName.substring(returnParamName.lastIndexOf(">")+1)
> ----------------------------------
> That's OK, no problem.
> But there're still some case being ignored by you, I think it's still a bug:
> When the return type is complex array, you have not added the split processing before writing.
> ie. I used a  sample wsdl which containing the bllow piece(which will generate a complex array):
> ----------------------------------
> 			<xs:element name="GetTestResponse">
> 				<xs:complexType>
> 					<xs:sequence>
> 						<xs:element minOccurs="0" maxOccurs="unbounded" name="Test" type="mb:TestInformation"/>
> 						<xs:element minOccurs="0" maxOccurs="1" name="Context" type="xs:string"/>
> 					</xs:sequence>
> 				</xs:complexType>
> 			</xs:element>
> ------------------------------------
> By  axis-c-1.6beta, the generated code is wrong:
> the generated element name in code and run-time server response to client is like : ">GetTestResponse>Test", which is not correct according to my sample wsdl.
> My fix code looks like the below(in  the  method writeMethodInWrapper of WrapWriter class):
> ----------(...when it's complex array ...)-----------------------
>                                     writer.write(
>                                         "\tpIWSSZ->addOutputCmplxArrayParam((Axis_Array*)(&out"
>                                             + i
>                                             + "),"
>                                             + "(void*) Axis_Serialize_"
>                                             + containedType
>                                             + ", (void*) Axis_Delete_"
>                                             + containedType
>                                             + ", (void*) Axis_GetSize_"
>                                             + containedType
>                                             + ", \""
> //<mxiong debug 2006/6/15                                            
> //                                            + returnParamName
>                                             + returnParamName.substring(returnParamName.lastIndexOf(">")+1)
> //>mxiong debug 2006/6/15                                            
>                                             + "\", Axis_URI_"
>                                             + containedType
>                                             + ");\n");
> -
> ---------------------------------
> So would you like to check it and adopt my solution for this case?

-- 
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-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Commented: (AXISCPP-975) WSDL2WS: WrapWriter.java

Posted by "Michael Xiong (JIRA)" <ax...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/AXISCPP-975?page=comments#action_12416320 ] 

Michael Xiong commented on AXISCPP-975:
---------------------------------------

Sorry, my title should be : 
WSDL2WS: WrapWriter.java: returnParamName's localpart not splitted in some cases.

Can someone help me to update my title ?

Thanks.
Michael Xiong

> WSDL2WS: WrapWriter.java
> ------------------------
>
>          Key: AXISCPP-975
>          URL: http://issues.apache.org/jira/browse/AXISCPP-975
>      Project: Axis-C++
>         Type: Bug

>   Components: WSDL processing - RPC
>     Versions:  1.6 Beta
>  Environment:   	     Platform:
>         Linux fedora 3.0
> Axis version:
>         Server-side Axis C++ 1.6Beta
> XML Parser Lib:
> xersesc 2.6
> WSDL2ws tool by using axis java 1.3
> Client-side version Axis java 1.3
> Http Server Version:
> Apache 2.0.53
> Tomcat 2.0.58
>     Reporter: Michael Xiong

>
> I found that in axis-c-1.6beta, you seems have tried to fix some problems similar to axiscpp-931, the solution is to split localpart of returnParamName before writing it in generated wrapper class.
> I think the necessary code fix which we need to do are all inside the  method writeMethodInWrapper, which belongs to  WSDL2WS's WrapWriter class(src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/WrapWriter.jaava).
> i.e. 
> When the return type is simpletype or array,  you've added the below split processing instead of write returnParamName directly
> ----------------------------------
> + returnParamName.substring(returnParamName.lastIndexOf(">")+1)
> ----------------------------------
> That's OK, no problem.
> But there're still some case being ignored by you, I think it's still a bug:
> When the return type is complex array, you have not added the split processing before writing.
> ie. I used a  sample wsdl which containing the bllow piece(which will generate a complex array):
> ----------------------------------
> 			<xs:element name="GetTestResponse">
> 				<xs:complexType>
> 					<xs:sequence>
> 						<xs:element minOccurs="0" maxOccurs="unbounded" name="Test" type="mb:TestInformation"/>
> 						<xs:element minOccurs="0" maxOccurs="1" name="Context" type="xs:string"/>
> 					</xs:sequence>
> 				</xs:complexType>
> 			</xs:element>
> ------------------------------------
> By  axis-c-1.6beta, the generated code is wrong:
> the generated element name in code and run-time server response to client is like : ">GetTestResponse>Test", which is not correct according to my sample wsdl.
> My fix code looks like the below(in  the  method writeMethodInWrapper of WrapWriter class):
> ----------(...when it's complex array ...)-----------------------
>                                     writer.write(
>                                         "\tpIWSSZ->addOutputCmplxArrayParam((Axis_Array*)(&out"
>                                             + i
>                                             + "),"
>                                             + "(void*) Axis_Serialize_"
>                                             + containedType
>                                             + ", (void*) Axis_Delete_"
>                                             + containedType
>                                             + ", (void*) Axis_GetSize_"
>                                             + containedType
>                                             + ", \""
> //<mxiong debug 2006/6/15                                            
> //                                            + returnParamName
>                                             + returnParamName.substring(returnParamName.lastIndexOf(">")+1)
> //>mxiong debug 2006/6/15                                            
>                                             + "\", Axis_URI_"
>                                             + containedType
>                                             + ");\n");
> -
> ---------------------------------
> So would you like to check it and adopt my solution for this case?

-- 
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-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Closed: (AXISCPP-975) WSDL2WS: WrapWriter.java: returnParamName's localpart not split in some cases.

Posted by "nadir amra (JIRA)" <ax...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/AXISCPP-975?page=all ]

nadir amra closed AXISCPP-975.
------------------------------

    Fix Version/s: current (nightly)
       Resolution: Fixed

> WSDL2WS: WrapWriter.java: returnParamName's localpart not split in some cases.
> ------------------------------------------------------------------------------
>
>                 Key: AXISCPP-975
>                 URL: http://issues.apache.org/jira/browse/AXISCPP-975
>             Project: Axis-C++
>          Issue Type: Bug
>          Components: WSDL processing - RPC
>    Affects Versions:  1.6 Beta
>         Environment:   	     Platform:
>         Linux fedora 3.0
> Axis version:
>         Server-side Axis C++ 1.6Beta
> XML Parser Lib:
> xersesc 2.6
> WSDL2ws tool by using axis java 1.3
> Client-side version Axis java 1.3
> Http Server Version:
> Apache 2.0.53
> Tomcat 2.0.58
>            Reporter: Michael Xiong
>             Fix For: current (nightly)
>
>
> I found that in axis-c-1.6beta, you seems have tried to fix some problems similar to axiscpp-931, the solution is to split localpart of returnParamName before writing it in generated wrapper class.
> I think the necessary code fix which we need to do are all inside the  method writeMethodInWrapper, which belongs to  WSDL2WS's WrapWriter class(src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/WrapWriter.jaava).
> i.e. 
> When the return type is simpletype or array,  you've added the below split processing instead of write returnParamName directly
> ----------------------------------
> + returnParamName.substring(returnParamName.lastIndexOf(">")+1)
> ----------------------------------
> That's OK, no problem.
> But there're still some case being ignored by you, I think it's still a bug:
> When the return type is complex array, you have not added the split processing before writing.
> ie. I used a  sample wsdl which containing the bllow piece(which will generate a complex array):
> ----------------------------------
> 			<xs:element name="GetTestResponse">
> 				<xs:complexType>
> 					<xs:sequence>
> 						<xs:element minOccurs="0" maxOccurs="unbounded" name="Test" type="mb:TestInformation"/>
> 						<xs:element minOccurs="0" maxOccurs="1" name="Context" type="xs:string"/>
> 					</xs:sequence>
> 				</xs:complexType>
> 			</xs:element>
> ------------------------------------
> By  axis-c-1.6beta, the generated code is wrong:
> the generated element name in code and run-time server response to client is like : ">GetTestResponse>Test", which is not correct according to my sample wsdl.
> My fix code looks like the below(in  the  method writeMethodInWrapper of WrapWriter class):
> ----------(...when it's complex array ...)-----------------------
>                                     writer.write(
>                                         "\tpIWSSZ->addOutputCmplxArrayParam((Axis_Array*)(&out"
>                                             + i
>                                             + "),"
>                                             + "(void*) Axis_Serialize_"
>                                             + containedType
>                                             + ", (void*) Axis_Delete_"
>                                             + containedType
>                                             + ", (void*) Axis_GetSize_"
>                                             + containedType
>                                             + ", \""
> //<mxiong debug 2006/6/15                                            
> //                                            + returnParamName
>                                             + returnParamName.substring(returnParamName.lastIndexOf(">")+1)
> //>mxiong debug 2006/6/15                                            
>                                             + "\", Axis_URI_"
>                                             + containedType
>                                             + ");\n");
> -
> ---------------------------------
> So would you like to check it and adopt my solution for this case?

-- 
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-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org