You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fx-dev@ws.apache.org by di...@apache.org on 2004/03/06 12:53:11 UTC

cvs commit: ws-fx/wss4j/src/org/apache/ws/security/util WSSecurityUtil.java

dims        2004/03/06 03:53:11

  Modified:    wss4j/src/org/apache/ws/axis/security WSDoAllSender.java
                        package.html
               wss4j/src/org/apache/ws/axis/security/util AxisUtil.java
               wss4j/src/org/apache/ws/security WSSecurityEngine.java
               wss4j/src/org/apache/ws/security/components/crypto
                        BouncyCastle.java Merlin.java errors.properties
               wss4j/src/org/apache/ws/security/util WSSecurityUtil.java
  Log:
  Re-enable support for JDK1.3
  
  Revision  Changes    Path
  1.4       +4 -3      ws-fx/wss4j/src/org/apache/ws/axis/security/WSDoAllSender.java
  
  Index: WSDoAllSender.java
  ===================================================================
  RCS file: /home/cvs/ws-fx/wss4j/src/org/apache/ws/axis/security/WSDoAllSender.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- WSDoAllSender.java	3 Mar 2004 20:44:51 -0000	1.3
  +++ WSDoAllSender.java	6 Mar 2004 11:53:11 -0000	1.4
  @@ -36,6 +36,7 @@
   import org.apache.ws.security.message.WSSAddUsernameToken;
   import org.apache.ws.security.message.WSSignEnvelope;
   import org.apache.ws.security.util.WSSecurityUtil;
  +import org.apache.ws.security.util.StringUtil;
   import org.apache.xml.security.utils.XMLUtils;
   import org.w3c.dom.Document;
   
  @@ -432,7 +433,7 @@
   				(String) msgContext.getProperty(WSDoAllConstants.ADD_UT_ELEMENTS);
   		}
   		if (tmpS != null) {
  -			utElements = tmpS.split(" ");
  +			utElements = StringUtil.split(tmpS,' ');
   		}
   	}
   
  @@ -662,10 +663,10 @@
   	private void splitEncParts(String tmpS, Vector encryptParts)
   		throws AxisFault {
   		WSEncryptionPart encPart = null;
  -		String[] rawParts = tmpS.split(";");
  +		String[] rawParts = StringUtil.split(tmpS,';');
   
   		for (int i = 0; i < rawParts.length; i++) {
  -			String[] partDef = rawParts[i].split("}");
  +			String[] partDef = StringUtil.split(rawParts[i],'}');
   
   			if (partDef.length == 1) {
   				if (doDebug) {
  
  
  
  1.2       +1 -1      ws-fx/wss4j/src/org/apache/ws/axis/security/package.html
  
  Index: package.html
  ===================================================================
  RCS file: /home/cvs/ws-fx/wss4j/src/org/apache/ws/axis/security/package.html,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- package.html	13 Feb 2004 20:43:07 -0000	1.1
  +++ package.html	6 Mar 2004 11:53:11 -0000	1.2
  @@ -667,7 +667,7 @@
   </pre>
   The principal structure is either a 
   {@link org.apache.ws.security.WSUsernameTokenPrincipal UsernameToken} principal 
  -or a {@link javax.security.auth.x500.X500Principal X509Principal}. The 
  +or a {@link java.security.Principal X509Principal}. The 
   princpals contain the names plus other information of the verified username
   token or signature certificate.
    
  
  
  
  1.2       +2 -1      ws-fx/wss4j/src/org/apache/ws/axis/security/util/AxisUtil.java
  
  Index: AxisUtil.java
  ===================================================================
  RCS file: /home/cvs/ws-fx/wss4j/src/org/apache/ws/axis/security/util/AxisUtil.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AxisUtil.java	13 Feb 2004 20:43:07 -0000	1.1
  +++ AxisUtil.java	6 Mar 2004 11:53:11 -0000	1.2
  @@ -20,6 +20,7 @@
   import org.apache.axis.AxisFault;
   import org.apache.ws.axis.security.WSDoAllConstants;
   import org.apache.ws.security.WSConstants;
  +import org.apache.ws.security.util.StringUtil;
   import org.apache.xml.security.c14n.Canonicalizer;
   import org.w3c.dom.Document;
   
  @@ -118,7 +119,7 @@
   		if (action == null) {
   			return doAction;
   		}
  -		String single[] = action.split(" ");
  +		String single[] = StringUtil.split(action,' ');
   		for (int i = 0; i < single.length; i++) {
   			if (single[i].equals(WSDoAllConstants.NO_SECURITY)) {
   				doAction = WSConstants.NO_SECURITY;
  
  
  
  1.4       +2 -3      ws-fx/wss4j/src/org/apache/ws/security/WSSecurityEngine.java
  
  Index: WSSecurityEngine.java
  ===================================================================
  RCS file: /home/cvs/ws-fx/wss4j/src/org/apache/ws/security/WSSecurityEngine.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- WSSecurityEngine.java	29 Feb 2004 12:30:35 -0000	1.3
  +++ WSSecurityEngine.java	6 Mar 2004 11:53:11 -0000	1.4
  @@ -48,7 +48,6 @@
   import javax.crypto.SecretKey;
   import javax.security.auth.callback.Callback;
   import javax.security.auth.callback.CallbackHandler;
  -import javax.security.auth.x500.X500Principal;
   import javax.xml.namespace.QName;
   import java.io.ByteArrayInputStream;
   import java.lang.reflect.Constructor;
  @@ -406,7 +405,7 @@
        * 					principal for further authentication or authorization. 
        * @throws Exception 
        */
  -    protected X500Principal verifyXMLSignature(XMLSignature sig, Crypto crypto) throws Exception {
  +    protected Principal verifyXMLSignature(XMLSignature sig, Crypto crypto) throws Exception {
           if (doDebug) {
   			log.debug("Verify XML Signature");
           }
  @@ -456,7 +455,7 @@
   					", prepare-cert= " + (t1-t0) +
   					", verify= " + (t2-t1));
   				}        			
  -				return certs[0].getSubjectX500Principal();
  +				return certs[0].getSubjectDN();
   			}
           }
   		throw new WSSecurityException(WSSecurityException.FAILED_CHECK);
  
  
  
  1.3       +1 -1      ws-fx/wss4j/src/org/apache/ws/security/components/crypto/BouncyCastle.java
  
  Index: BouncyCastle.java
  ===================================================================
  RCS file: /home/cvs/ws-fx/wss4j/src/org/apache/ws/security/components/crypto/BouncyCastle.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- BouncyCastle.java	29 Feb 2004 12:30:35 -0000	1.2
  +++ BouncyCastle.java	6 Mar 2004 11:53:11 -0000	1.3
  @@ -283,7 +283,7 @@
                   try {
                       return Base64.decode(buf.toString());
                   } catch (Base64DecodingException e) {
  -                    throw new Exception("Unable to decode Base64 encoded data", e);
  +                    throw new CredentialException(CredentialException.DEFECTIVE, "badBase64Data", e);
                   }
               }
               buf.append(s);
  
  
  
  1.4       +2 -1      ws-fx/wss4j/src/org/apache/ws/security/components/crypto/Merlin.java
  
  Index: Merlin.java
  ===================================================================
  RCS file: /home/cvs/ws-fx/wss4j/src/org/apache/ws/security/components/crypto/Merlin.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- Merlin.java	29 Feb 2004 12:30:35 -0000	1.3
  +++ Merlin.java	6 Mar 2004 11:53:11 -0000	1.4
  @@ -19,6 +19,7 @@
   
   import org.apache.commons.logging.Log;
   import org.apache.commons.logging.LogFactory;
  +import org.apache.ws.security.util.StringUtil;
   
   import java.io.ByteArrayInputStream;
   import java.io.File;
  @@ -189,7 +190,7 @@
   
   
   	private String[] splitAndTrim(String inString) {
  -		String result[] = inString.split(",");
  +		String result[] = StringUtil.split(inString,',');
   		for (int i = 0; i < result.length; i++) {
   			result[i] = result[i].trim();
   		}
  
  
  
  1.3       +1 -0      ws-fx/wss4j/src/org/apache/ws/security/components/crypto/errors.properties
  
  Index: errors.properties
  ===================================================================
  RCS file: /home/cvs/ws-fx/wss4j/src/org/apache/ws/security/components/crypto/errors.properties,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- errors.properties	29 Feb 2004 12:30:35 -0000	1.2
  +++ errors.properties	6 Mar 2004 11:53:11 -0000	1.3
  @@ -15,3 +15,4 @@
   noCerts00 = No certificates loaded
   noKey00 = No private key loaded
   noSKIHandling = Problem with SKI information: {0}
  +badBase64Data = Unable to decode Base64 encoded data
  \ No newline at end of file
  
  
  
  1.3       +1 -1      ws-fx/wss4j/src/org/apache/ws/security/util/WSSecurityUtil.java
  
  Index: WSSecurityUtil.java
  ===================================================================
  RCS file: /home/cvs/ws-fx/wss4j/src/org/apache/ws/security/util/WSSecurityUtil.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- WSSecurityUtil.java	26 Feb 2004 12:59:43 -0000	1.2
  +++ WSSecurityUtil.java	6 Mar 2004 11:53:11 -0000	1.3
  @@ -545,7 +545,7 @@
           try {
               return XPathAPI.selectSingleNode(contextNode, xpath, nsContext);
           } catch (TransformerException e) {
  -            throw new Exception("Unable to resolve XPath", e);
  +            throw new Exception("Unable to resolve XPath");
           }
       }
   
  
  
  

Re: cvs commit: ws-fx/wss4j/src/org/apache/ws/security/util WSSecurityUtil.java

Posted by Davanum Srinivas <di...@apache.org>.
Werner,

Unfortunately, some production App Servers are still stuck on JDK 1.3 and will take time to
upgrade. We should at least let the code compile in JDK1.3 and usable with the BouncyCastle crypto
for a little while. No need to make the tests run against it though.

thanks,
dims

--- Werner Dittmann <We...@t-online.de> wrote:
> All,
> 
> is it really necessary to support JDK1.3 - it's outdated quite a long time,
> isnt it?
> 
> Dims, what are the differneces in the Principal and X509 handling? Haven't
> checked it
> in every detail yet.
> 
> Regards,
> Werner
> 
> ----- Original Message -----
> From: <di...@apache.org>
> To: <ws...@apache.org>
> Sent: Saturday, March 06, 2004 12:53 PM
> Subject: cvs commit: ws-fx/wss4j/src/org/apache/ws/security/util
> WSSecurityUtil.java
> 
> 
> > dims        2004/03/06 03:53:11
> >
> >   Modified:    wss4j/src/org/apache/ws/axis/security WSDoAllSender.java
> >                         package.html
> >                wss4j/src/org/apache/ws/axis/security/util AxisUtil.java
> >                wss4j/src/org/apache/ws/security WSSecurityEngine.java
> >                wss4j/src/org/apache/ws/security/components/crypto
> >                         BouncyCastle.java Merlin.java errors.properties
> >                wss4j/src/org/apache/ws/security/util WSSecurityUtil.java
> >   Log:
> >   Re-enable support for JDK1.3
> >
> >   Revision  Changes    Path
> >   1.4       +4 -3
> ws-fx/wss4j/src/org/apache/ws/axis/security/WSDoAllSender.java
> >
> >   Index: WSDoAllSender.java
> >   ===================================================================
> >   RCS file:
> /home/cvs/ws-fx/wss4j/src/org/apache/ws/axis/security/WSDoAllSender.java,v
> >   retrieving revision 1.3
> >   retrieving revision 1.4
> >   diff -u -r1.3 -r1.4
> >   --- WSDoAllSender.java 3 Mar 2004 20:44:51 -0000 1.3
> >   +++ WSDoAllSender.java 6 Mar 2004 11:53:11 -0000 1.4
> >   @@ -36,6 +36,7 @@
> >    import org.apache.ws.security.message.WSSAddUsernameToken;
> >    import org.apache.ws.security.message.WSSignEnvelope;
> >    import org.apache.ws.security.util.WSSecurityUtil;
> >   +import org.apache.ws.security.util.StringUtil;
> >    import org.apache.xml.security.utils.XMLUtils;
> >    import org.w3c.dom.Document;
> >
> >   @@ -432,7 +433,7 @@
> >    (String) msgContext.getProperty(WSDoAllConstants.ADD_UT_ELEMENTS);
> >    }
> >    if (tmpS != null) {
> >   - utElements = tmpS.split(" ");
> >   + utElements = StringUtil.split(tmpS,' ');
> >    }
> >    }
> >
> >   @@ -662,10 +663,10 @@
> >    private void splitEncParts(String tmpS, Vector encryptParts)
> >    throws AxisFault {
> >    WSEncryptionPart encPart = null;
> >   - String[] rawParts = tmpS.split(";");
> >   + String[] rawParts = StringUtil.split(tmpS,';');
> >
> >    for (int i = 0; i < rawParts.length; i++) {
> >   - String[] partDef = rawParts[i].split("}");
> >   + String[] partDef = StringUtil.split(rawParts[i],'}');
> >
> >    if (partDef.length == 1) {
> >    if (doDebug) {
> >
> >
> >
> >   1.2       +1 -1
> ws-fx/wss4j/src/org/apache/ws/axis/security/package.html
> >
> >   Index: package.html
> >   ===================================================================
> >   RCS file:
> /home/cvs/ws-fx/wss4j/src/org/apache/ws/axis/security/package.html,v
> >   retrieving revision 1.1
> >   retrieving revision 1.2
> >   diff -u -r1.1 -r1.2
> >   --- package.html 13 Feb 2004 20:43:07 -0000 1.1
> >   +++ package.html 6 Mar 2004 11:53:11 -0000 1.2
> >   @@ -667,7 +667,7 @@
> >    </pre>
> >    The principal structure is either a
> >    {@link org.apache.ws.security.WSUsernameTokenPrincipal UsernameToken}
> principal
> >   -or a {@link javax.security.auth.x500.X500Principal X509Principal}. The
> >   +or a {@link java.security.Principal X509Principal}. The
> >    princpals contain the names plus other information of the verified
> username
> >    token or signature certificate.
> >
> >
> >
> >
> >   1.2       +2 -1
> ws-fx/wss4j/src/org/apache/ws/axis/security/util/AxisUtil.java
> >
> >   Index: AxisUtil.java
> >   ===================================================================
> >   RCS file:
> /home/cvs/ws-fx/wss4j/src/org/apache/ws/axis/security/util/AxisUtil.java,v
> >   retrieving revision 1.1
> >   retrieving revision 1.2
> >   diff -u -r1.1 -r1.2
> >   --- AxisUtil.java 13 Feb 2004 20:43:07 -0000 1.1
> >   +++ AxisUtil.java 6 Mar 2004 11:53:11 -0000 1.2
> >   @@ -20,6 +20,7 @@
> >    import org.apache.axis.AxisFault;
> >    import org.apache.ws.axis.security.WSDoAllConstants;
> >    import org.apache.ws.security.WSConstants;
> >   +import org.apache.ws.security.util.StringUtil;
> >    import org.apache.xml.security.c14n.Canonicalizer;
> >    import org.w3c.dom.Document;
> >
> >   @@ -118,7 +119,7 @@
> >    if (action == null) {
> >    return doAction;
> >    }
> >   - String single[] = action.split(" ");
> >   + String single[] = StringUtil.split(action,' ');
> >    for (int i = 0; i < single.length; i++) {
> >    if (single[i].equals(WSDoAllConstants.NO_SECURITY)) {
> >    doAction = WSConstants.NO_SECURITY;
> >
> >
> >
> >   1.4       +2 -3
> ws-fx/wss4j/src/org/apache/ws/security/WSSecurityEngine.java
> >
> >   Index: WSSecurityEngine.java
> >   ===================================================================
> >   RCS file:
> /home/cvs/ws-fx/wss4j/src/org/apache/ws/security/WSSecurityEngine.java,v
> >   retrieving revision 1.3
> >   retrieving revision 1.4
> >   diff -u -r1.3 -r1.4
> >   --- WSSecurityEngine.java 29 Feb 2004 12:30:35 -0000 1.3
> >   +++ WSSecurityEngine.java 6 Mar 2004 11:53:11 -0000 1.4
> >   @@ -48,7 +48,6 @@
> >    import javax.crypto.SecretKey;
> >    import javax.security.auth.callback.Callback;
> >    import javax.security.auth.callback.CallbackHandler;
> >   -import javax.security.auth.x500.X500Principal;
> >    import javax.xml.namespace.QName;
> >    import java.io.ByteArrayInputStream;
> >    import java.lang.reflect.Constructor;
> >   @@ -406,7 +405,7 @@
> >         * principal for further authentication or authorization.
> >         * @throws Exception
> >         */
> >   -    protected X500Principal verifyXMLSignature(XMLSignature sig, Crypto
> crypto) throws Exception {
> >   +    protected Principal verifyXMLSignature(XMLSignature sig, Crypto
> crypto) throws Exception {
> >            if (doDebug) {
> >    log.debug("Verify XML Signature");
> >            }
> >   @@ -456,7 +455,7 @@
> >    ", prepare-cert= " + (t1-t0) +
> >    ", verify= " + (t2-t1));
> >    }
> >   - return certs[0].getSubjectX500Principal();
> >   + return certs[0].getSubjectDN();
> >    }
> >            }
> >    throw new WSSecurityException(WSSecurityException.FAILED_CHECK);
> >
> >
> >
> >   1.3       +1 -1
> ws-fx/wss4j/src/org/apache/ws/security/components/crypto/BouncyCastle.java
> >
> >   Index: BouncyCastle.java
> >   ===================================================================
> >   RCS file:
> /home/cvs/ws-fx/wss4j/src/org/apache/ws/security/components/crypto/BouncyCas
> tle.java,v
> >   retrieving revision 1.2
> >   retrieving revision 1.3
> >   diff -u -r1.2 -r1.3
> >   --- BouncyCastle.java 29 Feb 2004 12:30:35 -0000 1.2
> >   +++ BouncyCastle.java 6 Mar 2004 11:53:11 -0000 1.3
> >   @@ -283,7 +283,7 @@
> >                    try {
> >                        return Base64.decode(buf.toString());
> >                    } catch (Base64DecodingException e) {
> >   -                    throw new Exception("Unable to decode Base64
> encoded data", e);
> >   +                    throw new
> CredentialException(CredentialException.DEFECTIVE, "badBase64Data", e);
> >                    }
> 
=== message truncated ===


=====
Davanum Srinivas - http://webservices.apache.org/~dims/

Re: cvs commit: ws-fx/wss4j/src/org/apache/ws/security/util WSSecurityUtil.java

Posted by Werner Dittmann <We...@t-online.de>.
All,

is it really necessary to support JDK1.3 - it's outdated quite a long time,
isnt it?

Dims, what are the differneces in the Principal and X509 handling? Haven't
checked it
in every detail yet.

Regards,
Werner

----- Original Message -----
From: <di...@apache.org>
To: <ws...@apache.org>
Sent: Saturday, March 06, 2004 12:53 PM
Subject: cvs commit: ws-fx/wss4j/src/org/apache/ws/security/util
WSSecurityUtil.java


> dims        2004/03/06 03:53:11
>
>   Modified:    wss4j/src/org/apache/ws/axis/security WSDoAllSender.java
>                         package.html
>                wss4j/src/org/apache/ws/axis/security/util AxisUtil.java
>                wss4j/src/org/apache/ws/security WSSecurityEngine.java
>                wss4j/src/org/apache/ws/security/components/crypto
>                         BouncyCastle.java Merlin.java errors.properties
>                wss4j/src/org/apache/ws/security/util WSSecurityUtil.java
>   Log:
>   Re-enable support for JDK1.3
>
>   Revision  Changes    Path
>   1.4       +4 -3
ws-fx/wss4j/src/org/apache/ws/axis/security/WSDoAllSender.java
>
>   Index: WSDoAllSender.java
>   ===================================================================
>   RCS file:
/home/cvs/ws-fx/wss4j/src/org/apache/ws/axis/security/WSDoAllSender.java,v
>   retrieving revision 1.3
>   retrieving revision 1.4
>   diff -u -r1.3 -r1.4
>   --- WSDoAllSender.java 3 Mar 2004 20:44:51 -0000 1.3
>   +++ WSDoAllSender.java 6 Mar 2004 11:53:11 -0000 1.4
>   @@ -36,6 +36,7 @@
>    import org.apache.ws.security.message.WSSAddUsernameToken;
>    import org.apache.ws.security.message.WSSignEnvelope;
>    import org.apache.ws.security.util.WSSecurityUtil;
>   +import org.apache.ws.security.util.StringUtil;
>    import org.apache.xml.security.utils.XMLUtils;
>    import org.w3c.dom.Document;
>
>   @@ -432,7 +433,7 @@
>    (String) msgContext.getProperty(WSDoAllConstants.ADD_UT_ELEMENTS);
>    }
>    if (tmpS != null) {
>   - utElements = tmpS.split(" ");
>   + utElements = StringUtil.split(tmpS,' ');
>    }
>    }
>
>   @@ -662,10 +663,10 @@
>    private void splitEncParts(String tmpS, Vector encryptParts)
>    throws AxisFault {
>    WSEncryptionPart encPart = null;
>   - String[] rawParts = tmpS.split(";");
>   + String[] rawParts = StringUtil.split(tmpS,';');
>
>    for (int i = 0; i < rawParts.length; i++) {
>   - String[] partDef = rawParts[i].split("}");
>   + String[] partDef = StringUtil.split(rawParts[i],'}');
>
>    if (partDef.length == 1) {
>    if (doDebug) {
>
>
>
>   1.2       +1 -1
ws-fx/wss4j/src/org/apache/ws/axis/security/package.html
>
>   Index: package.html
>   ===================================================================
>   RCS file:
/home/cvs/ws-fx/wss4j/src/org/apache/ws/axis/security/package.html,v
>   retrieving revision 1.1
>   retrieving revision 1.2
>   diff -u -r1.1 -r1.2
>   --- package.html 13 Feb 2004 20:43:07 -0000 1.1
>   +++ package.html 6 Mar 2004 11:53:11 -0000 1.2
>   @@ -667,7 +667,7 @@
>    </pre>
>    The principal structure is either a
>    {@link org.apache.ws.security.WSUsernameTokenPrincipal UsernameToken}
principal
>   -or a {@link javax.security.auth.x500.X500Principal X509Principal}. The
>   +or a {@link java.security.Principal X509Principal}. The
>    princpals contain the names plus other information of the verified
username
>    token or signature certificate.
>
>
>
>
>   1.2       +2 -1
ws-fx/wss4j/src/org/apache/ws/axis/security/util/AxisUtil.java
>
>   Index: AxisUtil.java
>   ===================================================================
>   RCS file:
/home/cvs/ws-fx/wss4j/src/org/apache/ws/axis/security/util/AxisUtil.java,v
>   retrieving revision 1.1
>   retrieving revision 1.2
>   diff -u -r1.1 -r1.2
>   --- AxisUtil.java 13 Feb 2004 20:43:07 -0000 1.1
>   +++ AxisUtil.java 6 Mar 2004 11:53:11 -0000 1.2
>   @@ -20,6 +20,7 @@
>    import org.apache.axis.AxisFault;
>    import org.apache.ws.axis.security.WSDoAllConstants;
>    import org.apache.ws.security.WSConstants;
>   +import org.apache.ws.security.util.StringUtil;
>    import org.apache.xml.security.c14n.Canonicalizer;
>    import org.w3c.dom.Document;
>
>   @@ -118,7 +119,7 @@
>    if (action == null) {
>    return doAction;
>    }
>   - String single[] = action.split(" ");
>   + String single[] = StringUtil.split(action,' ');
>    for (int i = 0; i < single.length; i++) {
>    if (single[i].equals(WSDoAllConstants.NO_SECURITY)) {
>    doAction = WSConstants.NO_SECURITY;
>
>
>
>   1.4       +2 -3
ws-fx/wss4j/src/org/apache/ws/security/WSSecurityEngine.java
>
>   Index: WSSecurityEngine.java
>   ===================================================================
>   RCS file:
/home/cvs/ws-fx/wss4j/src/org/apache/ws/security/WSSecurityEngine.java,v
>   retrieving revision 1.3
>   retrieving revision 1.4
>   diff -u -r1.3 -r1.4
>   --- WSSecurityEngine.java 29 Feb 2004 12:30:35 -0000 1.3
>   +++ WSSecurityEngine.java 6 Mar 2004 11:53:11 -0000 1.4
>   @@ -48,7 +48,6 @@
>    import javax.crypto.SecretKey;
>    import javax.security.auth.callback.Callback;
>    import javax.security.auth.callback.CallbackHandler;
>   -import javax.security.auth.x500.X500Principal;
>    import javax.xml.namespace.QName;
>    import java.io.ByteArrayInputStream;
>    import java.lang.reflect.Constructor;
>   @@ -406,7 +405,7 @@
>         * principal for further authentication or authorization.
>         * @throws Exception
>         */
>   -    protected X500Principal verifyXMLSignature(XMLSignature sig, Crypto
crypto) throws Exception {
>   +    protected Principal verifyXMLSignature(XMLSignature sig, Crypto
crypto) throws Exception {
>            if (doDebug) {
>    log.debug("Verify XML Signature");
>            }
>   @@ -456,7 +455,7 @@
>    ", prepare-cert= " + (t1-t0) +
>    ", verify= " + (t2-t1));
>    }
>   - return certs[0].getSubjectX500Principal();
>   + return certs[0].getSubjectDN();
>    }
>            }
>    throw new WSSecurityException(WSSecurityException.FAILED_CHECK);
>
>
>
>   1.3       +1 -1
ws-fx/wss4j/src/org/apache/ws/security/components/crypto/BouncyCastle.java
>
>   Index: BouncyCastle.java
>   ===================================================================
>   RCS file:
/home/cvs/ws-fx/wss4j/src/org/apache/ws/security/components/crypto/BouncyCas
tle.java,v
>   retrieving revision 1.2
>   retrieving revision 1.3
>   diff -u -r1.2 -r1.3
>   --- BouncyCastle.java 29 Feb 2004 12:30:35 -0000 1.2
>   +++ BouncyCastle.java 6 Mar 2004 11:53:11 -0000 1.3
>   @@ -283,7 +283,7 @@
>                    try {
>                        return Base64.decode(buf.toString());
>                    } catch (Base64DecodingException e) {
>   -                    throw new Exception("Unable to decode Base64
encoded data", e);
>   +                    throw new
CredentialException(CredentialException.DEFECTIVE, "badBase64Data", e);
>                    }
>                }
>                buf.append(s);
>
>
>
>   1.4       +2 -1
ws-fx/wss4j/src/org/apache/ws/security/components/crypto/Merlin.java
>
>   Index: Merlin.java
>   ===================================================================
>   RCS file:
/home/cvs/ws-fx/wss4j/src/org/apache/ws/security/components/crypto/Merlin.ja
va,v
>   retrieving revision 1.3
>   retrieving revision 1.4
>   diff -u -r1.3 -r1.4
>   --- Merlin.java 29 Feb 2004 12:30:35 -0000 1.3
>   +++ Merlin.java 6 Mar 2004 11:53:11 -0000 1.4
>   @@ -19,6 +19,7 @@
>
>    import org.apache.commons.logging.Log;
>    import org.apache.commons.logging.LogFactory;
>   +import org.apache.ws.security.util.StringUtil;
>
>    import java.io.ByteArrayInputStream;
>    import java.io.File;
>   @@ -189,7 +190,7 @@
>
>
>    private String[] splitAndTrim(String inString) {
>   - String result[] = inString.split(",");
>   + String result[] = StringUtil.split(inString,',');
>    for (int i = 0; i < result.length; i++) {
>    result[i] = result[i].trim();
>    }
>
>
>
>   1.3       +1 -0
ws-fx/wss4j/src/org/apache/ws/security/components/crypto/errors.properties
>
>   Index: errors.properties
>   ===================================================================
>   RCS file:
/home/cvs/ws-fx/wss4j/src/org/apache/ws/security/components/crypto/errors.pr
operties,v
>   retrieving revision 1.2
>   retrieving revision 1.3
>   diff -u -r1.2 -r1.3
>   --- errors.properties 29 Feb 2004 12:30:35 -0000 1.2
>   +++ errors.properties 6 Mar 2004 11:53:11 -0000 1.3
>   @@ -15,3 +15,4 @@
>    noCerts00 = No certificates loaded
>    noKey00 = No private key loaded
>    noSKIHandling = Problem with SKI information: {0}
>   +badBase64Data = Unable to decode Base64 encoded data
>   \ No newline at end of file
>
>
>
>   1.3       +1 -1
ws-fx/wss4j/src/org/apache/ws/security/util/WSSecurityUtil.java
>
>   Index: WSSecurityUtil.java
>   ===================================================================
>   RCS file:
/home/cvs/ws-fx/wss4j/src/org/apache/ws/security/util/WSSecurityUtil.java,v
>   retrieving revision 1.2
>   retrieving revision 1.3
>   diff -u -r1.2 -r1.3
>   --- WSSecurityUtil.java 26 Feb 2004 12:59:43 -0000 1.2
>   +++ WSSecurityUtil.java 6 Mar 2004 11:53:11 -0000 1.3
>   @@ -545,7 +545,7 @@
>            try {
>                return XPathAPI.selectSingleNode(contextNode, xpath,
nsContext);
>            } catch (TransformerException e) {
>   -            throw new Exception("Unable to resolve XPath", e);
>   +            throw new Exception("Unable to resolve XPath");
>            }
>        }
>
>
>
>