You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by ru...@apache.org on 2005/08/25 14:22:56 UTC
svn commit: r240055 - in /webservices/axis/trunk/java/modules/security: ./
src/org/apache/axis2/security/ src/org/apache/axis2/security/handler/
src/org/apache/axis2/security/util/ test-resources/
Author: ruchithf
Date: Thu Aug 25 05:22:38 2005
New Revision: 240055
URL: http://svn.apache.org/viewcvs?rev=240055&view=rev
Log:
update to the security module: changed the WSDoAllHandler to pick the config information form the axis2.xml and service.xml and introduced mapping of the new axis2 parameters introduced due to the non-configurability module at the two flows
Added:
webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/handler/WSSHandlerConstants.java
webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/util/WSHandlerConstantsMapper.java
webservices/axis/trunk/java/modules/security/test-resources/PWCallback.java
Modified:
webservices/axis/trunk/java/modules/security/maven.xml
webservices/axis/trunk/java/modules/security/project.xml
webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/WSDoAllReceiver.java
webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/WSDoAllSender.java
webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/handler/WSDoAllHandler.java
webservices/axis/trunk/java/modules/security/test-resources/axis2.xml
Modified: webservices/axis/trunk/java/modules/security/maven.xml
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/security/maven.xml?rev=240055&r1=240054&r2=240055&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/security/maven.xml (original)
+++ webservices/axis/trunk/java/modules/security/maven.xml Thu Aug 25 05:22:38 2005
@@ -8,7 +8,16 @@
xmlns:maven="jelly:maven"
xmlns:deploy="deploy"
xmlns:ant="jelly:ant">
+
+ <preGoal name="itest:compile">
+ <u:file var="file" name="${maven.itest.src}"/>
+ <j:if test="${!file.exists()}">
+ <j:expr value="${context.setVariable('maven.itest.skip', 'true')}"/>
+ </j:if>
+ </preGoal>
+
<postGoal name="test:compile">
+
<mkdir dir="target/classes/META-INF"/>
<copy file="src/META-INF/module.xml"
tofile="target/classes/META-INF/module.xml"/>
@@ -16,19 +25,80 @@
tofile="target/axis2.xml"/>
<mkdir dir="target/modules"/>
<mkdir dir="target/modules/lib"/>
+
<copy file="${maven.repo.local}/xml-security/jars/xmlsec-1.2.1.jar" todir="target/classes/lib"/>
<copy file="${maven.repo.local}/bouncycastle/jars/bcprov-jdk13-128.jar" todir="target/classes/lib"/>
<copy file="${maven.repo.local}/opensaml/jars/opensaml-1.0.1.jar" todir="target/classes/lib"/>
+
<jar jarfile="target/security.mar" basedir="target/classes">
<include name="**/*"/>
</jar>
- <copy file="target/security.mar"
- tofile="target/modules/security.mar"/>
+ <copy file="target/security.mar" tofile="target/modules/security.mar"/>
+
</postGoal>
- <preGoal name="itest:compile">
- <u:file var="file" name="${maven.itest.src}"/>
- <j:if test="${!file.exists()}">
- <j:expr value="${context.setVariable('maven.itest.skip', 'true')}"/>
- </j:if>
+
+ <preGoal name="java:compile">
+ <j:set var="interop.dir" value="target/interop"/>
+ <j:set var="work.dir" value="${interop.dir}/work"/>
+ <j:set var="class.dir" value="${interop.dir}/classes"/>
+
+ <mkdir dir="${interop.dir}"/>
+ <mkdir dir="${work.dir}"/>
+ <mkdir dir="${class.dir}"/>
+
+ <!-- Run WSDL2Java -->
+ <java classname="org.apache.axis2.wsdl.WSDL2Java" fork="true">
+ <classpath refid="maven.dependency.classpath"/>
+ <arg value="-uri"/>
+ <arg file="interop/ping.wsdl"/>
+ <arg value="-ss"/>
+ <arg value="-o"/>
+ <arg file="${work.dir}"/>
+ <arg value="-p"/>
+ <arg value="org.apache.axis2.oasis.ping"/>
+ </java>
+
+ <!-- move/copy schema stuff into class.dir -->
+ <copy todir="${class.dir}/schema">
+ <fileset dir="${work.dir}/schema"/>
+ </copy>
+
+ <!-- copy the service impl -->
+ <copy file="interop/org/apache/axis2/oasis/ping/PingPortSkeleton.java"
+ tofile="${work.dir}/org/apache/axis2/oasis/ping/PingPortSkeleton.java" overwrite="yes"/>
+
+ <copy file="test-resources/PWCallback.java"
+ tofile="${work.dir}/org/apache/axis2/security/PWCallback.java" overwrite="yes"/>
+
+ <!-- This doesn't seem to work :-( -->
+ <!--Trying javac on this also doesn't work -->
+ <path id="src.dir" location="${work.dir}"/>
+ <addPath id="maven.src.dir" refid="src.dir"/>
</preGoal>
+
+ <!--Create the service.aar" -->
+ <postGoal name="java:compile">
+
+ <j:set var="interop.dir" value="target/interop"/>
+ <j:set var="work.dir" value="${interop.dir}/work"/>
+ <j:set var="class.dir" value="${interop.dir}/classes"/>
+
+ <!-- Create the META-INF directory -->
+ <mkdir dir="${class.dir}/META-INF"/>
+
+ <!-- copy the service.xml-->
+ <copy file="interop/service.xml"
+ tofile="${class.dir}/META-INF/service.xml" overwrite="yes"/>
+
+
+ <jar jarfile="target/interop_service.aar" basedir="target/interop/classes">
+ <include name="**/*"/>
+ </jar>
+
+ <jar jarfile="target/pwcb.mar" basedir="target/classes">
+ <include name="org/apache/axis2/security/PWCallback.class"/>
+ </jar>
+
+ </postGoal>
+
</project>
Modified: webservices/axis/trunk/java/modules/security/project.xml
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/security/project.xml?rev=240055&r1=240054&r2=240055&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/security/project.xml (original)
+++ webservices/axis/trunk/java/modules/security/project.xml Thu Aug 25 05:22:38 2005
@@ -46,9 +46,17 @@
<groupId>axis2</groupId>
<artifactId>axis2-core</artifactId>
<version>${pom.currentVersion}</version>
- </dependency>
+ </dependency>
<!-- external JARs -->
<dependency>
+ <groupId>axis</groupId>
+ <artifactId>axis-wsdl4j</artifactId>
+ <version>1.2</version>
+ <properties>
+ <module>true</module>
+ </properties>
+ </dependency>
+ <dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.0.3</version>
@@ -108,7 +116,6 @@
<module>true</module>
</properties>
</dependency>
-
<dependency>
<groupId>wss4j</groupId>
<artifactId>wss4j</artifactId>
@@ -117,7 +124,6 @@
<module>true</module>
</properties>
</dependency>
-
<dependency>
<groupId>xml-security</groupId>
<artifactId>xmlsec</artifactId>
@@ -142,7 +148,14 @@
<module>true</module>
</properties>
</dependency>
-
+ <dependency>
+ <groupId>xmlbeans</groupId>
+ <artifactId>xbean</artifactId>
+ <version>2.0.0-beta1</version>
+ <properties>
+ <module>true</module>
+ </properties>
+ </dependency>
</dependencies>
<reports/>
Modified: webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/WSDoAllReceiver.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/WSDoAllReceiver.java?rev=240055&r1=240054&r2=240055&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/WSDoAllReceiver.java (original)
+++ webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/WSDoAllReceiver.java Thu Aug 25 05:22:38 2005
@@ -48,8 +48,13 @@
public class WSDoAllReceiver extends WSDoAllHandler {
protected static Log log = LogFactory.getLog(WSDoAllReceiver.class.getName());
-
-
+
+
+ public WSDoAllReceiver() {
+ super();
+ inHandler = true;
+ }
+
public void invoke(MessageContext msgContext) throws AxisFault {
doDebug = log.isDebugEnabled();
@@ -57,7 +62,7 @@
log.debug("WSDoAllReceiver: enter invoke() ");
}
- RequestData reqData = new RequestData();
+ reqData = new RequestData();
try {
reqData.setMsgContext(msgContext);
@@ -269,6 +274,8 @@
/*
* All ok up to this point. Now construct and setup the security
* result structure. The service may fetch this and check it.
+ * Also the DoAllSender will use this in certain situations such as:
+ * USE_REQ_SIG_CERT to encrypt
*/
Vector results = null;
if ((results = (Vector) msgContext
@@ -282,6 +289,7 @@
if (doDebug) {
log.debug("WSDoAllReceiver: exit invoke()");
}
+
} catch (WSSecurityException wssEx) {
throw new AxisFault(wssEx);
} finally {
@@ -289,6 +297,6 @@
reqData = null;
}
-
}
+
}
Modified: webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/WSDoAllSender.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/WSDoAllSender.java?rev=240055&r1=240054&r2=240055&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/WSDoAllSender.java (original)
+++ webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/WSDoAllSender.java Thu Aug 25 05:22:38 2005
@@ -22,6 +22,7 @@
import org.apache.axis2.AxisFault;
import org.apache.axis2.context.MessageContext;
+import org.apache.axis2.context.OperationContext;
import org.apache.axis2.security.handler.WSDoAllHandler;
import org.apache.axis2.security.util.Axis2Util;
import org.apache.axis2.soap.SOAPEnvelope;
@@ -32,12 +33,18 @@
import org.apache.ws.security.handler.RequestData;
import org.apache.ws.security.handler.WSHandlerConstants;
import org.apache.ws.security.util.WSSecurityUtil;
+import org.apache.wsdl.WSDLConstants;
import org.w3c.dom.Document;
public class WSDoAllSender extends WSDoAllHandler {
protected static Log log = LogFactory.getLog(WSDoAllSender.class.getName());
+ public WSDoAllSender() {
+ super();
+ inHandler = false;
+ }
+
public void invoke(MessageContext msgContext) throws AxisFault {
doDebug = log.isDebugEnabled();
@@ -46,6 +53,18 @@
log.debug("WSDoAllSender: enter invoke()");
}
+ /*
+ * Copy the RECV_RESULTS over to the current message context
+ * - IF available
+ */
+ OperationContext opCtx = msgContext.getOperationContext();
+ MessageContext inMsgCtx;
+ if(opCtx != null &&
+ (inMsgCtx = opCtx.getMessageContext(WSDLConstants.MESSAGE_LABEL_IN)) != null) {
+ msgContext.setProperty(WSHandlerConstants.RECV_RESULTS,
+ inMsgCtx.getProperty(WSHandlerConstants.RECV_RESULTS));
+ }
+
RequestData reqData = new RequestData();
reqData.setNoSerialization(false);
Modified: webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/handler/WSDoAllHandler.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/handler/WSDoAllHandler.java?rev=240055&r1=240054&r2=240055&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/handler/WSDoAllHandler.java (original)
+++ webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/handler/WSDoAllHandler.java Thu Aug 25 05:22:38 2005
@@ -16,15 +16,19 @@
package org.apache.axis2.security.handler;
+import javax.xml.namespace.QName;
+
import org.apache.axis2.AxisFault;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.description.HandlerDescription;
+import org.apache.axis2.description.OperationDescription;
import org.apache.axis2.description.Parameter;
+import org.apache.axis2.description.ServiceDescription;
+import org.apache.axis2.engine.AxisConfiguration;
import org.apache.axis2.engine.Handler;
+import org.apache.ws.security.handler.RequestData;
import org.apache.ws.security.handler.WSHandler;
-import javax.xml.namespace.QName;
-
/**
* Class WSDoAllHandler
*/
@@ -44,7 +48,23 @@
* Field handlerDesc
*/
protected HandlerDescription handlerDesc;
-
+
+ /**
+ * This is used to get hold of the message context to extract the
+ * configuration information (from axis2.xml and service.xml)
+ * out of it
+ */
+ protected RequestData reqData;
+
+ /**
+ * In Axis2 the user cannot set inflow and outflow parameters
+ * Therefore we need to map the Axis2 specific inflow and outflow
+ * parameters to WSS4J params
+ *
+ * Knowledge of inhandler and out handler is used to get the mapped value
+ */
+ protected boolean inHandler;
+
/**
* Constructor AbstractHandler
*/
@@ -115,11 +135,6 @@
}
- public Object getOption(String key) {
- Parameter parameter = this.handlerDesc.getParameter(key);
- return (parameter== null)?null:parameter.getValue();
- }
-
public Object getProperty(Object msgContext, String key) {
return ((MessageContext)msgContext).getProperty(key);
}
@@ -140,5 +155,54 @@
((MessageContext)msgContext).setProperty(WSS_USERNAME,username);
}
-
+ /**
+ * Get optoin should extract the configuration
+ * values from the service.xml and/or axis2.xml
+ * Values set in the service.xml takes prority over values of the
+ * axis2.xml
+ */
+ public Object getOption(String key) {
+
+ MessageContext msgContext = (MessageContext)this.reqData.getMsgContext();
+
+ //If the parameters are set globally in the axis2.xml
+ AxisConfiguration axisConfig = msgContext.getSystemContext().getAxisConfiguration();
+
+ //If the parameters are set in the scope of the service in service.xml
+ ServiceDescription serviceDesc = msgContext.getServiceContext().getServiceConfig();
+
+ //If the parameters are set in the scope of an peration in service.xml
+ OperationDescription operationDesc = msgContext.getOperationContext().getAxisOperation();
+
+ Object value = null;
+
+ //if the operation desc is available
+ if(operationDesc != null) {
+ value = operationDesc.getParameter(key);
+ }
+
+ //If the parameter is not found in the operation desc and if the
+ //service desc is available
+ if(value == null && serviceDesc != null) {
+ value = serviceDesc.getParameter(key);
+ }
+
+ //If the parameter is not found in the service desc the look at the
+ //global config - axis config
+ if(value == null && axisConfig != null) {
+ value = axisConfig.getParameter(key);
+ }
+
+ //---------------------------------------------------------------------
+ //If value is still null this point then the user has not set the value
+
+
+ //Look in the handlerDesc for the value
+ if(value == null) {
+ Parameter parameter = this.handlerDesc.getParameter(key);
+ value = (parameter== null)?null:parameter.getValue();
+ }
+
+ return value;
+ }
}
Added: webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/handler/WSSHandlerConstants.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/handler/WSSHandlerConstants.java?rev=240055&view=auto
==============================================================================
--- webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/handler/WSSHandlerConstants.java (added)
+++ webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/handler/WSSHandlerConstants.java Thu Aug 25 05:22:38 2005
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed 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.axis2.security.handler;
+
+/**
+ *
+ * @author Ruchith Fernando (ruchith.fernando@gmail.com)
+ */
+public interface WSSHandlerConstants {
+
+ interface In {
+ public static final String ACTION = "InAction";
+ public static final String PW_CALLBACK_CLASS = "InPasswordCallbackClass";
+ public static final String SIG_PROP_FILE = "InSignaturePropFile";
+ public static final String SIG_KEY_ID = "InSignatureKeyIdentifier";
+ }
+
+ interface Out {
+ public static final String ACTION = "OutAction";
+ public static final String PW_CALLBACK_CLASS = "OutPasswordCallbackClass";
+ public static final String SIG_PROP_FILE = "OutSignaturePropFile";
+ public static final String SIG_KEY_ID = "OutSignatureKeyIdentifier";
+ }
+
+
+
+}
Added: webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/util/WSHandlerConstantsMapper.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/util/WSHandlerConstantsMapper.java?rev=240055&view=auto
==============================================================================
--- webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/util/WSHandlerConstantsMapper.java (added)
+++ webservices/axis/trunk/java/modules/security/src/org/apache/axis2/security/util/WSHandlerConstantsMapper.java Thu Aug 25 05:22:38 2005
@@ -0,0 +1,63 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed 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.axis2.security.util;
+
+import java.util.Hashtable;
+
+import org.apache.axis2.security.handler.WSSHandlerConstants;
+import org.apache.ws.security.handler.WSHandlerConstants;
+
+/**
+ *
+ *
+ * @author Ruchith Fernando (ruchith.fernando@gmail.com)
+ */
+public class WSHandlerConstantsMapper {
+
+ private static Hashtable inHandlerConstants = new Hashtable();
+
+ private static Hashtable outHandlerConstants = new Hashtable();
+
+
+ static {
+ //Mapping the in handler constants
+ inHandlerConstants.put(WSHandlerConstants.ACTION,WSSHandlerConstants.In.ACTION);
+
+
+
+ //Mapping the out handler constants
+ outHandlerConstants.put(WSHandlerConstants.ACTION, WSSHandlerConstants.Out.ACTION);
+
+
+ }
+
+ /**
+ * If the mapping is there then the mapped value will be returned
+ * Otherwise the original value will be returned since no mapping was required
+ * @param axiskey
+ * @return
+ */
+ public static String getMapping(String axiskey, boolean inHandler) {
+ String newKey = null;
+ if(inHandler) {
+ newKey = (String)inHandlerConstants.get(axiskey);
+ } else {
+ newKey = (String)outHandlerConstants.get(axiskey);
+ }
+ return (newKey == null)?axiskey:newKey;
+ }
+
+}
Added: webservices/axis/trunk/java/modules/security/test-resources/PWCallback.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/security/test-resources/PWCallback.java?rev=240055&view=auto
==============================================================================
--- webservices/axis/trunk/java/modules/security/test-resources/PWCallback.java (added)
+++ webservices/axis/trunk/java/modules/security/test-resources/PWCallback.java Thu Aug 25 05:22:38 2005
@@ -0,0 +1,174 @@
+package org.apache.axis2.security;
+
+
+import org.apache.ws.security.WSPasswordCallback;
+
+
+
+import javax.security.auth.callback.Callback;
+
+import javax.security.auth.callback.CallbackHandler;
+
+import javax.security.auth.callback.UnsupportedCallbackException;
+
+import java.io.IOException;
+
+
+
+/**
+
+ * Class PWCallback
+
+ */
+
+public class PWCallback implements CallbackHandler {
+
+
+
+ /** Field key */
+
+ private static final byte[] key = {
+
+ (byte) 0x31, (byte) 0xfd, (byte) 0xcb, (byte) 0xda, (byte) 0xfb,
+
+ (byte) 0xcd, (byte) 0x6b, (byte) 0xa8, (byte) 0xe6, (byte) 0x19,
+
+ (byte) 0xa7, (byte) 0xbf, (byte) 0x51, (byte) 0xf7, (byte) 0xc7,
+
+ (byte) 0x3e, (byte) 0x80, (byte) 0xae, (byte) 0x98, (byte) 0x51,
+
+ (byte) 0xc8, (byte) 0x51, (byte) 0x34, (byte) 0x04,
+
+ };
+
+
+
+ /*
+
+ * (non-Javadoc)
+
+ * @see javax.security.auth.callback.CallbackHandler#handle(javax.security.auth.callback.Callback[])
+
+ */
+
+
+
+ /**
+
+ * Method handle
+
+ *
+
+ * @param callbacks
+
+ * @throws java.io.IOException
+
+ * @throws javax.security.auth.callback.UnsupportedCallbackException
+
+ */
+
+ public void handle(Callback[] callbacks)
+
+ throws IOException, UnsupportedCallbackException {
+
+
+
+ for (int i = 0; i < callbacks.length; i++) {
+
+ if (callbacks[i] instanceof WSPasswordCallback) {
+
+ WSPasswordCallback pc = (WSPasswordCallback) callbacks[i];
+
+
+
+ /*
+
+ * This usage type is used only in case we received a
+
+ * username token with a password of type PasswordText or
+
+ * an unknown password type.
+
+ *
+
+ * This case the WSPasswordCallback object contains the
+
+ * identifier (aka username), the password we received, and
+
+ * the password type string to identify the type.
+
+ *
+
+ * Here we perform only a very simple check.
+
+ */
+
+ if (pc.getUsage() == WSPasswordCallback.USERNAME_TOKEN_UNKNOWN) {
+
+ if(pc.getIdentifer().equals("Ron") && pc.getPassword().equals("noR")) {
+
+ return;
+
+ }
+
+ if (pc.getPassword().equals("sirhC")) {
+
+ return;
+
+ }
+
+ throw new UnsupportedCallbackException(callbacks[i],
+
+ "check failed");
+
+ }
+
+ /*
+
+ * here call a function/method to lookup the password for
+
+ * the given identifier (e.g. a user name or keystore alias)
+
+ * e.g.: pc.setPassword(passStore.getPassword(pc.getIdentfifier))
+
+ * for Testing we supply a fixed name here.
+
+ */
+
+ if (pc.getUsage() == WSPasswordCallback.KEY_NAME) {
+
+ pc.setKey(key);
+
+ } else if(pc.getIdentifer().equals("alice")) {
+
+ pc.setPassword("password");
+
+ } else if(pc.getIdentifer().equals("bob")) {
+
+ pc.setPassword("password");
+
+ } else if(pc.getIdentifer().equals("Ron")) {
+
+ pc.setPassword("noR");
+
+ } else {
+
+ pc.setPassword("sirhC");
+
+ }
+
+ } else {
+
+ throw new UnsupportedCallbackException(callbacks[i],
+
+ "Unrecognized Callback");
+
+ }
+
+ }
+
+ }
+
+}
+
+
Modified: webservices/axis/trunk/java/modules/security/test-resources/axis2.xml
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/security/test-resources/axis2.xml?rev=240055&r1=240054&r2=240055&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/security/test-resources/axis2.xml (original)
+++ webservices/axis/trunk/java/modules/security/test-resources/axis2.xml Thu Aug 25 05:22:38 2005
@@ -4,6 +4,12 @@
<messageReceiver mep="INOUT" class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
+
+ <!-- This is only till we get the service specific parameters fixed in service.xml -->
+ <parameter name="InAction" locked="xsd:false">UsernameToken</parameter>
+ <parameter name="passwordCallbackClass" locked="xsd:false">org.apache.axis2.security.PWCallback</parameter>
+
+
<transportReceiver name="http">
</transportReceiver>
<transportSender name="http" class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
@@ -11,6 +17,7 @@
</transportSender>
<module ref="security"/>
+
<phaseOrder type="inflow">
<!-- System pre defined phases -->
<phase name="TransportIn"/>