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