werner 2005/05/21 12:41:42
Modified: wss4j/src/org/apache/ws/axis/security WSDoAllSender.java
Log:
applied patch for JIRA WSFX-49, flexible handling of
SAML property file to be in synch with JAX-RPC handler.
Revision Changes Path
1.30 +16 -21
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.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- WSDoAllSender.java 16 May 2005 09:32:47 -0000 1.29
+++ WSDoAllSender.java 21 May 2005 19:41:42 -0000 1.30
@@ -52,6 +52,7 @@
import javax.security.auth.callback.Callback;
import javax.security.auth.callback.CallbackHandler;
+import javax.xml.rpc.JAXRPCException;
import java.io.ByteArrayOutputStream;
import java.io.UnsupportedEncodingException;
@@ -519,15 +520,7 @@
private void performSTAction(int actionToDo, boolean mu, Document doc,
RequestData reqData)
throws AxisFault {
WSSAddSAMLToken builder = new WSSAddSAMLToken(reqData.actor, mu);
-
- String samlPropFile = null;
- if ((samlPropFile =
- (String) getOption(WSHandlerConstants.SAML_PROP_FILE))
- == null) {
- samlPropFile =
- (String)
reqData.msgContext.getProperty(WSHandlerConstants.SAML_PROP_FILE);
- }
- SAMLIssuer saml = SAMLIssuerFactory.getInstance(samlPropFile);
+ SAMLIssuer saml = loadSamlIssuer(reqData);
saml.setUsername(reqData.username);
SAMLAssertion assertion = saml.newAssertion();
@@ -537,19 +530,9 @@
private void performST_SIGNAction(int actionToDo, boolean mu, Document
doc, RequestData reqData)
throws AxisFault {
- String samlPropFile = null;
- if ((samlPropFile =
- (String) getOption(WSHandlerConstants.SAML_PROP_FILE))
- == null) {
- samlPropFile =
- (String)
reqData.msgContext.getProperty(WSHandlerConstants.SAML_PROP_FILE);
- }
Crypto crypto = null;
- try {
- crypto = loadSignatureCrypto(reqData);
- } catch (AxisFault ex) {
- }
- SAMLIssuer saml = SAMLIssuerFactory.getInstance(samlPropFile);
+ crypto = loadSignatureCrypto(reqData);
+ SAMLIssuer saml = loadSamlIssuer(reqData);
saml.setUsername(reqData.username);
saml.setUserCrypto(crypto);
saml.setInstanceDoc(doc);
@@ -672,6 +655,18 @@
return crypto;
}
+ protected SAMLIssuer loadSamlIssuer(RequestData reqData) throws
JAXRPCException{
+ String samlPropFile = null;
+
+ if ((samlPropFile =
+ (String) getOption(WSHandlerConstants.SAML_PROP_FILE))
+ == null) {
+ samlPropFile =
+ (String)
reqData.msgContext.getProperty(WSHandlerConstants.SAML_PROP_FILE);
+ }
+ return SAMLIssuerFactory.getInstance(samlPropFile);
+ }
+
private void decodeUTParameter(RequestData reqData) throws AxisFault {
if ((reqData.pwType = (String)
getOption(WSHandlerConstants.PASSWORD_TYPE))
== null) {