You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by sa...@apache.org on 2012/01/30 08:34:03 UTC

svn commit: r1237553 - in /axis/axis2/java/core/trunk/modules/kernel: src/org/apache/axis2/deployment/ test-resources/deployment/exposedTransportsRepo/ test-resources/deployment/exposedTransportsRepo/services/ test-resources/deployment/exposedTransport...

Author: sagara
Date: Mon Jan 30 07:34:02 2012
New Revision: 1237553

URL: http://svn.apache.org/viewvc?rev=1237553&view=rev
Log:
Applied patch for AXIS2-5234 and AXIS2-5235.

Added:
    axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/
    axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/axis2.xml   (with props)
    axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/
    axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService1/
    axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService1/META-INF/
    axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService1/META-INF/services.xml   (with props)
    axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService2/
    axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService2/META-INF/
    axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService2/META-INF/services.xml   (with props)
    axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService3/
    axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService3/META-INF/
    axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService3/META-INF/services.xml   (with props)
    axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/deployment/DummyTransportListener.java   (with props)
    axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/deployment/ExposedTransportsTest.java   (with props)
Modified:
    axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/ServiceBuilder.java

Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/ServiceBuilder.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/ServiceBuilder.java?rev=1237553&r1=1237552&r2=1237553&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/ServiceBuilder.java (original)
+++ axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/ServiceBuilder.java Mon Jan 30 07:34:02 2012
@@ -338,14 +338,22 @@ public class ServiceBuilder extends Desc
 				while (transport_itr.hasNext()) {
 					OMElement trsEle = (OMElement) transport_itr.next();
 					String transportName = trsEle.getText().trim();
-					trs.add(transportName);
 					if (axisConfig.getTransportIn(transportName) == null) {
-						throw new AxisFault("Service [ " + service.getName()
+                        log.warn("Service [ " + service.getName()
 								+ "] is trying to expose in a transport : "
-								+ transports
+								+ transportName
 								+ " and which is not available in Axis2");
-					}
+					} else {
+                        trs.add(transportName);
+                    }
 				}
+
+                if(trs.isEmpty()){
+                    throw new AxisFault("Service [" + service.getName()
+                        + "] is trying expose in tranpsorts: "
+                        + transports
+                        + " and which is/are not available in Axis2");
+                }
 				service.setExposedTransports(trs);
 			}
 			// processing operations

