Author: chamikara
Date: Thu Sep  7 00:04:35 2006
New Revision: 440999

URL: http://svn.apache.org/viewvc?view=rev&rev=440999
Log:
Patch from Matt on security support for the WSRM 1.1 spec.

Modified:
    webservices/sandesha/trunk/java/config/module.xml
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/MsgInitializer.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SpecSpecificConstants.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/RMElements.java
    webservices/sandesha/trunk/java/test-resources/test.module.xml
    
webservices/sandesha/trunk/java/test/src/org/apache/sandesha2/security/SecurityTest.java
    
webservices/sandesha/trunk/java/test/src/org/apache/sandesha2/security/UnitTestSecurityManager.java

Modified: webservices/sandesha/trunk/java/config/module.xml
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/config/module.xml?view=diff&rev=440999&r1=440998&r2=440999
==============================================================================
--- webservices/sandesha/trunk/java/config/module.xml (original)
+++ webservices/sandesha/trunk/java/config/module.xml Thu Sep  7 00:04:35 2006
@@ -45,7 +45,7 @@
         
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/SequenceAcknowledgement</actionMapping>
         
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequenceResponse</actionMapping>
 
-        <!-- namespaces for the 2005-10 spec -->
+        <!-- namespaces for the 2006-08 spec -->
         
         
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/SequenceAcknowledgement</actionMapping>
         
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/CreateSequenceResponse</actionMapping>
@@ -58,7 +58,7 @@
         <!-- namespaces for the 2005-02 spec -->
         
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence</actionMapping>
 
-        <!-- namespaces for the 2005-10 spec -->
+        <!-- namespaces for the 2006-08 spec -->
         
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/CreateSequence</actionMapping>
         
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/TerminateSequence</actionMapping>
         
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/CloseSequence</actionMapping>

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java?view=diff&rev=440999&r1=440998&r2=440999
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java
 Thu Sep  7 00:04:35 2006
@@ -154,6 +154,8 @@
                String MESSAGE_PENDING = "MessagePending";
                
                String PENDING = "pending";
