Hi,

the following patch makes XmlRpc running with codec 1.2.


Jochen

Index: DefaultTypeFactory.java
===================================================================
RCS file: /home/cvspublic/ws-xmlrpc/src/java/org/apache/xmlrpc/DefaultTypeFactory.java,v
retrieving revision 1.3
diff -u -r1.3 DefaultTypeFactory.java
--- DefaultTypeFactory.java	1 May 2003 16:53:15 -0000	1.3
+++ DefaultTypeFactory.java	15 Jun 2004 20:24:10 -0000
@@ -128,7 +128,7 @@
     public Object createBase64(String cdata)
     {
         try {
-            return base64Codec.decode(cdata.getBytes());
+            return base64Codec.decode((Object) cdata.getBytes());
         }
         catch (DecoderException e) {
             //TODO: consider throwing an exception here?
Index: XmlWriter.java
===================================================================
RCS file: /home/cvspublic/ws-xmlrpc/src/java/org/apache/xmlrpc/XmlWriter.java,v
retrieving revision 1.9
diff -u -r1.9 XmlWriter.java
--- XmlWriter.java	12 Sep 2003 09:44:06 -0000	1.9
+++ XmlWriter.java	15 Jun 2004 20:24:13 -0000
@@ -212,7 +212,7 @@
         {
             startElement("base64");
             try {
-                this.write(base64Codec.encode((byte[]) obj));
+                this.write((byte[]) base64Codec.encode(obj));
             }
             catch (EncoderException e) {
                 throw new XmlRpcClientException("Unable to Base 64 encode byte array", e);
Index: applet/SimpleXmlRpcClient.java
===================================================================
RCS file: /home/cvspublic/ws-xmlrpc/src/java/org/apache/xmlrpc/applet/SimpleXmlRpcClient.java,v
retrieving revision 1.8
diff -u -r1.8 SimpleXmlRpcClient.java
--- applet/SimpleXmlRpcClient.java	14 May 2004 15:47:05 -0000	1.8
+++ applet/SimpleXmlRpcClient.java	15 Jun 2004 20:24:15 -0000
@@ -250,7 +250,7 @@
         {
             writer.startElement("base64");
             try {
-                writer.write(base64.encode((byte[]) what));
+                writer.write((byte[]) base64.encode(what));
             }
             catch (EncoderException e) {
                 throw new RuntimeException("Incompatible version of org.apache.commons.codec.binary.Base64 used, and an error occurred.");
@@ -648,7 +648,7 @@
                     break;
                 case BASE64:
                     try {
-                        value = base64.decode(cdata.getBytes());
+                        value = base64.decode((Object) cdata.getBytes());
                     }
                     catch (DecoderException e) {
                         /* FIXME: what should we do here?  Probably an Exception?
Index: util/HttpUtil.java
===================================================================
RCS file: /home/cvspublic/ws-xmlrpc/src/java/org/apache/xmlrpc/util/HttpUtil.java,v
retrieving revision 1.2
diff -u -r1.2 HttpUtil.java
--- util/HttpUtil.java	1 May 2003 16:53:16 -0000	1.2
+++ util/HttpUtil.java	15 Jun 2004 20:24:15 -0000
@@ -86,8 +86,8 @@
         else
         {
             try {
-                auth = new String(base64.encode((user + ':' + password)
-                        .getBytes())).trim();
+                byte[] bytes = (byte[]) (user + ':' + password).getBytes();
+                auth = new String((byte[]) base64.encode((Object) bytes)).trim();
             }
             catch (EncoderException e) {
                 // EncoderException is never thrown in the body of Base64.encode(byte[]) in version 1.1

Reply via email to