Added: axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/axis2.xml
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/axis2.xml?rev=1237553&view=auto
==============================================================================
--- axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/axis2.xml (added)
+++ axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/axis2.xml Mon Jan 30 07:34:02 2012
@@ -0,0 +1,456 @@
+<!--
+  ~ 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.
+  -->
+
+<axisconfig name="AxisJava2.0">
+    <!-- ================================================= -->
+    <!-- Parameters -->
+    <!-- ================================================= -->
+    <parameter name="hotdeployment">true</parameter>
+    <parameter name="hotupdate">false</parameter>
+    <parameter name="enableMTOM">true</parameter>
+
+    <parameter name="userName">admin</parameter>
+    <parameter name="password">axis2</parameter>
+
+    <parameter name="seralizeLocation">./target</parameter>
+
+
+    <!-- ================================================= -->
+    <!-- Message Receivers -->
+    <!-- ================================================= -->
+    <!-- This is the Deafult Message Receiver for the Request Response style Operations -->
+    <messageReceiver mep="INOUT" class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
+
+     <!-- ================================================= -->
+    <!-- Transport Ins -->
+    <!-- ================================================= -->
+    <transportReceiver name="http"
+                       class="org.apache.axis2.deployment.DummyTransportListener">
+        <parameter name="port">6071</parameter>
+        <!--If you want to give your own host address for EPR generation-->
+        <!--uncomment following parameter , and set as you required.-->
+        <!--<parameter name="hostname">http://myApp.com/ws</parameter>-->
+    </transportReceiver>
+
+    <transportReceiver name="jms"
+                       class="org.apache.axis2.deployment.DummyTransportListener">
+        <parameter name="port">6072</parameter>
+        <!--If you want to give your own host address for EPR generation-->
+        <!--uncomment following parameter , and set as you required.-->
+        <!--<parameter name="hostname">http://myApp.com/ws</parameter>-->
+    </transportReceiver>
+
+
+    <phaseOrder type="InFlow">
+        <!--  System pre defined phases       -->
+         <phase name="Transport">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+        </phase>
+        <phase name="Security"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"/>
+
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+        </phase>
+        <!--  System pre defined phases       -->
+        <!--   After Postdispatch phase module author or or service author can add any phase he want      -->
+        <phase name="OperationInPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFlow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutPhase"/>
+        <!--system predefined phase-->
+        <!--these phase will run irrespective of the service-->
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+    </phaseOrder>
+    <phaseOrder type="InFaultFlow">
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"/>
+
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+        </phase>
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationInFaultPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFaultFlow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutFaultPhase"/>
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+    </phaseOrder>
+</axisconfig>
+
+<!--
+  ~ 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.
+  -->
+
+<axisconfig name="AxisJava2.0">
+    <!-- ================================================= -->
+    <!-- Parameters -->
+    <!-- ================================================= -->
+    <parameter name="hotdeployment">true</parameter>
+    <parameter name="hotupdate">false</parameter>
+    <parameter name="enableMTOM">true</parameter>
+
+    <parameter name="userName">admin</parameter>
+    <parameter name="password">axis2</parameter>
+
+    <parameter name="seralizeLocation">./target</parameter>
+
+
+    <!-- ================================================= -->
+    <!-- Message Receivers -->
+    <!-- ================================================= -->
+    <!-- This is the Deafult Message Receiver for the Request Response style Operations -->
+    <messageReceiver mep="INOUT" class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
+
+     <!-- ================================================= -->
+    <!-- Transport Ins -->
+    <!-- ================================================= -->
+    <transportReceiver name="http"
+                       class="org.apache.axis2.deployment.DummyTransportListener">
+        <parameter name="port">6071</parameter>
+        <!--If you want to give your own host address for EPR generation-->
+        <!--uncomment following parameter , and set as you required.-->
+        <!--<parameter name="hostname">http://myApp.com/ws</parameter>-->
+    </transportReceiver>
+
+    <transportReceiver name="jms"
+                       class="org.apache.axis2.deployment.DummyTransportListener">
+        <parameter name="port">6072</parameter>
+        <!--If you want to give your own host address for EPR generation-->
+        <!--uncomment following parameter , and set as you required.-->
+        <!--<parameter name="hostname">http://myApp.com/ws</parameter>-->
+    </transportReceiver>
+
+
+    <phaseOrder type="InFlow">
+        <!--  System pre defined phases       -->
+         <phase name="Transport">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+        </phase>
+        <phase name="Security"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"/>
+
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+        </phase>
+        <!--  System pre defined phases       -->
+        <!--   After Postdispatch phase module author or or service author can add any phase he want      -->
+        <phase name="OperationInPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFlow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutPhase"/>
+        <!--system predefined phase-->
+        <!--these phase will run irrespective of the service-->
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+    </phaseOrder>
+    <phaseOrder type="InFaultFlow">
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"/>
+
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+        </phase>
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationInFaultPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFaultFlow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutFaultPhase"/>
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+    </phaseOrder>
+</axisconfig>
+
+<!--
+  ~ 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.
+  -->
+
+<axisconfig name="AxisJava2.0">
+    <!-- ================================================= -->
+    <!-- Parameters -->
+    <!-- ================================================= -->
+    <parameter name="hotdeployment">true</parameter>
+    <parameter name="hotupdate">false</parameter>
+    <parameter name="enableMTOM">true</parameter>
+
+    <parameter name="userName">admin</parameter>
+    <parameter name="password">axis2</parameter>
+
+    <parameter name="seralizeLocation">./target</parameter>
+
+
+    <!-- ================================================= -->
+    <!-- Message Receivers -->
+    <!-- ================================================= -->
+    <!-- This is the Deafult Message Receiver for the Request Response style Operations -->
+    <messageReceiver mep="INOUT" class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
+
+     <!-- ================================================= -->
+    <!-- Transport Ins -->
+    <!-- ================================================= -->
+    <transportReceiver name="http"
+                       class="org.apache.axis2.deployment.DummyTransportListener">
+        <parameter name="port">6071</parameter>
+        <!--If you want to give your own host address for EPR generation-->
+        <!--uncomment following parameter , and set as you required.-->
+        <!--<parameter name="hostname">http://myApp.com/ws</parameter>-->
+    </transportReceiver>
+
+    <transportReceiver name="jms"
+                       class="org.apache.axis2.deployment.DummyTransportListener">
+        <parameter name="port">6072</parameter>
+        <!--If you want to give your own host address for EPR generation-->
+        <!--uncomment following parameter , and set as you required.-->
+        <!--<parameter name="hostname">http://myApp.com/ws</parameter>-->
+    </transportReceiver>
+
+
+    <phaseOrder type="InFlow">
+        <!--  System pre defined phases       -->
+         <phase name="Transport">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+        </phase>
+        <phase name="Security"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"/>
+
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+        </phase>
+        <!--  System pre defined phases       -->
+        <!--   After Postdispatch phase module author or or service author can add any phase he want      -->
+        <phase name="OperationInPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFlow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutPhase"/>
+        <!--system predefined phase-->
+        <!--these phase will run irrespective of the service-->
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+    </phaseOrder>
+    <phaseOrder type="InFaultFlow">
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"/>
+
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+        </phase>
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationInFaultPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFaultFlow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutFaultPhase"/>
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+    </phaseOrder>
+</axisconfig>
+
+<!--
+  ~ 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.
+  -->
+
+<axisconfig name="AxisJava2.0">
+    <!-- ================================================= -->
+    <!-- Parameters -->
+    <!-- ================================================= -->
+    <parameter name="hotdeployment">true</parameter>
+    <parameter name="hotupdate">false</parameter>
+    <parameter name="enableMTOM">true</parameter>
+
+    <parameter name="userName">admin</parameter>
+    <parameter name="password">axis2</parameter>
+
+    <parameter name="seralizeLocation">./target</parameter>
+
+
+    <!-- ================================================= -->
+    <!-- Message Receivers -->
+    <!-- ================================================= -->
+    <!-- This is the Deafult Message Receiver for the Request Response style Operations -->
+    <messageReceiver mep="INOUT" class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
+
+     <!-- ================================================= -->
+    <!-- Transport Ins -->
+    <!-- ================================================= -->
+    <transportReceiver name="http"
+                       class="org.apache.axis2.deployment.DummyTransportListener">
+        <parameter name="port">6071</parameter>
+        <!--If you want to give your own host address for EPR generation-->
+        <!--uncomment following parameter , and set as you required.-->
+        <!--<parameter name="hostname">http://myApp.com/ws</parameter>-->
+    </transportReceiver>
+
+    <transportReceiver name="jms"
+                       class="org.apache.axis2.deployment.DummyTransportListener">
+        <parameter name="port">6072</parameter>
+        <!--If you want to give your own host address for EPR generation-->
+        <!--uncomment following parameter , and set as you required.-->
+        <!--<parameter name="hostname">http://myApp.com/ws</parameter>-->
+    </transportReceiver>
+
+
+    <phaseOrder type="InFlow">
+        <!--  System pre defined phases       -->
+         <phase name="Transport">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+        </phase>
+        <phase name="Security"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"/>
+
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+        </phase>
+        <!--  System pre defined phases       -->
+        <!--   After Postdispatch phase module author or or service author can add any phase he want      -->
+        <phase name="OperationInPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFlow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutPhase"/>
+        <!--system predefined phase-->
+        <!--these phase will run irrespective of the service-->
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+    </phaseOrder>
+    <phaseOrder type="InFaultFlow">
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"/>
+
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+        </phase>
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationInFaultPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFaultFlow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutFaultPhase"/>
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+    </phaseOrder>
+</axisconfig>
+

