Author: coheigea
Date: Wed Oct 20 10:56:28 2010
New Revision: 1025489

URL: http://svn.apache.org/viewvc?rev=1025489&view=rev
Log:
Added a Security Provider for the STR Transform
 - The STR Transform is now registered via a provider, and not against the 
XMLDSig provider
 - This fixes the last JDK 1.6 test failures on trunk.

Added:
    
webservices/wss4j/trunk/src/org/apache/ws/security/transform/STRTransformProvider.java
Modified:
    webservices/wss4j/trunk/src/org/apache/ws/security/WSSConfig.java
    
webservices/wss4j/trunk/src/org/apache/ws/security/saml/WSSecSignatureSAML.java

Modified: webservices/wss4j/trunk/src/org/apache/ws/security/WSSConfig.java
URL: 
http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/WSSConfig.java?rev=1025489&r1=1025488&r2=1025489&view=diff
==============================================================================
--- webservices/wss4j/trunk/src/org/apache/ws/security/WSSConfig.java (original)
+++ webservices/wss4j/trunk/src/org/apache/ws/security/WSSConfig.java Wed Oct 
20 10:56:28 2010
@@ -28,7 +28,6 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.ws.security.action.Action;
 import org.apache.ws.security.processor.Processor;
-import org.apache.ws.security.transform.STRTransform;
 import org.apache.ws.security.util.Loader;
 import org.apache.ws.security.util.UUIDGenerator;
 
@@ -291,16 +290,8 @@ public class WSSConfig {
             org.apache.xml.security.Init.init();
             if (addJceProviders) {
                 addJceProvider("BC", 
"org.bouncycastle.jce.provider.BouncyCastleProvider");
-                String xmlDSigName = 
-                    addJceProvider("XMLDSig", 
"org.jcp.xml.dsig.internal.dom.XMLDSigRI");
-                if (xmlDSigName != null) {
-                    java.security.Provider provider =
-                        java.security.Security.getProvider(xmlDSigName);
-                    provider.put(
-                        "TransformService." + STRTransform.TRANSFORM_URI,
-                        "org.apache.ws.security.transform.STRTransform"
-                    );
-                }
+                addJceProvider("XMLDSig", 
"org.jcp.xml.dsig.internal.dom.XMLDSigRI");
+                addJceProvider("STRTransform", 
"org.apache.ws.security.transform.STRTransformProvider");
             }
             
             staticallyInitialized = true;

Modified: 
webservices/wss4j/trunk/src/org/apache/ws/security/saml/WSSecSignatureSAML.java
URL: 
http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/saml/WSSecSignatureSAML.java?rev=1025489&r1=1025488&r2=1025489&view=diff
==============================================================================
--- 
webservices/wss4j/trunk/src/org/apache/ws/security/saml/WSSecSignatureSAML.java 
(original)
+++ 
webservices/wss4j/trunk/src/org/apache/ws/security/saml/WSSecSignatureSAML.java 
Wed Oct 20 10:56:28 2010
@@ -27,6 +27,7 @@ import org.apache.ws.security.WSDocInfoS
 import org.apache.ws.security.WSEncryptionPart;
 import org.apache.ws.security.WSSecurityException;
 import org.apache.ws.security.components.crypto.Crypto;
+import org.apache.ws.security.message.DOMURIDereferencer;
 import org.apache.ws.security.message.WSSecHeader;
 import org.apache.ws.security.message.WSSecSignature;
 import org.apache.ws.security.message.token.Reference;
@@ -48,6 +49,7 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.Vector;
 
+import javax.xml.crypto.URIDereferencer;
 import javax.xml.crypto.XMLStructure;
 import javax.xml.crypto.dom.DOMStructure;
 import javax.xml.crypto.dsig.SignatureMethod;
@@ -527,6 +529,9 @@ public class WSSecSignatureSAML extends 
                     WSConstants.C14N_EXCL_OMIT_COMMENTS_PREFIX
                 );
             }
+            URIDereferencer dereferencer = new DOMURIDereferencer();
+            ((DOMURIDereferencer)dereferencer).setWsDocInfo(wsDocInfo);
+            signContext.setURIDereferencer(new DOMURIDereferencer());
             sig.sign(signContext);
             
             signatureValue = sig.getSignatureValue().getValue();

Added: 
webservices/wss4j/trunk/src/org/apache/ws/security/transform/STRTransformProvider.java
URL: 
http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/transform/STRTransformProvider.java?rev=1025489&view=auto
==============================================================================
--- 
webservices/wss4j/trunk/src/org/apache/ws/security/transform/STRTransformProvider.java
 (added)
+++ 
webservices/wss4j/trunk/src/org/apache/ws/security/transform/STRTransformProvider.java
 Wed Oct 20 10:56:28 2010
@@ -0,0 +1,37 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.ws.security.transform;
+
+import java.security.Provider;
+
+/**
+ * A provider for the STR Transform.
+ */
+public class STRTransformProvider extends Provider {
+
+   public STRTransformProvider() {
+       super("STRTransform", 1.6, "Security Token Reference Transform 
Provider");
+       put(
+           (String)"TransformService." + STRTransform.TRANSFORM_URI, 
+           "org.apache.ws.security.transform.STRTransform"
+       );
+       put((String)"TransformService." + STRTransform.TRANSFORM_URI + " 
MechanismType", "DOM");
+   }
+}



---------------------------------------------------------------------
To unsubscribe, e-mail: wss4j-dev-unsubscr...@ws.apache.org
For additional commands, e-mail: wss4j-dev-h...@ws.apache.org

Reply via email to