rubys 01/07/07 06:41:55 Modified: java/samples/interop DeploymentDescriptor.xml EchoTestClient.java EchoTestService.java Log: Add tests for Decimal and Boolean Revision Changes Path 1.6 +8 -2 xml-soap/java/samples/interop/DeploymentDescriptor.xml Index: DeploymentDescriptor.xml =================================================================== RCS file: /home/cvs/xml-soap/java/samples/interop/DeploymentDescriptor.xml,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- DeploymentDescriptor.xml 2001/07/04 03:10:09 1.5 +++ DeploymentDescriptor.xml 2001/07/07 13:41:55 1.6 @@ -3,7 +3,7 @@ checkMustUnderstands="true"> <isd:provider type="java" scope="Application" - methods="nop echoInteger echoString echoFloat echoStruct echoIntegerArray echoFloatArray echoStringArray echoStructArray echoVoid echoBase64 echoDate"> + methods="nop echoInteger echoString echoFloat echoStruct echoIntegerArray echoFloatArray echoStringArray echoStructArray echoVoid echoBase64 echoDate echoDecimal echoBoolean"> <isd:java class="samples.interop.EchoTestService" static="false"/> </isd:provider> @@ -51,7 +51,13 @@ <isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:x="" qname="x:inputDate" javaType="java.util.Date" - java2XMLClassName="org.apache.soap.encoding.soapenc.DateSerializer"/> + java2XMLClassName="org.apache.soap.encoding.soapenc.DateSerializer" xml2JavaClassName="org.apache.soap.encoding.soapenc.DateSerializer"/> + <isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" + xmlns:x="" qname="x:inputDecimal" + xml2JavaClassName="org.apache.soap.encoding.soapenc.DecimalDeserializer"/> + <isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" + xmlns:x="" qname="x:inputBoolean" + xml2JavaClassName="org.apache.soap.encoding.soapenc.BooleanDeserializer"/> </isd:mappings> </isd:service> 1.5 +13 -2 xml-soap/java/samples/interop/EchoTestClient.java Index: EchoTestClient.java =================================================================== RCS file: /home/cvs/xml-soap/java/samples/interop/EchoTestClient.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- EchoTestClient.java 2001/07/04 02:33:42 1.4 +++ EchoTestClient.java 2001/07/07 13:41:55 1.5 @@ -68,6 +68,7 @@ import org.apache.soap.util.*; import java.lang.reflect.*; import java.util.Date; +import java.math.BigDecimal; /** A quick-and-dirty client for the Interop echo test services as defined * at http://www.xmethods.net/ilab. @@ -109,7 +110,7 @@ } private static boolean equals(Object obj1, Object obj2) { - if (obj1 == null) return (obj2 == null); + if ((obj1==null) || (obj2==null)) return (obj1==obj2); if (obj1.equals(obj2)) return true; if (!obj2.getClass().isArray()) return false; if (!obj1.getClass().isArray()) return false; @@ -126,8 +127,10 @@ StringDeserializer stringDser = new StringDeserializer(); ArraySerializer arraySer = new ArraySerializer(); DataSerializer dataSer = new DataSerializer(); - DateSerializer dateSer = new DateSerializer(); Base64Serializer base64Ser = new Base64Serializer(); + DateSerializer dateSer = new DateSerializer(); + DecimalDeserializer decimalSer = new DecimalDeserializer(); + BooleanDeserializer booleanSer = new BooleanDeserializer(); smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName(OBJECT_URI, "SOAPStruct"), Data.class, dataSer, dataSer); Integer i = new Integer(5); @@ -192,6 +195,14 @@ p = new Parameter("inputDate", Date.class, new Date(), null); smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName("", "Return"), null, null, dateSer); doCall(url, "echoDate", p); + + p = new Parameter("inputDecimal", BigDecimal.class, new BigDecimal("3.14159"), null); + smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName("", "Return"), null, null, decimalSer); + doCall(url, "echoDecimal", p); + + p = new Parameter("inputBoolean", Boolean.class, new Boolean(true), null); + smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName("", "Return"), null, null, booleanSer); + doCall(url, "echoBoolean", p); } 1.3 +11 -0 xml-soap/java/samples/interop/EchoTestService.java Index: EchoTestService.java =================================================================== RCS file: /home/cvs/xml-soap/java/samples/interop/EchoTestService.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- EchoTestService.java 2001/07/04 02:08:39 1.2 +++ EchoTestService.java 2001/07/07 13:41:55 1.3 @@ -55,6 +55,7 @@ package samples.interop; +import java.math.BigDecimal; import java.util.Date; /** An implementation of the interop echo service as defined at @@ -120,5 +121,15 @@ public Date echoDate(Date d) { return d; + } + + public BigDecimal echoDecimal(BigDecimal d) + { + return d; + } + + public boolean echoBoolean(boolean b) + { + return b; } }