Propchange: axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/axis2.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService1/META-INF/services.xml
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService1/META-INF/services.xml?rev=1237553&view=auto
==============================================================================
--- axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService1/META-INF/services.xml (added)
+++ axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService1/META-INF/services.xml Mon Jan 30 07:34:02 2012
@@ -0,0 +1,136 @@
+<!--
+  ~ 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.
+  -->
+
+<serviceGroup>
+    <!-- EchoService1 should only be exposed on http -->
+    <service name="EchoService1">
+        <description>
+               This service echo the given input , and this was developed to text the axis system working
+                correctly
+        </description>
+
+       <transports>
+                <transport>http</transport>
+        </transports>
+
+        <parameter name="ServiceClass">org.apache.axis2.sample.echo.EchoImpl</parameter>
+    </service>
+</serviceGroup>
+<!--
+  ~ 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.
+  -->
+
+<serviceGroup>
+    <!-- EchoService1 should only be exposed on http -->
+    <service name="EchoService1">
+        <description>
+               This service echo the given input , and this was developed to text the axis system working
+                correctly
+        </description>
+
+       <transports>
+                <transport>http</transport>
+        </transports>
+
+        <parameter name="ServiceClass">org.apache.axis2.sample.echo.EchoImpl</parameter>
+    </service>
+</serviceGroup>
+<!--
+  ~ 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.
+  -->
+
+<serviceGroup>
+    <!-- EchoService1 should only be exposed on http -->
+    <service name="EchoService1">
+        <description>
+               This service echo the given input , and this was developed to text the axis system working
+                correctly
+        </description>
+
+       <transports>
+                <transport>http</transport>
+        </transports>
+
+        <parameter name="ServiceClass">org.apache.axis2.sample.echo.EchoImpl</parameter>
+    </service>
+</serviceGroup>
+<!--
+  ~ 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.
+  -->
+
+<serviceGroup>
+    <!-- EchoService1 should only be exposed on http -->
+    <service name="EchoService1">
+        <description>
+               This service echo the given input , and this was developed to text the axis system working
+                correctly
+        </description>
+
+       <transports>
+                <transport>http</transport>
+        </transports>
+
+        <parameter name="ServiceClass">org.apache.axis2.sample.echo.EchoImpl</parameter>
+    </service>
+</serviceGroup>
\ No newline at end of file

