You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@santuario.apache.org by co...@apache.org on 2014/12/15 17:18:32 UTC

svn commit: r1645687 - in /santuario/xml-security-java/trunk/src: main/java/org/apache/xml/security/stax/impl/util/ test/java/org/apache/xml/security/test/stax/signature/

Author: coheigea
Date: Mon Dec 15 16:18:31 2014
New Revision: 1645687

URL: http://svn.apache.org/r1645687
Log:
[SANTUARIO-408] - santuario 2.0's stax logging uses default encoding. Thanks to Anli Shundi for the patch.

Modified:
    santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/stax/impl/util/DigestOutputStream.java
    santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/stax/impl/util/SignerOutputStream.java
    santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/stax/signature/SignatureCreationTest.java

Modified: santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/stax/impl/util/DigestOutputStream.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/stax/impl/util/DigestOutputStream.java?rev=1645687&r1=1645686&r2=1645687&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/stax/impl/util/DigestOutputStream.java (original)
+++ santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/stax/impl/util/DigestOutputStream.java Mon Dec 15 16:18:31 2014
@@ -18,12 +18,13 @@
  */
 package org.apache.xml.security.stax.impl.util;
 
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
 import java.io.OutputStream;
+import java.io.UnsupportedEncodingException;
 import java.security.MessageDigest;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 /**
  * A Streaming based message-digest implementation
  *
@@ -52,9 +53,10 @@ public class DigestOutputStream extends
 
     @Override
     public void write(int arg0) {
-        messageDigest.update((byte) arg0);
+        byte asByte = (byte) arg0;
+        messageDigest.update(asByte);
         if (isDebugEnabled) {
-            stringBuilder.append(new String(new byte[]{(byte) arg0}));
+            stringBuilder.append((char)asByte);
         }
     }
 
@@ -62,7 +64,11 @@ public class DigestOutputStream extends
     public void write(byte[] arg0, int arg1, int arg2) {
         messageDigest.update(arg0, arg1, arg2);
         if (isDebugEnabled) {
-            stringBuilder.append(new String(arg0, arg1, arg2));
+            try {
+                stringBuilder.append(new String(arg0, arg1, arg2, "UTF-8"));
+            } catch (UnsupportedEncodingException e) {
+                log.warn(e.toString(), e);//UTF-8 is mandatory actually
+            }
         }
     }
 

Modified: santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/stax/impl/util/SignerOutputStream.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/stax/impl/util/SignerOutputStream.java?rev=1645687&r1=1645686&r2=1645687&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/stax/impl/util/SignerOutputStream.java (original)
+++ santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/stax/impl/util/SignerOutputStream.java Mon Dec 15 16:18:31 2014
@@ -18,12 +18,13 @@
  */
 package org.apache.xml.security.stax.impl.util;
 
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import java.io.OutputStream;
+import java.io.UnsupportedEncodingException;
+
 import org.apache.xml.security.exceptions.XMLSecurityException;
 import org.apache.xml.security.stax.impl.algorithms.SignatureAlgorithm;
-
-import java.io.OutputStream;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * @author $Author$
@@ -52,9 +53,10 @@ public class SignerOutputStream extends
     @Override
     public void write(int arg0) {
         try {
-            signatureAlgorithm.engineUpdate((byte) arg0);
+            byte asByte = (byte) arg0;
+            signatureAlgorithm.engineUpdate(asByte);
             if (isDebugEnabled) {
-                stringBuilder.append(new String(new byte[]{(byte) arg0}));
+                stringBuilder.append((char)asByte);
             }
         } catch (XMLSecurityException e) {
             throw new RuntimeException(e);
@@ -66,10 +68,12 @@ public class SignerOutputStream extends
         try {
             signatureAlgorithm.engineUpdate(arg0, arg1, arg2);
             if (isDebugEnabled) {
-                stringBuilder.append(new String(arg0, arg1, arg2));
+                stringBuilder.append(new String(arg0, arg1, arg2, "UTF-8"));
             }
         } catch (XMLSecurityException e) {
             throw new RuntimeException(e);
+        } catch (UnsupportedEncodingException e) {
+            log.warn(e.toString(), e);//UTF-8 is mandatory actually
         }
     }
 

Modified: santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/stax/signature/SignatureCreationTest.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/stax/signature/SignatureCreationTest.java?rev=1645687&r1=1645686&r2=1645687&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/stax/signature/SignatureCreationTest.java (original)
+++ santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/stax/signature/SignatureCreationTest.java Mon Dec 15 16:18:31 2014
@@ -325,7 +325,7 @@ public class SignatureCreationTest exten
         XmlReaderToWriter.writeAll(xmlStreamReader, xmlStreamWriter);
         xmlStreamWriter.close();
 
-        System.out.println("Got:\n" + new String(baos.toByteArray(), "UTF-8"));
+        //System.out.println("Got:\n" + new String(baos.toByteArray(), "UTF-8"));
 
         Document document
                 = XMLUtils.createDocumentBuilder(false).parse(new ByteArrayInputStream(baos.toByteArray()));
@@ -845,7 +845,7 @@ public class SignatureCreationTest exten
         XmlReaderToWriter.writeAll(xmlStreamReader, xmlStreamWriter);
         xmlStreamWriter.close();
 
-        //System.out.println("Got:\n" + new String(baos.toByteArray(), "UTF-8"));
+        // System.out.println("Got:\n" + new String(baos.toByteArray(), "UTF-8"));
         Document document =
                 XMLUtils.createDocumentBuilder(false).parse(new ByteArrayInputStream(baos.toByteArray()));