← Prev in month
← Prev in thread
Next in thread →
Next in month →
Fw: [sca-c-cpp-comment] Fw: [sca-assembly] ASSEMBLY-198: Use of java.lang.StringBufferin test ASM_8002 - PROPOSAL
Forward to correct list... Bryan Aupperle, Ph.D. STSM, WebSphere Enterprise Platform Software Solution Architect Research Triangle Park, NC +1 919-254-7508 (T/L 444-7508) Internet Address: ----- Forwarded by Bryan Aupperle/Raleigh/IBM on 03/11/2010 10:51 AM ----- From: Bryan Aupperle/Raleigh/IBM@IBMUS To: "" <> Date: 03/10/2010 02:15 PM Subject: [sca-c-cpp-comment] Fw: [sca-assembly] ASSEMBLY-198: Use of java.lang.StringBuffer in test ASM_8002 - PROPOSAL We need to discuss C++ spec and lists as parameters. Bryan Aupperle, Ph.D. STSM, WebSphere Enterprise Platform Software Solution Architect WW Center of Excellence for Enterprise Systems & Banking Center of Excellence Application Integration Architect Master Inventor Research Triangle Park, NC +1 919-254-7508 (T/L 444-7508) Internet Address: ----- Forwarded by Bryan Aupperle/Raleigh/IBM on 03/10/2010 02:12 PM ----- From: Mike Edwards <> To: "OASIS Assembly" <> Date: 03/10/2010 07:13 AM Subject: [sca-assembly] ASSEMBLY-198: Use of java.lang.StringBuffer in test ASM_8002 - PROPOSAL Folks, In the issue, http://www.osoa.org/jira/browse/ASSEMBLY-198 , the complaint is made that the current form of the testcase uses an interface that contains a StringBuffer (in the Java form of the interface) which is mapped to a stringBuffer type in the XSD assocaited with the WSDL form of the same interface (Service4 interface). The problem with this approach is that there is no formal "standard mapping" for String Buffer between Java and WSDL. The test is attempting to test that when an invocation is done over a Remotable interface, that the input parameters of any operation are passed by value and as a result any modification made by the service implementation to the input parameter of the service operation cannot be seen by the client. The testcase structure involves an invocation between 2 SCA components, where the service component deliberately alters the value of the parameter it receives in the service invocation. The client tests the value of the variable used for the parameter for the service operation invocation - and validates that the value is the same as it was before the invocation was made. The design clearly calls for the use of a data type that is mutable - so in Java a "String" type is useless since it is immutable. StringBuffer was originally chosen since it is the nearest type to a String that is mutable. PROPOSAL. To overcome the objection to the StringBuffer type, change the type of the parameter used in the service operation for this testcase to be a list based on string: Java: java.util.List<String> XSD: <xs:element name="operation1"> <xs:complexType> <xs:sequence> <xs:element name="arg0" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> While Java Strings are not mutable, Java Lists are mutable and so the service implementation can simply update the first element in the List and the client can check whether that element of the List has changed following the operation invocation. The same behaviour is possible for all other implementation languages, I believe. This affects: Service4.java Service4.wsdl service1Impl7.java (client implementation) service4Impl.java (service implementation) The updated versions of these artifacts can be seen here: http://tools.oasis-open.org/version-control/browse/wsvn/sca-assembly/TestCases/General_Java/src/main/java/org/oasisopen/sca/test/Service4.java http://tools.oasis-open.org/version-control/browse/wsvn/sca-assembly/TestCases/General/src/main/resources/Service4.wsdl http://tools.oasis-open.org/version-control/browse/wsvn/sca-assembly/TestCases/General_Java/src/main/java/org/oasisopen/sca/test/service1Impl7.java http://tools.oasis-open.org/version-control/browse/wsvn/sca-assembly/TestCases/General_Java/src/main/java/org/oasisopen/sca/test/service4Impl.java http://tools.oasis-open.org/version-control/browse/wsvn/sca-assembly/TestCases/Test_Client/src/main/java/client/ASM_8002_TestCase.java Yours, Mike. Strategist - Emerging Technologies, SCA & SDO. Co Chair OASIS SCA Assembly TC. IBM Hursley Park, Mail Point 146, Winchester, SO21 2JN, Great Britain. Phone & FAX: +44-1962-818014 Mobile: +44-7802-467431 Email: Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
← Prev in month
← Prev in thread
Next in thread →
Next in month →