Propchange: axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService1/META-INF/services.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService2/META-INF/services.xml
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService2/META-INF/services.xml?rev=1237553&view=auto
==============================================================================
--- axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService2/META-INF/services.xml (added)
+++ axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService2/META-INF/services.xml Mon Jan 30 07:34:02 2012
@@ -0,0 +1,148 @@
+<!--
+  ~ 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.
+  -->
+
+<serviceGroup>
+    <!-- https transport is not available in Axis2. But the deployment of the EchoService2 should not fail.
+          and also EchoService2 should be deployed in http -->
+    <service name="EchoService2">
+        <description>
+               This service echo the given input , and this was developed to text the axis system working
+                correctly
+        </description>
+
+       <transports>
+                <transport>http</transport>
+                <transport>https</transport>
+                <transport>jms</transport>
+        </transports>
+
+        <parameter name="ServiceClass">org.apache.axis2.sample.echo.EchoImpl</parameter>
+    </service>
+</serviceGroup>
+<!--
+  ~ 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.
+  -->
+
+<serviceGroup>
+    <!-- https transport is not available in Axis2. But the deployment of the EchoService2 should not fail.
+          and also EchoService2 should be deployed in http -->
+    <service name="EchoService2">
+        <description>
+               This service echo the given input , and this was developed to text the axis system working
+                correctly
+        </description>
+
+       <transports>
+                <transport>http</transport>
+                <transport>https</transport>
+                <transport>jms</transport>
+        </transports>
+
+        <parameter name="ServiceClass">org.apache.axis2.sample.echo.EchoImpl</parameter>
+    </service>
+</serviceGroup>
+<!--
+  ~ 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.
+  -->
+
+<serviceGroup>
+    <!-- https transport is not available in Axis2. But the deployment of the EchoService2 should not fail.
+          and also EchoService2 should be deployed in http -->
+    <service name="EchoService2">
+        <description>
+               This service echo the given input , and this was developed to text the axis system working
+                correctly
+        </description>
+
+       <transports>
+                <transport>http</transport>
+                <transport>https</transport>
+                <transport>jms</transport>
+        </transports>
+
+        <parameter name="ServiceClass">org.apache.axis2.sample.echo.EchoImpl</parameter>
+    </service>
+</serviceGroup>
+<!--
+  ~ 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.
+  -->
+
+<serviceGroup>
+    <!-- https transport is not available in Axis2. But the deployment of the EchoService2 should not fail.
+          and also EchoService2 should be deployed in http -->
+    <service name="EchoService2">
+        <description>
+               This service echo the given input , and this was developed to text the axis system working
+                correctly
+        </description>
+
+       <transports>
+                <transport>http</transport>
+                <transport>https</transport>
+                <transport>jms</transport>
+        </transports>
+
+        <parameter name="ServiceClass">org.apache.axis2.sample.echo.EchoImpl</parameter>
+    </service>
+</serviceGroup>
\ No newline at end of file

