You are viewing a plain text version of this content. The canonical link for it is here.
Posted to xmlrpc-dev@ws.apache.org by Raymond Penners <ra...@duologix.nl> on 2002/01/31 14:16:40 UTC

XML-RPC applet fix: removed sun.misc dependency

Hi all,

I am using your XML-RPC (1.0) in an applet. At first, things didn't work 
because org.apache.xmlrpc.applet.XmlRpcSupport referred to 
sun.misc.BASE64Encoder for encoding/decoding base64 data. This is Sun 
specific and does not work on all browsers. On my setup, things only 
functioned correctly only using Netscape 4.x. Both IE, and Mozilla failed.

Other users also encountered this problem, with no solution offered:

http://helma.org/archives/xmlrpc/2000-August/000164.html

I easily fixed this by removing the dependency on sun.misc.BASE64* to 
org.apache.xmlrpc.Base64. Now, it works across all browsers.

Please let me know what you think of this patch. I've successfully 
transferred binary data between a PHP XML-RPC server and an XML-RPC 
applet (both ways).

Regards,
-- 
Raymond Penners -*- raymond@dotsphinx.com -*- www.dotsphinx.com

Re: XML-RPC applet fix: removed sun.misc dependency

Posted by Jon Scott Stevens <jo...@latchkey.com>.
I didn't know about that problem.

Fixed in CVS now...

-jon


on 3/7/02 8:53 AM, "Martin Poeschl" <mp...@marmot.at> wrote:

> Daniel Rall wrote:
>> Jon cleared this up for us by replacing the infected code.
> 
> sure??
> 
> the patch is still not applied!
> patched my local version in the meantime ..
> 
> martin
> 
>> 
>> Daniel Rall <dl...@finemaltcoding.com> writes:
>> 
>> 
>>> Hey Raymond.  As soon as we get the Base64 class licensing issue
>>> cleared up with Kevin Kelley I can commit your changes.
>>> 
>>> Raymond Penners <ra...@duologix.nl> writes:
>>> 
>>> 
>>>> Hi all,
>>>> 
>>>> I am using your XML-RPC (1.0) in an applet. At first, things didn't
>>>> work because org.apache.xmlrpc.applet.XmlRpcSupport referred to
>>>> sun.misc.BASE64Encoder for encoding/decoding base64 data. This is Sun
>>>> specific and does not work on all browsers. On my setup, things only
>>>> functioned correctly only using Netscape 4.x. Both IE, and Mozilla
>>>> failed.
>>>> 
>>>> Other users also encountered this problem, with no solution offered:
>>>> 
>>>> http://helma.org/archives/xmlrpc/2000-August/000164.html
>>>> 
>>>> I easily fixed this by removing the dependency on sun.misc.BASE64* to
>>>> org.apache.xmlrpc.Base64. Now, it works across all browsers.
>>>> 
>>>> Please let me know what you think of this patch. I've successfully
>>>> transferred binary data between a PHP XML-RPC server and an XML-RPC
>>>> applet (both ways).
>>>> 
>>>> Regards,
>>>> -- 
>>>> Raymond Penners -*- raymond@dotsphinx.com -*- www.dotsphinx.com
>>>> --- SimpleXmlRpcClient.java.orig    Thu Jan 31 14:08:24 2002
>>>> +++ SimpleXmlRpcClient.java    Thu Jan 31 14:09:17 2002
>>>> @@ -62,6 +62,7 @@
>>>> import java.util.*;
>>>> import java.text.*;
>>>> import java.net.*;
>>>> +import org.apache.xmlrpc.Base64;
>>>> 
>>>> 
>>>> /**
>>>> @@ -188,8 +189,7 @@
>>>>    writer.endElement ("dateTime.iso8601");
>>>> } else if (what instanceof byte[]) {
>>>>    writer.startElement ("base64");
>>>> -        sun.misc.BASE64Encoder encoder = new sun.misc.BASE64Encoder ();
>>>> -        writer.write (encoder.encodeBuffer ((byte[]) what));
>>>> +        writer.write (Base64.encode ((byte[]) what));
>>>>    writer.endElement ("base64");
>>>> } else if (what instanceof Vector) {
>>>>    writer.startElement ("array");
>>>> @@ -543,12 +543,7 @@
>>>>                     }
>>>>                     break;
>>>>                 case BASE64:
>>>> -                    sun.misc.BASE64Decoder decoder = new
>>>> sun.misc.BASE64Decoder ();
>>>> -                    try {
>>>> -                        value = decoder.decodeBuffer (cdata);
>>>> -                    } catch (IOException x) {
>>>> -                        throw new RuntimeException ("Error decoding base64
>>>> tag: "+x.getMessage ());
>>>> -                    }
>>>> +                    value = Base64.decode (cdata.toCharArray());
>>>>                     break;
>>>>                 case STRING:
>>>>                     value = cdata;
>>> 
>> 
> 
> 


Re: XML-RPC applet fix: removed sun.misc dependency

Posted by Jon Scott Stevens <jo...@latchkey.com>.
I didn't know about that problem.

Fixed in CVS now...

-jon


on 3/7/02 8:53 AM, "Martin Poeschl" <mp...@marmot.at> wrote:

> Daniel Rall wrote:
>> Jon cleared this up for us by replacing the infected code.
> 
> sure??
> 
> the patch is still not applied!
> patched my local version in the meantime ..
> 
> martin
> 
>> 
>> Daniel Rall <dl...@finemaltcoding.com> writes:
>> 
>> 
>>> Hey Raymond.  As soon as we get the Base64 class licensing issue
>>> cleared up with Kevin Kelley I can commit your changes.
>>> 
>>> Raymond Penners <ra...@duologix.nl> writes:
>>> 
>>> 
>>>> Hi all,
>>>> 
>>>> I am using your XML-RPC (1.0) in an applet. At first, things didn't
>>>> work because org.apache.xmlrpc.applet.XmlRpcSupport referred to
>>>> sun.misc.BASE64Encoder for encoding/decoding base64 data. This is Sun
>>>> specific and does not work on all browsers. On my setup, things only
>>>> functioned correctly only using Netscape 4.x. Both IE, and Mozilla
>>>> failed.
>>>> 
>>>> Other users also encountered this problem, with no solution offered:
>>>> 
>>>> http://helma.org/archives/xmlrpc/2000-August/000164.html
>>>> 
>>>> I easily fixed this by removing the dependency on sun.misc.BASE64* to
>>>> org.apache.xmlrpc.Base64. Now, it works across all browsers.
>>>> 
>>>> Please let me know what you think of this patch. I've successfully
>>>> transferred binary data between a PHP XML-RPC server and an XML-RPC
>>>> applet (both ways).
>>>> 
>>>> Regards,
>>>> -- 
>>>> Raymond Penners -*- raymond@dotsphinx.com -*- www.dotsphinx.com
>>>> --- SimpleXmlRpcClient.java.orig    Thu Jan 31 14:08:24 2002
>>>> +++ SimpleXmlRpcClient.java    Thu Jan 31 14:09:17 2002
>>>> @@ -62,6 +62,7 @@
>>>> import java.util.*;
>>>> import java.text.*;
>>>> import java.net.*;
>>>> +import org.apache.xmlrpc.Base64;
>>>> 
>>>> 
>>>> /**
>>>> @@ -188,8 +189,7 @@
>>>>    writer.endElement ("dateTime.iso8601");
>>>> } else if (what instanceof byte[]) {
>>>>    writer.startElement ("base64");
>>>> -        sun.misc.BASE64Encoder encoder = new sun.misc.BASE64Encoder ();
>>>> -        writer.write (encoder.encodeBuffer ((byte[]) what));
>>>> +        writer.write (Base64.encode ((byte[]) what));
>>>>    writer.endElement ("base64");
>>>> } else if (what instanceof Vector) {
>>>>    writer.startElement ("array");
>>>> @@ -543,12 +543,7 @@
>>>>                     }
>>>>                     break;
>>>>                 case BASE64:
>>>> -                    sun.misc.BASE64Decoder decoder = new
>>>> sun.misc.BASE64Decoder ();
>>>> -                    try {
>>>> -                        value = decoder.decodeBuffer (cdata);
>>>> -                    } catch (IOException x) {
>>>> -                        throw new RuntimeException ("Error decoding base64
>>>> tag: "+x.getMessage ());
>>>> -                    }
>>>> +                    value = Base64.decode (cdata.toCharArray());
>>>>                     break;
>>>>                 case STRING:
>>>>                     value = cdata;
>>> 
>> 
> 
> 


Re: XML-RPC applet fix: removed sun.misc dependency

Posted by Martin Poeschl <mp...@marmot.at>.
Daniel Rall wrote:
> Jon cleared this up for us by replacing the infected code.

sure??

the patch is still not applied!
patched my local version in the meantime ..

martin

> 
> Daniel Rall <dl...@finemaltcoding.com> writes:
> 
> 
>>Hey Raymond.  As soon as we get the Base64 class licensing issue
>>cleared up with Kevin Kelley I can commit your changes.
>>
>>Raymond Penners <ra...@duologix.nl> writes:
>>
>>
>>>Hi all,
>>>
>>>I am using your XML-RPC (1.0) in an applet. At first, things didn't
>>>work because org.apache.xmlrpc.applet.XmlRpcSupport referred to
>>>sun.misc.BASE64Encoder for encoding/decoding base64 data. This is Sun
>>>specific and does not work on all browsers. On my setup, things only
>>>functioned correctly only using Netscape 4.x. Both IE, and Mozilla
>>>failed.
>>>
>>>Other users also encountered this problem, with no solution offered:
>>>
>>>http://helma.org/archives/xmlrpc/2000-August/000164.html
>>>
>>>I easily fixed this by removing the dependency on sun.misc.BASE64* to
>>>org.apache.xmlrpc.Base64. Now, it works across all browsers.
>>>
>>>Please let me know what you think of this patch. I've successfully
>>>transferred binary data between a PHP XML-RPC server and an XML-RPC
>>>applet (both ways).
>>>
>>>Regards,
>>>-- 
>>>Raymond Penners -*- raymond@dotsphinx.com -*- www.dotsphinx.com
>>>--- SimpleXmlRpcClient.java.orig	Thu Jan 31 14:08:24 2002
>>>+++ SimpleXmlRpcClient.java	Thu Jan 31 14:09:17 2002
>>>@@ -62,6 +62,7 @@
>>> import java.util.*;
>>> import java.text.*;
>>> import java.net.*;
>>>+import org.apache.xmlrpc.Base64;
>>> 
>>> 
>>> /**
>>>@@ -188,8 +189,7 @@
>>> 	    writer.endElement ("dateTime.iso8601");
>>> 	} else if (what instanceof byte[]) {
>>> 	    writer.startElement ("base64");
>>>-	    sun.misc.BASE64Encoder encoder = new sun.misc.BASE64Encoder ();
>>>-	    writer.write (encoder.encodeBuffer ((byte[]) what));
>>>+	    writer.write (Base64.encode ((byte[]) what));
>>> 	    writer.endElement ("base64");
>>> 	} else if (what instanceof Vector) {
>>> 	    writer.startElement ("array");
>>>@@ -543,12 +543,7 @@
>>>                     }
>>>                     break;
>>>                 case BASE64:
>>>-                    sun.misc.BASE64Decoder decoder = new sun.misc.BASE64Decoder ();
>>>-                    try {
>>>-                        value = decoder.decodeBuffer (cdata);
>>>-                    } catch (IOException x) {
>>>-                        throw new RuntimeException ("Error decoding base64 tag: "+x.getMessage ());
>>>-                    }
>>>+                    value = Base64.decode (cdata.toCharArray());
>>>                     break;
>>>                 case STRING:
>>>                     value = cdata;
>>
> 




Re: XML-RPC applet fix: removed sun.misc dependency

Posted by Martin Poeschl <mp...@marmot.at>.
Daniel Rall wrote:
> Jon cleared this up for us by replacing the infected code.

sure??

the patch is still not applied!
patched my local version in the meantime ..

martin

> 
> Daniel Rall <dl...@finemaltcoding.com> writes:
> 
> 
>>Hey Raymond.  As soon as we get the Base64 class licensing issue
>>cleared up with Kevin Kelley I can commit your changes.
>>
>>Raymond Penners <ra...@duologix.nl> writes:
>>
>>
>>>Hi all,
>>>
>>>I am using your XML-RPC (1.0) in an applet. At first, things didn't
>>>work because org.apache.xmlrpc.applet.XmlRpcSupport referred to
>>>sun.misc.BASE64Encoder for encoding/decoding base64 data. This is Sun
>>>specific and does not work on all browsers. On my setup, things only
>>>functioned correctly only using Netscape 4.x. Both IE, and Mozilla
>>>failed.
>>>
>>>Other users also encountered this problem, with no solution offered:
>>>
>>>http://helma.org/archives/xmlrpc/2000-August/000164.html
>>>
>>>I easily fixed this by removing the dependency on sun.misc.BASE64* to
>>>org.apache.xmlrpc.Base64. Now, it works across all browsers.
>>>
>>>Please let me know what you think of this patch. I've successfully
>>>transferred binary data between a PHP XML-RPC server and an XML-RPC
>>>applet (both ways).
>>>
>>>Regards,
>>>-- 
>>>Raymond Penners -*- raymond@dotsphinx.com -*- www.dotsphinx.com
>>>--- SimpleXmlRpcClient.java.orig	Thu Jan 31 14:08:24 2002
>>>+++ SimpleXmlRpcClient.java	Thu Jan 31 14:09:17 2002
>>>@@ -62,6 +62,7 @@
>>> import java.util.*;
>>> import java.text.*;
>>> import java.net.*;
>>>+import org.apache.xmlrpc.Base64;
>>> 
>>> 
>>> /**
>>>@@ -188,8 +189,7 @@
>>> 	    writer.endElement ("dateTime.iso8601");
>>> 	} else if (what instanceof byte[]) {
>>> 	    writer.startElement ("base64");
>>>-	    sun.misc.BASE64Encoder encoder = new sun.misc.BASE64Encoder ();
>>>-	    writer.write (encoder.encodeBuffer ((byte[]) what));
>>>+	    writer.write (Base64.encode ((byte[]) what));
>>> 	    writer.endElement ("base64");
>>> 	} else if (what instanceof Vector) {
>>> 	    writer.startElement ("array");
>>>@@ -543,12 +543,7 @@
>>>                     }
>>>                     break;
>>>                 case BASE64:
>>>-                    sun.misc.BASE64Decoder decoder = new sun.misc.BASE64Decoder ();
>>>-                    try {
>>>-                        value = decoder.decodeBuffer (cdata);
>>>-                    } catch (IOException x) {
>>>-                        throw new RuntimeException ("Error decoding base64 tag: "+x.getMessage ());
>>>-                    }
>>>+                    value = Base64.decode (cdata.toCharArray());
>>>                     break;
>>>                 case STRING:
>>>                     value = cdata;
>>
> 




Re: XML-RPC applet fix: removed sun.misc dependency

Posted by Daniel Rall <dl...@finemaltcoding.com>.
Jon cleared this up for us by replacing the infected code.

Daniel Rall <dl...@finemaltcoding.com> writes:

> Hey Raymond.  As soon as we get the Base64 class licensing issue
> cleared up with Kevin Kelley I can commit your changes.
>
> Raymond Penners <ra...@duologix.nl> writes:
>
>> Hi all,
>>
>> I am using your XML-RPC (1.0) in an applet. At first, things didn't
>> work because org.apache.xmlrpc.applet.XmlRpcSupport referred to
>> sun.misc.BASE64Encoder for encoding/decoding base64 data. This is Sun
>> specific and does not work on all browsers. On my setup, things only
>> functioned correctly only using Netscape 4.x. Both IE, and Mozilla
>> failed.
>>
>> Other users also encountered this problem, with no solution offered:
>>
>> http://helma.org/archives/xmlrpc/2000-August/000164.html
>>
>> I easily fixed this by removing the dependency on sun.misc.BASE64* to
>> org.apache.xmlrpc.Base64. Now, it works across all browsers.
>>
>> Please let me know what you think of this patch. I've successfully
>> transferred binary data between a PHP XML-RPC server and an XML-RPC
>> applet (both ways).
>>
>> Regards,
>> -- 
>> Raymond Penners -*- raymond@dotsphinx.com -*- www.dotsphinx.com
>> --- SimpleXmlRpcClient.java.orig	Thu Jan 31 14:08:24 2002
>> +++ SimpleXmlRpcClient.java	Thu Jan 31 14:09:17 2002
>> @@ -62,6 +62,7 @@
>>  import java.util.*;
>>  import java.text.*;
>>  import java.net.*;
>> +import org.apache.xmlrpc.Base64;
>>  
>>  
>>  /**
>> @@ -188,8 +189,7 @@
>>  	    writer.endElement ("dateTime.iso8601");
>>  	} else if (what instanceof byte[]) {
>>  	    writer.startElement ("base64");
>> -	    sun.misc.BASE64Encoder encoder = new sun.misc.BASE64Encoder ();
>> -	    writer.write (encoder.encodeBuffer ((byte[]) what));
>> +	    writer.write (Base64.encode ((byte[]) what));
>>  	    writer.endElement ("base64");
>>  	} else if (what instanceof Vector) {
>>  	    writer.startElement ("array");
>> @@ -543,12 +543,7 @@
>>                      }
>>                      break;
>>                  case BASE64:
>> -                    sun.misc.BASE64Decoder decoder = new sun.misc.BASE64Decoder ();
>> -                    try {
>> -                        value = decoder.decodeBuffer (cdata);
>> -                    } catch (IOException x) {
>> -                        throw new RuntimeException ("Error decoding base64 tag: "+x.getMessage ());
>> -                    }
>> +                    value = Base64.decode (cdata.toCharArray());
>>                      break;
>>                  case STRING:
>>                      value = cdata;

Re: XML-RPC applet fix: removed sun.misc dependency

Posted by Daniel Rall <dl...@finemaltcoding.com>.
Jon cleared this up for us by replacing the infected code.

Daniel Rall <dl...@finemaltcoding.com> writes:

> Hey Raymond.  As soon as we get the Base64 class licensing issue
> cleared up with Kevin Kelley I can commit your changes.
>
> Raymond Penners <ra...@duologix.nl> writes:
>
>> Hi all,
>>
>> I am using your XML-RPC (1.0) in an applet. At first, things didn't
>> work because org.apache.xmlrpc.applet.XmlRpcSupport referred to
>> sun.misc.BASE64Encoder for encoding/decoding base64 data. This is Sun
>> specific and does not work on all browsers. On my setup, things only
>> functioned correctly only using Netscape 4.x. Both IE, and Mozilla
>> failed.
>>
>> Other users also encountered this problem, with no solution offered:
>>
>> http://helma.org/archives/xmlrpc/2000-August/000164.html
>>
>> I easily fixed this by removing the dependency on sun.misc.BASE64* to
>> org.apache.xmlrpc.Base64. Now, it works across all browsers.
>>
>> Please let me know what you think of this patch. I've successfully
>> transferred binary data between a PHP XML-RPC server and an XML-RPC
>> applet (both ways).
>>
>> Regards,
>> -- 
>> Raymond Penners -*- raymond@dotsphinx.com -*- www.dotsphinx.com
>> --- SimpleXmlRpcClient.java.orig	Thu Jan 31 14:08:24 2002
>> +++ SimpleXmlRpcClient.java	Thu Jan 31 14:09:17 2002
>> @@ -62,6 +62,7 @@
>>  import java.util.*;
>>  import java.text.*;
>>  import java.net.*;
>> +import org.apache.xmlrpc.Base64;
>>  
>>  
>>  /**
>> @@ -188,8 +189,7 @@
>>  	    writer.endElement ("dateTime.iso8601");
>>  	} else if (what instanceof byte[]) {
>>  	    writer.startElement ("base64");
>> -	    sun.misc.BASE64Encoder encoder = new sun.misc.BASE64Encoder ();
>> -	    writer.write (encoder.encodeBuffer ((byte[]) what));
>> +	    writer.write (Base64.encode ((byte[]) what));
>>  	    writer.endElement ("base64");
>>  	} else if (what instanceof Vector) {
>>  	    writer.startElement ("array");
>> @@ -543,12 +543,7 @@
>>                      }
>>                      break;
>>                  case BASE64:
>> -                    sun.misc.BASE64Decoder decoder = new sun.misc.BASE64Decoder ();
>> -                    try {
>> -                        value = decoder.decodeBuffer (cdata);
>> -                    } catch (IOException x) {
>> -                        throw new RuntimeException ("Error decoding base64 tag: "+x.getMessage ());
>> -                    }
>> +                    value = Base64.decode (cdata.toCharArray());
>>                      break;
>>                  case STRING:
>>                      value = cdata;

Re: XML-RPC applet fix: removed sun.misc dependency

Posted by Daniel Rall <dl...@finemaltcoding.com>.
Hey Raymond.  As soon as we get the Base64 class licensing issue
cleared up with Kevin Kelley I can commit your changes.

Raymond Penners <ra...@duologix.nl> writes:

> Hi all,
>
> I am using your XML-RPC (1.0) in an applet. At first, things didn't
> work because org.apache.xmlrpc.applet.XmlRpcSupport referred to
> sun.misc.BASE64Encoder for encoding/decoding base64 data. This is Sun
> specific and does not work on all browsers. On my setup, things only
> functioned correctly only using Netscape 4.x. Both IE, and Mozilla
> failed.
>
> Other users also encountered this problem, with no solution offered:
>
> http://helma.org/archives/xmlrpc/2000-August/000164.html
>
> I easily fixed this by removing the dependency on sun.misc.BASE64* to
> org.apache.xmlrpc.Base64. Now, it works across all browsers.
>
> Please let me know what you think of this patch. I've successfully
> transferred binary data between a PHP XML-RPC server and an XML-RPC
> applet (both ways).
>
> Regards,
> -- 
> Raymond Penners -*- raymond@dotsphinx.com -*- www.dotsphinx.com
> --- SimpleXmlRpcClient.java.orig	Thu Jan 31 14:08:24 2002
> +++ SimpleXmlRpcClient.java	Thu Jan 31 14:09:17 2002
> @@ -62,6 +62,7 @@
>  import java.util.*;
>  import java.text.*;
>  import java.net.*;
> +import org.apache.xmlrpc.Base64;
>  
>  
>  /**
> @@ -188,8 +189,7 @@
>  	    writer.endElement ("dateTime.iso8601");
>  	} else if (what instanceof byte[]) {
>  	    writer.startElement ("base64");
> -	    sun.misc.BASE64Encoder encoder = new sun.misc.BASE64Encoder ();
> -	    writer.write (encoder.encodeBuffer ((byte[]) what));
> +	    writer.write (Base64.encode ((byte[]) what));
>  	    writer.endElement ("base64");
>  	} else if (what instanceof Vector) {
>  	    writer.startElement ("array");
> @@ -543,12 +543,7 @@
>                      }
>                      break;
>                  case BASE64:
> -                    sun.misc.BASE64Decoder decoder = new sun.misc.BASE64Decoder ();
> -                    try {
> -                        value = decoder.decodeBuffer (cdata);
> -                    } catch (IOException x) {
> -                        throw new RuntimeException ("Error decoding base64 tag: "+x.getMessage ());
> -                    }
> +                    value = Base64.decode (cdata.toCharArray());
>                      break;
>                  case STRING:
>                      value = cdata;

Re: XML-RPC applet fix: removed sun.misc dependency

Posted by Daniel Rall <dl...@finemaltcoding.com>.
Hey Raymond.  As soon as we get the Base64 class licensing issue
cleared up with Kevin Kelley I can commit your changes.

Raymond Penners <ra...@duologix.nl> writes:

> Hi all,
>
> I am using your XML-RPC (1.0) in an applet. At first, things didn't
> work because org.apache.xmlrpc.applet.XmlRpcSupport referred to
> sun.misc.BASE64Encoder for encoding/decoding base64 data. This is Sun
> specific and does not work on all browsers. On my setup, things only
> functioned correctly only using Netscape 4.x. Both IE, and Mozilla
> failed.
>
> Other users also encountered this problem, with no solution offered:
>
> http://helma.org/archives/xmlrpc/2000-August/000164.html
>
> I easily fixed this by removing the dependency on sun.misc.BASE64* to
> org.apache.xmlrpc.Base64. Now, it works across all browsers.
>
> Please let me know what you think of this patch. I've successfully
> transferred binary data between a PHP XML-RPC server and an XML-RPC
> applet (both ways).
>
> Regards,
> -- 
> Raymond Penners -*- raymond@dotsphinx.com -*- www.dotsphinx.com
> --- SimpleXmlRpcClient.java.orig	Thu Jan 31 14:08:24 2002
> +++ SimpleXmlRpcClient.java	Thu Jan 31 14:09:17 2002
> @@ -62,6 +62,7 @@
>  import java.util.*;
>  import java.text.*;
>  import java.net.*;
> +import org.apache.xmlrpc.Base64;
>  
>  
>  /**
> @@ -188,8 +189,7 @@
>  	    writer.endElement ("dateTime.iso8601");
>  	} else if (what instanceof byte[]) {
>  	    writer.startElement ("base64");
> -	    sun.misc.BASE64Encoder encoder = new sun.misc.BASE64Encoder ();
> -	    writer.write (encoder.encodeBuffer ((byte[]) what));
> +	    writer.write (Base64.encode ((byte[]) what));
>  	    writer.endElement ("base64");
>  	} else if (what instanceof Vector) {
>  	    writer.startElement ("array");
> @@ -543,12 +543,7 @@
>                      }
>                      break;
>                  case BASE64:
> -                    sun.misc.BASE64Decoder decoder = new sun.misc.BASE64Decoder ();
> -                    try {
> -                        value = decoder.decodeBuffer (cdata);
> -                    } catch (IOException x) {
> -                        throw new RuntimeException ("Error decoding base64 tag: "+x.getMessage ());
> -                    }
> +                    value = Base64.decode (cdata.toCharArray());
>                      break;
>                  case STRING:
>                      value = cdata;