+               
+               String USES_SEQUENCE_STR = "UsesSequenceSTR";
        }
 
        public interface WSA {
@@ -215,7 +217,9 @@
                
                int ACK_REQUEST = 15;
 
-               int MAX_MSG_PART_ID = 15;
+               int USES_SEQUENCE_STR = 16;
+
+               int MAX_MSG_PART_ID = 16;
        }
 
        public interface SequenceProperties {

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java?view=diff&rev=440999&r1=440998&r2=440999
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java
 Thu Sep  7 00:04:35 2006
@@ -75,6 +75,7 @@
 import org.apache.sandesha2.wsrm.Sequence;
 import org.apache.sandesha2.wsrm.SequenceAcknowledgement;
 import org.apache.sandesha2.wsrm.SequenceOffer;
+import org.apache.sandesha2.wsrm.UsesSequenceSTR;
 
 /**
  * Responsible for processing an incoming Application message.
@@ -812,6 +813,13 @@
                if(token != null) {
                        SecurityManager secManager = 
SandeshaUtil.getSecurityManager(configCtx);
                        
createSeqBean.setSecurityTokenData(secManager.getTokenRecoveryData(token));
+                       
+                       // If we are using token based security, and the 1.1 
spec level, then we
+                       // should introduce a UsesSequenceSTR header into the 
message.
+                       
if(createSequencePart.getNamespaceValue().equals(Sandesha2Constants.SPEC_2006_08.NS_URI))
 {
+                               UsesSequenceSTR header = new 
UsesSequenceSTR(null, Sandesha2Constants.SPEC_2006_08.NS_URI);
+                               
header.toSOAPEnvelope(createSeqMsg.getEnvelope());
+                       }
                }
                
                createSeqMgr.insert(createSeqBean);

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java?view=diff&rev=440999&r1=440998&r2=440999
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
 Thu Sep  7 00:04:35 2006
@@ -103,8 +103,10 @@
                        MessageContext msgcontext = 
createSeqRMMsg.getMessageContext();
                        token = secManager.getSecurityToken(theSTR, msgcontext);
                        
-                       //TODO get the element from the SOAP Envelope
-//                     secManager.checkProofOfPossession(token, 
createSeqPart.getOMElement(), msgcontext);
+                       // The create must be the body part of this message, so 
we check the
+                       // security of that element.
+                       OMElement body = msgcontext.getEnvelope().getBody();
+                       secManager.checkProofOfPossession(token, body, 
msgcontext);
                }
 
                MessageContext outMessage = null;

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/MsgInitializer.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/MsgInitializer.java?view=diff&rev=440999&r1=440998&r2=440999
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/MsgInitializer.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/MsgInitializer.java
 Thu Sep  7 00:04:35 2006
@@ -139,6 +139,11 @@
                                        .getCloseSequenceResponse());
                        rmNamespace = 
elements.getCloseSequenceResponse().getNamespaceValue();
                }
+               
+               if (elements.getUsesSequenceSTR() != null) {
+                       
rmMsgContext.setMessagePart(Sandesha2Constants.MessageParts.USES_SEQUENCE_STR, 
elements
+                                       .getUsesSequenceSTR());
+               }
 
                rmMsgContext.setRMNamespaceValue(rmNamespace);
 

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SpecSpecificConstants.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SpecSpecificConstants.java?view=diff&rev=440999&r1=440998&r2=440999
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SpecSpecificConstants.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SpecSpecificConstants.java
 Thu Sep  7 00:04:35 2006
@@ -292,7 +292,11 @@
                if(rmNamespace.equals(Sandesha2Constants.SPEC_2005_02.NS_URI)) {
                        return Sandesha2Constants.SPEC_2005_02.SEC_NS_URI;
                }
-               // Other spec levels do not have security interop defined (yet)
+
+               if(rmNamespace.equals(Sandesha2Constants.SPEC_2006_08.NS_URI)) {
+                       return Sandesha2Constants.SPEC_2006_08.SEC_NS_URI;
+               }
+
                return null;
        }
 }

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/RMElements.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/RMElements.java?view=diff&rev=440999&r1=440998&r2=440999
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/RMElements.java 
(original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/RMElements.java 
Thu Sep  7 00:04:35 2006
@@ -55,6 +55,7 @@
        private CloseSequence closeSequence = null;
        private CloseSequenceResponse closeSequenceResponse = null;
        private AckRequested ackRequested = null;
+       private UsesSequenceSTR usesSequenceSTR = null;
        private String rmNamespaceValue = null;
        private String addressingNamespaceValue = null;
        
@@ -76,7 +77,7 @@
                SOAPFactory factory;
 
                //Yep, I know. Could hv done it directly :D (just to make it 
consistent)
-               if 
(envelope.getNamespace().getName().equals(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI))
+               if 
(envelope.getNamespace().getNamespaceURI().equals(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI))
                        factory = 
SOAPAbstractFactory.getSOAPFactory(Sandesha2Constants.SOAPVersion.v1_1);
                else
                        factory = 
SOAPAbstractFactory.getSOAPFactory(Sandesha2Constants.SOAPVersion.v1_2);
@@ -183,6 +184,15 @@
                        
                        sequenceAcknowledgements.add(sequenceAcknowledgement);
                }
+
+               OMElement usesSequenceSTRElement = envelope.getHeader()
+               .getFirstChildWithName(
+                               new QName(rmNamespaceValue,
+                                               
Sandesha2Constants.WSRM_COMMON.USES_SEQUENCE_STR));
+               if (usesSequenceSTRElement != null) {
+                       usesSequenceSTR = new UsesSequenceSTR(factory, 
rmNamespaceValue);
+                       usesSequenceSTR.fromOMElement(envelope.getHeader());
+               }
        }
 
        public SOAPEnvelope toSOAPEnvelope(SOAPEnvelope envelope) throws 
SandeshaException  {
@@ -355,6 +365,14 @@
 
        public void setCloseSequenceResponse(CloseSequenceResponse 
closeSequenceResponse) {
                this.closeSequenceResponse = closeSequenceResponse;
+       }
+       
+       public UsesSequenceSTR getUsesSequenceSTR() {
+               return usesSequenceSTR;
+       }
+       
+       public void setUsesSequenceSTR(UsesSequenceSTR header) {
+               usesSequenceSTR = header;
        }
 
        public String getAddressingNamespaceValue() {

Modified: webservices/sandesha/trunk/java/test-resources/test.module.xml
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/test-resources/test.module.xml?view=diff&rev=440999&r1=440998&r2=440999
==============================================================================
--- webservices/sandesha/trunk/java/test-resources/test.module.xml (original)
+++ webservices/sandesha/trunk/java/test-resources/test.module.xml Thu Sep  7 
00:04:35 2006
@@ -47,11 +47,11 @@
         
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/SequenceAcknowledgement</actionMapping>
         
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequenceResponse</actionMapping>
 
-        <!-- namespaces for the 2005-10 spec -->
+        <!-- namespaces for the 2006-08 spec -->
         
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/SequenceAcknowledgement</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequenceResponse</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/AckRequested</actionMapping>
+        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/SequenceAcknowledgement</actionMapping>
+        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/CreateSequenceResponse</actionMapping>
+        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/AckRequested</actionMapping>
      </operation>
  
      <operation name="RMInOutOperation" 
mep="http://www.w3.org/2004/08/wsdl/in-out";>
@@ -60,378 +60,12 @@
         <!-- namespaces for the 2005-02 spec -->
         
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence</actionMapping>
 
-        <!-- namespaces for the 2005-10 spec -->
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequence</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequence</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequence</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequenceResponse</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequenceResponse</actionMapping>
-
-    </operation>
-
-   <!-- Database connection parameters -->
-   <parameter name="sandesha2.db.conn.id" 
locked="false">jdbc:derby:SANDESHA2DB;create=true</parameter>
-   <parameter name="sandesha2.db.driver" 
locked="false">org.apache.derby.jdbc.EmbeddedDriver</parameter>
-   <parameter name="sandesha2.db.sql.dialect" 
locked="false">org.hibernate.dialect.DerbyDialect</parameter>
-   <parameter name="sandesha2.db.username" locked="false"></parameter>
-   <parameter name="sandesha2.db.password" locked="false"></parameter>  
-   <parameter name="sandesha2.db.create.mode" 
locked="false">update</parameter> 
-
-   <supported-policy-namespaces 
namespaces="http://ws.apache.org/sandesha2/policy"; />
-
-   <wsp:Policy xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"; 
-       
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";
-    xmlns:wsrm="http://ws.apache.org/sandesha2/policy"; wsu:Id="RMPolicy">
-         
-      <wsrm:AcknowledgementInterval>3000</wsrm:AcknowledgementInterval>
-       
-      <wsrm:RetransmissionInterval>6000</wsrm:RetransmissionInterval>
-      
-      <!-- '-1' conveys that there is no limit to the max. number of 
retransmissions.-->
-      <wsrm:MaximumRetransmissionCount>10</wsrm:MaximumRetransmissionCount>
-      
-      <wsrm:ExponentialBackoff>false</wsrm:ExponentialBackoff>
-      
-      <wsrm:InactivityTimeout>60</wsrm:InactivityTimeout>
-           
-      <wsrm:InactivityTimeoutMeasure>seconds</wsrm:InactivityTimeoutMeasure>
-      
-      <wsrm:InvokeInOrder>true</wsrm:InvokeInOrder>
-      
-      <!-- These will not be overriden by service level policies -->
-      <wsrm:MessageTypesToDrop>none</wsrm:MessageTypesToDrop>  
-                              
-      <!-- This will not be overriden by service level policies -->
-      <wsrm:StorageManagers>
-                   
-          <wsrm:InMemoryStorageManager>
-              org.apache.sandesha2.storage.inmemory.InMemoryStorageManager
-          </wsrm:InMemoryStorageManager> 
-
-          <wsrm:PermanentStorageManager>
-              org.apache.sandesha2.storage.inmemory.InMemoryStorageManager
-          </wsrm:PermanentStorageManager> 
-      
-      </wsrm:StorageManagers>
-      
-      <!-- This will not be overriden by service level policies -->
-      
<wsrm:SecurityManager>org.apache.sandesha2.security.UnitTestSecurityManager</wsrm:SecurityManager>
-   
-</wsp:Policy>
-
-</module>
-<!-- THIS IS A TEST RESOURCE - the correct module.xml file can be found in the 
'config' directory. -->
-
-<module name="sandesha2" class="org.apache.sandesha2.SandeshaModule">
-
-    <Description>
-        This module implements WS-ReliableMessaging for Axis2. This implements 
both the WSRM submitted spec and the new spec being developed under the OASIS 
WSRX group.
-    </Description>
-    
-    <inflow>
-        <handler name="SandeshaGlobalInHandler" 
class="org.apache.sandesha2.handlers.SandeshaGlobalInHandler">
-            <!-- Global In handler should come before instance dispatching -->
-            <order phase="Dispatch" before="InstanceDispatcher" />
-        </handler> 
-        <handler name="SandeshaInHandler" 
class="org.apache.sandesha2.handlers.SandeshaInHandler">
-            <order phase="RMPhase"/>
-        </handler>
-    </inflow>
-
-    <outflow>        
-        <handler name="SandeshaOutHandler" 
class="org.apache.sandesha2.handlers.SandeshaOutHandler">
-            <order phase="RMPhase"/>
-        </handler>   
-    </outflow>
-    
-    <INfaultflow>        
-        <handler name="SandeshaGlobalInHandler" 
class="org.apache.sandesha2.handlers.SandeshaGlobalInHandler">
-            <!-- Global In handler should come before instance dispatching -->
-            <order phase="Dispatch" before="InstanceDispatcher" />
-        </handler> 
-        <handler name="SandeshaInHandler" 
class="org.apache.sandesha2.handlers.SandeshaInHandler">
-            <order phase="RMPhase"/>
-        </handler>
-    </INfaultflow>
-    
-    <OUTfaultflow>        
-        <handler name="SandeshaOutHandler" 
class="org.apache.sandesha2.handlers.SandeshaOutHandler">
-            <order phase="RMPhase"/>
-        </handler>   
-    </OUTfaultflow>
-
-    <operation name="RMInOnlyOperation" 
mep="http://www.w3.org/2004/08/wsdl/in-only";>
-        <messageReceiver 
class="org.apache.sandesha2.msgreceivers.RMMessageReceiver"/>
-        
-        <!-- namespaces for the 2005-02 spec -->
-        
-        
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/TerminateSequence</actionMapping>
-        
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/SequenceAcknowledgement</actionMapping>
-        
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequenceResponse</actionMapping>
-
-        <!-- namespaces for the 2005-10 spec -->
-        
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/SequenceAcknowledgement</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequenceResponse</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/AckRequested</actionMapping>
-     </operation>
- 
-     <operation name="RMInOutOperation" 
mep="http://www.w3.org/2004/08/wsdl/in-out";>
-        <messageReceiver 
class="org.apache.sandesha2.msgreceivers.RMMessageReceiver"/>
-        
-        <!-- namespaces for the 2005-02 spec -->
-        
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence</actionMapping>
-
-        <!-- namespaces for the 2005-10 spec -->
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequence</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequence</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequence</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequenceResponse</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequenceResponse</actionMapping>
-
-    </operation>
-
-   <!-- Database connection parameters -->
-   <parameter name="sandesha2.db.conn.id" 
locked="false">jdbc:derby:SANDESHA2DB;create=true</parameter>
-   <parameter name="sandesha2.db.driver" 
locked="false">org.apache.derby.jdbc.EmbeddedDriver</parameter>
-   <parameter name="sandesha2.db.sql.dialect" 
locked="false">org.hibernate.dialect.DerbyDialect</parameter>
-   <parameter name="sandesha2.db.username" locked="false"></parameter>
-   <parameter name="sandesha2.db.password" locked="false"></parameter>  
-   <parameter name="sandesha2.db.create.mode" 
locked="false">update</parameter> 
-
-   <supported-policy-namespaces 
namespaces="http://ws.apache.org/sandesha2/policy"; />
-
-   <wsp:Policy xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"; 
-       
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";
-    xmlns:wsrm="http://ws.apache.org/sandesha2/policy"; wsu:Id="RMPolicy">
-         
-      <wsrm:AcknowledgementInterval>3000</wsrm:AcknowledgementInterval>
-       
-      <wsrm:RetransmissionInterval>6000</wsrm:RetransmissionInterval>
-      
-      <!-- '-1' conveys that there is no limit to the max. number of 
retransmissions.-->
-      <wsrm:MaximumRetransmissionCount>10</wsrm:MaximumRetransmissionCount>
-      
-      <wsrm:ExponentialBackoff>false</wsrm:ExponentialBackoff>
-      
-      <wsrm:InactivityTimeout>60</wsrm:InactivityTimeout>
-           
-      <wsrm:InactivityTimeoutMeasure>seconds</wsrm:InactivityTimeoutMeasure>
-      
-      <wsrm:InvokeInOrder>true</wsrm:InvokeInOrder>
-      
-      <!-- These will not be overriden by service level policies -->
-      <wsrm:MessageTypesToDrop>none</wsrm:MessageTypesToDrop>  
-                              
-      <!-- This will not be overriden by service level policies -->
-      <wsrm:StorageManagers>
-                   
-          <wsrm:InMemoryStorageManager>
-              org.apache.sandesha2.storage.inmemory.InMemoryStorageManager
-          </wsrm:InMemoryStorageManager> 
-
-          <wsrm:PermanentStorageManager>
-              org.apache.sandesha2.storage.inmemory.InMemoryStorageManager
-          </wsrm:PermanentStorageManager> 
-      
-      </wsrm:StorageManagers>
-      
-      <!-- This will not be overriden by service level policies -->
-      
<wsrm:SecurityManager>org.apache.sandesha2.security.UnitTestSecurityManager</wsrm:SecurityManager>
-   
-</wsp:Policy>
-
-</module>
-<!-- THIS IS A TEST RESOURCE - the correct module.xml file can be found in the 
'config' directory. -->
-
-<module name="sandesha2" class="org.apache.sandesha2.SandeshaModule">
-
-    <Description>
-        This module implements WS-ReliableMessaging for Axis2. This implements 
both the WSRM submitted spec and the new spec being developed under the OASIS 
WSRX group.
-    </Description>
-    
-    <inflow>
-        <handler name="SandeshaGlobalInHandler" 
class="org.apache.sandesha2.handlers.SandeshaGlobalInHandler">
-            <!-- Global In handler should come before instance dispatching -->
-            <order phase="Dispatch" before="InstanceDispatcher" />
-        </handler> 
-        <handler name="SandeshaInHandler" 
class="org.apache.sandesha2.handlers.SandeshaInHandler">
-            <order phase="RMPhase"/>
-        </handler>
-    </inflow>
-
-    <outflow>        
-        <handler name="SandeshaOutHandler" 
class="org.apache.sandesha2.handlers.SandeshaOutHandler">
-            <order phase="RMPhase"/>
-        </handler>   
-    </outflow>
-    
-    <INfaultflow>        
-        <handler name="SandeshaGlobalInHandler" 
class="org.apache.sandesha2.handlers.SandeshaGlobalInHandler">
-            <!-- Global In handler should come before instance dispatching -->
-            <order phase="Dispatch" before="InstanceDispatcher" />
-        </handler> 
-        <handler name="SandeshaInHandler" 
class="org.apache.sandesha2.handlers.SandeshaInHandler">
-            <order phase="RMPhase"/>
-        </handler>
-    </INfaultflow>
-    
-    <OUTfaultflow>        
-        <handler name="SandeshaOutHandler" 
class="org.apache.sandesha2.handlers.SandeshaOutHandler">
-            <order phase="RMPhase"/>
-        </handler>   
-    </OUTfaultflow>
-
-    <operation name="RMInOnlyOperation" 
mep="http://www.w3.org/2004/08/wsdl/in-only";>
-        <messageReceiver 
class="org.apache.sandesha2.msgreceivers.RMMessageReceiver"/>
-        
-        <!-- namespaces for the 2005-02 spec -->
-        
-        
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/TerminateSequence</actionMapping>
-        
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/SequenceAcknowledgement</actionMapping>
-        
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequenceResponse</actionMapping>
-
-        <!-- namespaces for the 2005-10 spec -->
-        
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/SequenceAcknowledgement</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequenceResponse</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/AckRequested</actionMapping>
-     </operation>
- 
-     <operation name="RMInOutOperation" 
mep="http://www.w3.org/2004/08/wsdl/in-out";>
-        <messageReceiver 
class="org.apache.sandesha2.msgreceivers.RMMessageReceiver"/>
-        
-        <!-- namespaces for the 2005-02 spec -->
-        
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence</actionMapping>
-
-        <!-- namespaces for the 2005-10 spec -->
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequence</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequence</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequence</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequenceResponse</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequenceResponse</actionMapping>
-
-    </operation>
-
-   <!-- Database connection parameters -->
-   <parameter name="sandesha2.db.conn.id" 
locked="false">jdbc:derby:SANDESHA2DB;create=true</parameter>
-   <parameter name="sandesha2.db.driver" 
locked="false">org.apache.derby.jdbc.EmbeddedDriver</parameter>
-   <parameter name="sandesha2.db.sql.dialect" 
locked="false">org.hibernate.dialect.DerbyDialect</parameter>
-   <parameter name="sandesha2.db.username" locked="false"></parameter>
-   <parameter name="sandesha2.db.password" locked="false"></parameter>  
-   <parameter name="sandesha2.db.create.mode" 
locked="false">update</parameter> 
-
-   <supported-policy-namespaces 
namespaces="http://ws.apache.org/sandesha2/policy"; />
-
-   <wsp:Policy xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"; 
-       
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";
-    xmlns:wsrm="http://ws.apache.org/sandesha2/policy"; wsu:Id="RMPolicy">
-         
-      <wsrm:AcknowledgementInterval>3000</wsrm:AcknowledgementInterval>
-       
-      <wsrm:RetransmissionInterval>6000</wsrm:RetransmissionInterval>
-      
-      <!-- '-1' conveys that there is no limit to the max. number of 
retransmissions.-->
-      <wsrm:MaximumRetransmissionCount>10</wsrm:MaximumRetransmissionCount>
-      
-      <wsrm:ExponentialBackoff>false</wsrm:ExponentialBackoff>
-      
-      <wsrm:InactivityTimeout>60</wsrm:InactivityTimeout>
-           
-      <wsrm:InactivityTimeoutMeasure>seconds</wsrm:InactivityTimeoutMeasure>
-      
-      <wsrm:InvokeInOrder>true</wsrm:InvokeInOrder>
-      
-      <!-- These will not be overriden by service level policies -->
-      <wsrm:MessageTypesToDrop>none</wsrm:MessageTypesToDrop>  
-                              
-      <!-- This will not be overriden by service level policies -->
-      <wsrm:StorageManagers>
-                   
-          <wsrm:InMemoryStorageManager>
-              org.apache.sandesha2.storage.inmemory.InMemoryStorageManager
-          </wsrm:InMemoryStorageManager> 
-
-          <wsrm:PermanentStorageManager>
-              org.apache.sandesha2.storage.inmemory.InMemoryStorageManager
-          </wsrm:PermanentStorageManager> 
-      
-      </wsrm:StorageManagers>
-      
-      <!-- This will not be overriden by service level policies -->
-      
<wsrm:SecurityManager>org.apache.sandesha2.security.UnitTestSecurityManager</wsrm:SecurityManager>
-   
-</wsp:Policy>
-
-</module>
-<!-- THIS IS A TEST RESOURCE - the correct module.xml file can be found in the 
'config' directory. -->
-
-<module name="sandesha2" class="org.apache.sandesha2.SandeshaModule">
-
-    <Description>
-        This module implements WS-ReliableMessaging for Axis2. This implements 
both the WSRM submitted spec and the new spec being developed under the OASIS 
WSRX group.
-    </Description>
-    
-    <inflow>
-        <handler name="SandeshaGlobalInHandler" 
class="org.apache.sandesha2.handlers.SandeshaGlobalInHandler">
-            <!-- Global In handler should come before instance dispatching -->
-            <order phase="Dispatch" before="InstanceDispatcher" />
-        </handler> 
-        <handler name="SandeshaInHandler" 
class="org.apache.sandesha2.handlers.SandeshaInHandler">
-            <order phase="RMPhase"/>
-        </handler>
-    </inflow>
-
-    <outflow>        
-        <handler name="SandeshaOutHandler" 
class="org.apache.sandesha2.handlers.SandeshaOutHandler">
-            <order phase="RMPhase"/>
-        </handler>   
-    </outflow>
-    
-    <INfaultflow>        
-        <handler name="SandeshaGlobalInHandler" 
class="org.apache.sandesha2.handlers.SandeshaGlobalInHandler">
-            <!-- Global In handler should come before instance dispatching -->
-            <order phase="Dispatch" before="InstanceDispatcher" />
-        </handler> 
-        <handler name="SandeshaInHandler" 
class="org.apache.sandesha2.handlers.SandeshaInHandler">
-            <order phase="RMPhase"/>
-        </handler>
-    </INfaultflow>
-    
-    <OUTfaultflow>        
-        <handler name="SandeshaOutHandler" 
class="org.apache.sandesha2.handlers.SandeshaOutHandler">
-            <order phase="RMPhase"/>
-        </handler>   
-    </OUTfaultflow>
-
-    <operation name="RMInOnlyOperation" 
mep="http://www.w3.org/2004/08/wsdl/in-only";>
-        <messageReceiver 
class="org.apache.sandesha2.msgreceivers.RMMessageReceiver"/>
-        
-        <!-- namespaces for the 2005-02 spec -->
-        
-        
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/TerminateSequence</actionMapping>
-        
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/SequenceAcknowledgement</actionMapping>
-        
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequenceResponse</actionMapping>
-
-        <!-- namespaces for the 2005-10 spec -->
-        
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/SequenceAcknowledgement</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequenceResponse</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/AckRequested</actionMapping>
-     </operation>
- 
-     <operation name="RMInOutOperation" 
mep="http://www.w3.org/2004/08/wsdl/in-out";>
-        <messageReceiver 
class="org.apache.sandesha2.msgreceivers.RMMessageReceiver"/>
-        
-        <!-- namespaces for the 2005-02 spec -->
-        
<actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence</actionMapping>
-
-        <!-- namespaces for the 2005-10 spec -->
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequence</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequence</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequence</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequenceResponse</actionMapping>
-        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequenceResponse</actionMapping>
+        <!-- namespaces for the 2006-08 spec -->
+        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/CreateSequence</actionMapping>
+        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/TerminateSequence</actionMapping>
+        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/CloseSequence</actionMapping>
+        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/TerminateSequenceResponse</actionMapping>
+        
<actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/CloseSequenceResponse</actionMapping>
 
     </operation>
 

Modified: 
webservices/sandesha/trunk/java/test/src/org/apache/sandesha2/security/SecurityTest.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/test/src/org/apache/sandesha2/security/SecurityTest.java?view=diff&rev=440999&r1=440998&r2=440999
==============================================================================
--- 
webservices/sandesha/trunk/java/test/src/org/apache/sandesha2/security/SecurityTest.java
 (original)
+++ 
webservices/sandesha/trunk/java/test/src/org/apache/sandesha2/security/SecurityTest.java
 Thu Sep  7 00:04:35 2006
@@ -26,6 +26,7 @@
 import org.apache.axis2.context.ConfigurationContextFactory;
 import org.apache.axis2.context.MessageContextConstants;
 import org.apache.axis2.transport.http.SimpleHTTPServer;
+import org.apache.sandesha2.Sandesha2Constants;
 import org.apache.sandesha2.SandeshaTestCase;
 import org.apache.sandesha2.client.SandeshaClient;
 import org.apache.sandesha2.client.SandeshaClientConstants;
@@ -71,9 +72,17 @@
                Thread.sleep(300);
                super.tearDown();
        }
+       
+       // Test the create sequence flow for the 2 spec versions
+       public void testCreateSequence()
+       throws Exception
+       {
+               createSequence(Sandesha2Constants.SPEC_VERSIONS.v1_0);
+               createSequence(Sandesha2Constants.SPEC_VERSIONS.v1_1);
+       }
 
        // Check that we can send a create sequence that includes a token 
reference.
-       public void testCreateSequence() throws Exception {
+       public void createSequence(String spec) throws Exception {
                String to = "http://127.0.0.1:"; + serverPort + 
"/axis2/services/RMSampleService";
 
                String repoPath = "target" + File.separator + "repos" + 
File.separator + "secure-client";
@@ -88,6 +97,7 @@
                clientOptions.setTo(new EndpointReference (to));
                
clientOptions.setProperty(MessageContextConstants.TRANSPORT_URL,to);
                
clientOptions.setProperty(SandeshaClientConstants.SEQUENCE_KEY,sequenceKey);
+               
clientOptions.setProperty(SandeshaClientConstants.RM_SPEC_VERSION, spec);
                serviceClient.setOptions(clientOptions);
                
                SandeshaClient.createSequence(serviceClient,false);

Modified: 
webservices/sandesha/trunk/java/test/src/org/apache/sandesha2/security/UnitTestSecurityManager.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/test/src/org/apache/sandesha2/security/UnitTestSecurityManager.java?view=diff&rev=440999&r1=440998&r2=440999
==============================================================================
--- 
webservices/sandesha/trunk/java/test/src/org/apache/sandesha2/security/UnitTestSecurityManager.java
 (original)
+++ 
webservices/sandesha/trunk/java/test/src/org/apache/sandesha2/security/UnitTestSecurityManager.java
 Thu Sep  7 00:04:35 2006
@@ -58,7 +58,7 @@
        {
                OMElement reference = theSTR.getFirstChildWithName(new 
QName(secNamespace, "Reference"));
                String securityTokenURI = reference.getAttributeValue(new 
QName("URI"));
-               String key = securityTokenURI.substring(10);
+               String key = securityTokenURI;
                return (SecurityToken) tokens.get(key);
        }
 



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to