Propchange: axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService2/META-INF/services.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService3/META-INF/services.xml
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService3/META-INF/services.xml?rev=1237553&view=auto
==============================================================================
--- axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService3/META-INF/services.xml (added)
+++ axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService3/META-INF/services.xml Mon Jan 30 07:34:02 2012
@@ -0,0 +1,136 @@
+<!--
+  ~ 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.
+  -->
+
+<serviceGroup>
+    <!-- https transport is not available in Axis2. Therefore the deployment of the EchoService2 should fail. -->
+    <service name="EchoService3">
+        <description>
+               This service echo the given input , and this was developed to text the axis system working
+                correctly
+        </description>
+
+       <transports>
+                <transport>https</transport>
+        </transports>
+
+        <parameter name="ServiceClass">org.apache.axis2.sample.echo.EchoImpl</parameter>
+    </service>
+</serviceGroup>
+<!--
+  ~ 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.
+  -->
+
+<serviceGroup>
+    <!-- https transport is not available in Axis2. Therefore the deployment of the EchoService2 should fail. -->
+    <service name="EchoService3">
+        <description>
+               This service echo the given input , and this was developed to text the axis system working
+                correctly
+        </description>
+
+       <transports>
+                <transport>https</transport>
+        </transports>
+
+        <parameter name="ServiceClass">org.apache.axis2.sample.echo.EchoImpl</parameter>
+    </service>
+</serviceGroup>
+<!--
+  ~ 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.
+  -->
+
+<serviceGroup>
+    <!-- https transport is not available in Axis2. Therefore the deployment of the EchoService2 should fail. -->
+    <service name="EchoService3">
+        <description>
+               This service echo the given input , and this was developed to text the axis system working
+                correctly
+        </description>
+
+       <transports>
+                <transport>https</transport>
+        </transports>
+
+        <parameter name="ServiceClass">org.apache.axis2.sample.echo.EchoImpl</parameter>
+    </service>
+</serviceGroup>
+<!--
+  ~ 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.
+  -->
+
+<serviceGroup>
+    <!-- https transport is not available in Axis2. Therefore the deployment of the EchoService2 should fail. -->
+    <service name="EchoService3">
+        <description>
+               This service echo the given input , and this was developed to text the axis system working
+                correctly
+        </description>
+
+       <transports>
+                <transport>https</transport>
+        </transports>
+
+        <parameter name="ServiceClass">org.apache.axis2.sample.echo.EchoImpl</parameter>
+    </service>
+</serviceGroup>
\ No newline at end of file

Propchange: axis/axis2/java/core/trunk/modules/kernel/test-resources/deployment/exposedTransportsRepo/services/echoService3/META-INF/services.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/deployment/DummyTransportListener.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/deployment/DummyTransportListener.java?rev=1237553&view=auto
==============================================================================
--- axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/deployment/DummyTransportListener.java (added)
+++ axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/deployment/DummyTransportListener.java Mon Jan 30 07:34:02 2012
@@ -0,0 +1,58 @@
+/*
+ * 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.axis2.deployment;
+
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.addressing.EndpointReference;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.context.MessageContext;
+import org.apache.axis2.context.SessionContext;
+import org.apache.axis2.description.TransportInDescription;
+import org.apache.axis2.transport.TransportListener;
+
+public class DummyTransportListener implements TransportListener {
+    public void init(ConfigurationContext axisConf, TransportInDescription transprtIn) throws AxisFault {
+        //To change body of implemented methods use File | Settings | File Templates.
+    }
+
+    public void start() throws AxisFault {
+        //To change body of implemented methods use File | Settings | File Templates.
+    }
+
+    public void stop() throws AxisFault {
+        //To change body of implemented methods use File | Settings | File Templates.
+    }
+
+    public EndpointReference getEPRForService(String serviceName, String ip) throws AxisFault {
+        return null;  //To change body of implemented methods use File | Settings | File Templates.
+    }
+
+    public EndpointReference[] getEPRsForService(String serviceName, String ip) throws AxisFault {
+        return new EndpointReference[0];  //To change body of implemented methods use File | Settings | File Templates.
+    }
+
+    public SessionContext getSessionContext(MessageContext messageContext) {
+        return null;  //To change body of implemented methods use File | Settings | File Templates.
+    }
+
+    public void destroy() {
+        //To change body of implemented methods use File | Settings | File Templates.
+    }
+}

Propchange: axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/deployment/DummyTransportListener.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/deployment/ExposedTransportsTest.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/deployment/ExposedTransportsTest.java?rev=1237553&view=auto
==============================================================================
--- axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/deployment/ExposedTransportsTest.java (added)
+++ axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/deployment/ExposedTransportsTest.java Mon Jan 30 07:34:02 2012
@@ -0,0 +1,99 @@
+/*
+ * 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.axis2.deployment;
+
+import junit.framework.TestCase;
+import org.apache.axis2.AbstractTestCase;
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.ConfigurationContextFactory;
+import org.apache.axis2.description.AxisService;
+import org.apache.axis2.engine.AxisConfiguration;
+
+import java.util.List;
+
+/**
+ * When you develop service, you can specify the list of transports on which you service should be exposed.
+ * This class will test this functionality.
+ */
+public class ExposedTransportsTest extends TestCase {
+    AxisConfiguration ar;
+    String repo = AbstractTestCase.basedir + "/test-resources/deployment/exposedTransportsRepo";
+
+    protected void setUp() throws Exception {
+        ar = ConfigurationContextFactory.createConfigurationContextFromFileSystem(repo, repo + "/axis2.xml")
+                .getAxisConfiguration();
+    }
+
+    /**
+     * EchoService1 should only be exposed on http
+     * @throws AxisFault in the case of an Error
+     */
+    public void testExposedTransportsEchoService1() throws AxisFault {
+        AxisService service1 = ar.getService("EchoService1");
+        assertNotNull(service1);
+
+        List<String> exposedTransportsList = service1.getExposedTransports();
+        assertFalse("Exposed Transports list should not be empty.", exposedTransportsList.isEmpty());
+
+        assertTrue("EchoService1 is not exposed on http.", checkExistenceInList(exposedTransportsList, "http"));
+
+        assertEquals("EchoService1 should only be exposed on http.", 1, exposedTransportsList.size());
+    }
+
+    /**
+     * https transport is not available in Axis2. But the deployment of the EchoService2 should not fail.
+     *     and also EchoService2 should be deployed in http
+     * @throws AxisFault in the case of an Error
+     */
+    public void testExposedTransportsEchoService2() throws AxisFault {
+
+        AxisService service1 = ar.getService("EchoService2");
+        assertNotNull(service1);
+
+        List<String> exposedTransportsList = service1.getExposedTransports();
+        assertFalse("Exposed Transport list should not be empty.", exposedTransportsList.isEmpty());
+
+        assertFalse("EchoService2 should not be exposed on https.", checkExistenceInList(exposedTransportsList, "https"));
+
+        assertTrue("EchoService2 is not exposed on http.", checkExistenceInList(exposedTransportsList, "http"));
+
+        assertTrue("EchoService2 is not exposed on jms.", checkExistenceInList(exposedTransportsList, "jms"));
+
+        assertEquals("EchoService1 should only be exposed on http.", 2, exposedTransportsList.size());
+    }
+
+    /**
+     * https transport is not available in Axis2. Therefore the deployment of the EchoService2 should fail.
+     * @throws AxisFault in the case of an Error
+     */
+    public void testExposedTransportsEchoService3() throws AxisFault {
+        AxisService service1 = ar.getService("EchoService3");
+        assertNull("EchoService3 deployment should fail, because it has been exposed in unavailable transports.", service1);
+    }
+
+    private boolean checkExistenceInList(List<String> exposedTransportsList, String value){
+        for(String transportName : exposedTransportsList){
+            if(value.equalsIgnoreCase(transportName)) {
+                return true;
+            }
+        }
+        return false;
+    }
+}

Propchange: axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/deployment/ExposedTransportsTest.java
------------------------------------------------------------------------------
    svn:eol-style = native