This is an automated email from the ASF dual-hosted git repository. robertlazarski pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/axis-axis2-java-core.git
commit 91bfe95c2463c105ca29b781b62934c9fa355ebc Author: Robert Lazarski <[email protected]> AuthorDate: Thu Aug 6 06:43:13 2026 -1000 Opt the JAX-WS integration repositories into decoupled responses The async-with-addressing tests reply to a non-anonymous wsa:ReplyTo, so they need the same two settings as the other decoupled-response suites. Caught by a full reactor build; the jaxws module alone passes, because the affected tests live in jaxws-integration. Co-Authored-By: Claude Fable 5 <[email protected]> --- modules/jaxws-integration/test-resources/axis2.xml | 636 +++++++++--------- .../test-resources/axis2_addressing.xml | 712 +++++++++++---------- 2 files changed, 680 insertions(+), 668 deletions(-) diff --git a/modules/jaxws-integration/test-resources/axis2.xml b/modules/jaxws-integration/test-resources/axis2.xml index efca37dbc2..5400ccc3c5 100644 --- a/modules/jaxws-integration/test-resources/axis2.xml +++ b/modules/jaxws-integration/test-resources/axis2.xml @@ -1,315 +1,321 @@ -<!-- - ~ 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">false</parameter> - <parameter name="hotupdate">false</parameter> - <parameter name="enableMTOM">false</parameter> - - <!--During a fault, stacktrace can be sent with the fault message. The following flag will control --> - <!--that behaviour.--> - <parameter name="sendStacktraceDetailsWithFaults">true</parameter> - - <!--If there aren't any information available to find out the fault reason, we set the message of the exception--> - <!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be --> - <!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag--> - <!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.--> - <parameter name="DrillDownToRootCauseForFaultReason">false</parameter> - - <!--This is the user name and password of admin console--> - <parameter name="userName"></parameter> - <parameter name="password"></parameter> - - <!--To override repository/services you need to uncomment following parameter and value SHOULD be absolute file path.--> - <!--ServicesDirectory only works on the following cases--> - <!---File based configurator and in that case the value should be a file URL (http:// not allowed)--> - <!---When creating URL Based configurator with URL “file://” --> - <!--- War based configurator with expanded case , --> - - <!--All the other scenarios it will be ignored.--> - <!--<parameter name="ServicesDirectory">service</parameter>--> - <!--To override repository/modules you need to uncomment following parameter and value SHOULD be absolute file path--> - <!--<parameter name="ModulesDirectory">modules</parameter>--> - - <!--Following params will set the proper context paths for invocations. All the endpoints will have a commons context--> - <!--root which can configured using the following contextRoot parameter--> - <!--<parameter name="contextRoot">axis2</parameter>--> - - <!--Our HTTP endpoints can handle both REST and SOAP. Following parameters can be used to distinguish those endpoints--> - <!--<parameter name="servicePath">services</parameter>--> - <!--<parameter name="restPath">rest</parameter>--> - - <!-- Following parameter will completely disable REST handling in Axis2--> - <parameter name="disableREST" locked="true">false</parameter> - - <!-- ================================================= --> - <!-- Deployers --> - <!-- ================================================= --> - - <!--Service deployer , this will alow users to deploy AAR or exploded AAR as axis2 services--> - <deployer extension=".aar" directory="services" class="org.apache.axis2.deployment.ServiceDeployer"> - <serviceBuilderExtension name ="jwsbuilderExt" class="org.apache.axis2.jaxws.framework.JAXWSServiceBuilderExtension"/> - <serviceBuilderExtension name ="wsdlbuilderExt" class="org.apache.axis2.deployment.WSDLServiceBuilderExtension"/> - </deployer> - - <!--JAXWS deployer for servicejars, this will allow users to drop .jar files and have them deployed as a service --> - <deployer extension="jar" directory="servicejars" class="org.apache.axis2.jaxws.framework.JAXWSDeployer"/> - - <!-- Following parameter will set the host name for the epr--> - <!--<parameter name="hostname" locked="true">myhost.com</parameter>--> - - <!-- ================================================= --> - <!-- Message Receivers --> - <!-- ================================================= --> - <!--This is the Default Message Receiver for the system , if you want to have MessageReceivers for --> - <!--all the other MEP implement it and add the correct entry to here , so that you can refer from--> - <!--any operation --> - <!--Note : You can override this for particular service by adding the same element with your requirement--> - <messageReceivers> - <messageReceiver mep="http://www.w3.org/ns/wsdl/in-only" - class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/> - <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out" - class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/> - </messageReceivers> - - <!-- ================================================= --> - <!-- Message Formatter --> - <!-- ================================================= --> - <!--Following content type to message formatter mapping can be used to implement support for different message --> - <!--format serialization in Axis2. These message formats are expected to be resolved based on the content type. --> - <messageFormatters> - <messageFormatter contentType="application/x-www-form-urlencoded" - class="org.apache.axis2.kernel.http.XFormURLEncodedFormatter"/> - <messageFormatter contentType="multipart/form-data" - class="org.apache.axis2.kernel.http.MultipartFormDataFormatter"/> - <messageFormatter contentType="application/xml" - class="org.apache.axis2.kernel.http.ApplicationXMLFormatter"/> - </messageFormatters> - - <!-- ================================================= --> - <!-- Message Builders --> - <!-- ================================================= --> - <!--Following content type to builder mapping can be used to implement support for different message --> - <!--formats in Axis2. These message formats are expected to be resolved based on the content type. --> - <messageBuilders> - <messageBuilder contentType="application/xml" - class="org.apache.axis2.builder.ApplicationXMLBuilder"/> - <messageBuilder contentType="application/x-www-form-urlencoded" - class="org.apache.axis2.builder.XFormURLEncodedBuilder"/> - <messageBuilder contentType=".*" - class="org.apache.axis2.builder.DataSourceBuilder"/> - <!--Left commented because it adds the depandancy of servlet-api to other modules. - Please uncomment to Receive messages in multipart/form-data format--> - <!--<messageBuilder contentType="multipart/form-data"--> - <!--class="org.apache.axis2.builder.MultipartFormDataBuilder"/>--> - </messageBuilders> - - - - <!-- ================================================= --> - <!-- Transport Ins --> - <!-- ================================================= --> - <transportReceiver name="http" - class="org.apache.axis2.transport.http.SimpleHTTPServer"> - <!-- <parameter name="port">6060</parameter> Port dynamically allocated by test framework --> - <!--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> - - <!-- ================================================= --> - <!-- Transport Outs --> - <!-- ================================================= --> - - <transportSender name="local" - class="org.apache.axis2.transport.local.LocalTransportSender"/> - <transportSender name="http" - class="org.apache.axis2.transport.http.impl.httpclient5.HTTPClient5TransportSender"> - <parameter name="PROTOCOL">HTTP/1.1</parameter> - <parameter name="Transfer-Encoding">chunked</parameter> - </transportSender> - <transportSender name="https" - class="org.apache.axis2.transport.http.impl.httpclient5.HTTPClient5TransportSender"> - <parameter name="PROTOCOL">HTTP/1.1</parameter> - <parameter name="Transfer-Encoding">chunked</parameter> - </transportSender> - - <!-- ================================================= --> - <!-- Phases --> - <!-- ================================================= --> - <phaseOrder type="InFlow"> - <!-- System pre-defined phases --> - <phase name="Transport"> - <handler name="RequestURIBasedDispatcher" - class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"> - <order phase="Transport"/> - </handler> - <handler name="SOAPActionBasedDispatcher" - class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"> - <order phase="Transport"/> - </handler> - </phase> - <phase name="Addressing"> - <handler name="AddressingBasedDispatcher" - class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> - <order phase="Addressing"/> - </handler> - </phase> - <phase name="Security"/> - <phase name="PreDispatch"/> - <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase"> - <handler name="RequestURIBasedDispatcher" - class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"> - <order phase="Dispatch"/> - </handler> - - <handler name="SOAPActionBasedDispatcher" - class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"> - <order phase="Dispatch"/> - </handler> - - <handler name="AddressingBasedDispatcher" - class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> - <order phase="Dispatch"/> - </handler> - <handler name="RequestURIOperationDispatcher" - class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"> - <order phase="Dispatch"/> - </handler> - - <handler name="SOAPMessageBodyBasedDispatcher" - class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"> - <order phase="Dispatch"/> - </handler> - - <handler name="HTTPLocationBasedDispatcher" - class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"> - <order phase="Dispatch"/> - </handler> - - <handler name="GenericProviderDispatcher" - class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"> - <order phase="Dispatch"/> - </handler> - - <handler name="MustUnderstandValidationDispatcher" - class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"> - <order phase="Dispatch"/> - </handler> - </phase> - <phase name="RMPhase"/> - <!-- System pre defined phases --> - <!-- After Postdispatch phase module author or or service author can add any phase he want --> - <phase name="OperationInPhase"> - <handler name="SoapMessageMUProviderChecker" - class="org.apache.axis2.jaxws.provider.SoapMessageMUProviderChecker"> - <order phase="OperationInPhase"/> - </handler> - <handler name="MustUnderstandChecker" - class="org.apache.axis2.jaxws.dispatchers.MustUnderstandChecker"> - <order phase="OperationInPhase"/> - </handler> - </phase> - </phaseOrder> - <phaseOrder type="OutFlow"> - <!-- user can add his own phases to this area --> - <phase name="OperationOutPhase"> - <handler name="DispatchOperationHandler" - class="org.apache.axis2.jaxws.client.dispatch.DispatchOperationHandler"> - <order phase="OperationOutPhase"/> - </handler> - </phase> - <!--system predefined phase--> - <!--these phase will run irrespective of the service--> - <phase name="RMPhase"/> - <phase name="PolicyDetermination"/> - <phase name="MessageOut"/> - <phase name="Security"/> - </phaseOrder> - <phaseOrder type="InFaultFlow"> - <phase name="Addressing"> - <handler name="AddressingBasedDispatcher" - class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> - <order phase="Addressing"/> - </handler> - </phase> - <phase name="PreDispatch"/> - <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase"> - <handler name="RequestURIBasedDispatcher" - class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"> - <order phase="Dispatch"/> - </handler> - - <handler name="SOAPActionBasedDispatcher" - class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"> - <order phase="Dispatch"/> - </handler> - - <handler name="AddressingBasedDispatcher" - class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> - <order phase="Dispatch"/> - </handler> - <handler name="RequestURIOperationDispatcher" - class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"> - <order phase="Dispatch"/> - </handler> - - <handler name="SOAPMessageBodyBasedDispatcher" - class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"> - <order phase="Dispatch"/> - </handler> - - <handler name="HTTPLocationBasedDispatcher" - class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"> - <order phase="Dispatch"/> - </handler> - <handler name="GenericProviderDispatcher" - class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"> - <order phase="Dispatch"/> - </handler> - - <handler name="MustUnderstandValidationDispatcher" - class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"> - <order phase="Dispatch"/> - </handler> - </phase> - <phase name="RMPhase"/> - <!-- user can add his own phases to this area --> - <phase name="OperationInPhase"> - <handler name="SoapMessageMUProviderChecker" - class="org.apache.axis2.jaxws.provider.SoapMessageMUProviderChecker"> - <order phase="OperationInPhase"/> - </handler> - <handler name="MustUnderstandChecker" - class="org.apache.axis2.jaxws.dispatchers.MustUnderstandChecker"> - <order phase="OperationInPhase"/> - </handler> - </phase> - </phaseOrder> - <phaseOrder type="OutFaultFlow"> - <!-- user can add his own phases to this area --> - <phase name="OperationOutFaultPhase"/> - <phase name="RMPhase"/> - <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"> + <!-- The async-with-addressing tests reply to a non-anonymous wsa:ReplyTo. + Decoupled responses are declined by default and the permitted scheme + list is https alone, so both are opted into here. --> + <parameter name="allowNonAnonymousResponseEndpoints">true</parameter> + <parameter name="allowedResponseEndpointSchemes">http,https</parameter> + + <!-- ================================================= --> + <!-- Parameters --> + <!-- ================================================= --> + <parameter name="hotdeployment">false</parameter> + <parameter name="hotupdate">false</parameter> + <parameter name="enableMTOM">false</parameter> + + <!--During a fault, stacktrace can be sent with the fault message. The following flag will control --> + <!--that behaviour.--> + <parameter name="sendStacktraceDetailsWithFaults">true</parameter> + + <!--If there aren't any information available to find out the fault reason, we set the message of the exception--> + <!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be --> + <!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag--> + <!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.--> + <parameter name="DrillDownToRootCauseForFaultReason">false</parameter> + + <!--This is the user name and password of admin console--> + <parameter name="userName"></parameter> + <parameter name="password"></parameter> + + <!--To override repository/services you need to uncomment following parameter and value SHOULD be absolute file path.--> + <!--ServicesDirectory only works on the following cases--> + <!---File based configurator and in that case the value should be a file URL (http:// not allowed)--> + <!---When creating URL Based configurator with URL “file://” --> + <!--- War based configurator with expanded case , --> + + <!--All the other scenarios it will be ignored.--> + <!--<parameter name="ServicesDirectory">service</parameter>--> + <!--To override repository/modules you need to uncomment following parameter and value SHOULD be absolute file path--> + <!--<parameter name="ModulesDirectory">modules</parameter>--> + + <!--Following params will set the proper context paths for invocations. All the endpoints will have a commons context--> + <!--root which can configured using the following contextRoot parameter--> + <!--<parameter name="contextRoot">axis2</parameter>--> + + <!--Our HTTP endpoints can handle both REST and SOAP. Following parameters can be used to distinguish those endpoints--> + <!--<parameter name="servicePath">services</parameter>--> + <!--<parameter name="restPath">rest</parameter>--> + + <!-- Following parameter will completely disable REST handling in Axis2--> + <parameter name="disableREST" locked="true">false</parameter> + + <!-- ================================================= --> + <!-- Deployers --> + <!-- ================================================= --> + + <!--Service deployer , this will alow users to deploy AAR or exploded AAR as axis2 services--> + <deployer extension=".aar" directory="services" class="org.apache.axis2.deployment.ServiceDeployer"> + <serviceBuilderExtension name ="jwsbuilderExt" class="org.apache.axis2.jaxws.framework.JAXWSServiceBuilderExtension"/> + <serviceBuilderExtension name ="wsdlbuilderExt" class="org.apache.axis2.deployment.WSDLServiceBuilderExtension"/> + </deployer> + + <!--JAXWS deployer for servicejars, this will allow users to drop .jar files and have them deployed as a service --> + <deployer extension="jar" directory="servicejars" class="org.apache.axis2.jaxws.framework.JAXWSDeployer"/> + + <!-- Following parameter will set the host name for the epr--> + <!--<parameter name="hostname" locked="true">myhost.com</parameter>--> + + <!-- ================================================= --> + <!-- Message Receivers --> + <!-- ================================================= --> + <!--This is the Default Message Receiver for the system , if you want to have MessageReceivers for --> + <!--all the other MEP implement it and add the correct entry to here , so that you can refer from--> + <!--any operation --> + <!--Note : You can override this for particular service by adding the same element with your requirement--> + <messageReceivers> + <messageReceiver mep="http://www.w3.org/ns/wsdl/in-only" + class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/> + <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out" + class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/> + </messageReceivers> + + <!-- ================================================= --> + <!-- Message Formatter --> + <!-- ================================================= --> + <!--Following content type to message formatter mapping can be used to implement support for different message --> + <!--format serialization in Axis2. These message formats are expected to be resolved based on the content type. --> + <messageFormatters> + <messageFormatter contentType="application/x-www-form-urlencoded" + class="org.apache.axis2.kernel.http.XFormURLEncodedFormatter"/> + <messageFormatter contentType="multipart/form-data" + class="org.apache.axis2.kernel.http.MultipartFormDataFormatter"/> + <messageFormatter contentType="application/xml" + class="org.apache.axis2.kernel.http.ApplicationXMLFormatter"/> + </messageFormatters> + + <!-- ================================================= --> + <!-- Message Builders --> + <!-- ================================================= --> + <!--Following content type to builder mapping can be used to implement support for different message --> + <!--formats in Axis2. These message formats are expected to be resolved based on the content type. --> + <messageBuilders> + <messageBuilder contentType="application/xml" + class="org.apache.axis2.builder.ApplicationXMLBuilder"/> + <messageBuilder contentType="application/x-www-form-urlencoded" + class="org.apache.axis2.builder.XFormURLEncodedBuilder"/> + <messageBuilder contentType=".*" + class="org.apache.axis2.builder.DataSourceBuilder"/> + <!--Left commented because it adds the depandancy of servlet-api to other modules. + Please uncomment to Receive messages in multipart/form-data format--> + <!--<messageBuilder contentType="multipart/form-data"--> + <!--class="org.apache.axis2.builder.MultipartFormDataBuilder"/>--> + </messageBuilders> + + + + <!-- ================================================= --> + <!-- Transport Ins --> + <!-- ================================================= --> + <transportReceiver name="http" + class="org.apache.axis2.transport.http.SimpleHTTPServer"> + <!-- <parameter name="port">6060</parameter> Port dynamically allocated by test framework --> + <!--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> + + <!-- ================================================= --> + <!-- Transport Outs --> + <!-- ================================================= --> + + <transportSender name="local" + class="org.apache.axis2.transport.local.LocalTransportSender"/> + <transportSender name="http" + class="org.apache.axis2.transport.http.impl.httpclient5.HTTPClient5TransportSender"> + <parameter name="PROTOCOL">HTTP/1.1</parameter> + <parameter name="Transfer-Encoding">chunked</parameter> + </transportSender> + <transportSender name="https" + class="org.apache.axis2.transport.http.impl.httpclient5.HTTPClient5TransportSender"> + <parameter name="PROTOCOL">HTTP/1.1</parameter> + <parameter name="Transfer-Encoding">chunked</parameter> + </transportSender> + + <!-- ================================================= --> + <!-- Phases --> + <!-- ================================================= --> + <phaseOrder type="InFlow"> + <!-- System pre-defined phases --> + <phase name="Transport"> + <handler name="RequestURIBasedDispatcher" + class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"> + <order phase="Transport"/> + </handler> + <handler name="SOAPActionBasedDispatcher" + class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"> + <order phase="Transport"/> + </handler> + </phase> + <phase name="Addressing"> + <handler name="AddressingBasedDispatcher" + class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> + <order phase="Addressing"/> + </handler> + </phase> + <phase name="Security"/> + <phase name="PreDispatch"/> + <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase"> + <handler name="RequestURIBasedDispatcher" + class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"> + <order phase="Dispatch"/> + </handler> + + <handler name="SOAPActionBasedDispatcher" + class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"> + <order phase="Dispatch"/> + </handler> + + <handler name="AddressingBasedDispatcher" + class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> + <order phase="Dispatch"/> + </handler> + <handler name="RequestURIOperationDispatcher" + class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"> + <order phase="Dispatch"/> + </handler> + + <handler name="SOAPMessageBodyBasedDispatcher" + class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"> + <order phase="Dispatch"/> + </handler> + + <handler name="HTTPLocationBasedDispatcher" + class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"> + <order phase="Dispatch"/> + </handler> + + <handler name="GenericProviderDispatcher" + class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"> + <order phase="Dispatch"/> + </handler> + + <handler name="MustUnderstandValidationDispatcher" + class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"> + <order phase="Dispatch"/> + </handler> + </phase> + <phase name="RMPhase"/> + <!-- System pre defined phases --> + <!-- After Postdispatch phase module author or or service author can add any phase he want --> + <phase name="OperationInPhase"> + <handler name="SoapMessageMUProviderChecker" + class="org.apache.axis2.jaxws.provider.SoapMessageMUProviderChecker"> + <order phase="OperationInPhase"/> + </handler> + <handler name="MustUnderstandChecker" + class="org.apache.axis2.jaxws.dispatchers.MustUnderstandChecker"> + <order phase="OperationInPhase"/> + </handler> + </phase> + </phaseOrder> + <phaseOrder type="OutFlow"> + <!-- user can add his own phases to this area --> + <phase name="OperationOutPhase"> + <handler name="DispatchOperationHandler" + class="org.apache.axis2.jaxws.client.dispatch.DispatchOperationHandler"> + <order phase="OperationOutPhase"/> + </handler> + </phase> + <!--system predefined phase--> + <!--these phase will run irrespective of the service--> + <phase name="RMPhase"/> + <phase name="PolicyDetermination"/> + <phase name="MessageOut"/> + <phase name="Security"/> + </phaseOrder> + <phaseOrder type="InFaultFlow"> + <phase name="Addressing"> + <handler name="AddressingBasedDispatcher" + class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> + <order phase="Addressing"/> + </handler> + </phase> + <phase name="PreDispatch"/> + <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase"> + <handler name="RequestURIBasedDispatcher" + class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"> + <order phase="Dispatch"/> + </handler> + + <handler name="SOAPActionBasedDispatcher" + class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"> + <order phase="Dispatch"/> + </handler> + + <handler name="AddressingBasedDispatcher" + class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> + <order phase="Dispatch"/> + </handler> + <handler name="RequestURIOperationDispatcher" + class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"> + <order phase="Dispatch"/> + </handler> + + <handler name="SOAPMessageBodyBasedDispatcher" + class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"> + <order phase="Dispatch"/> + </handler> + + <handler name="HTTPLocationBasedDispatcher" + class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"> + <order phase="Dispatch"/> + </handler> + <handler name="GenericProviderDispatcher" + class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"> + <order phase="Dispatch"/> + </handler> + + <handler name="MustUnderstandValidationDispatcher" + class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"> + <order phase="Dispatch"/> + </handler> + </phase> + <phase name="RMPhase"/> + <!-- user can add his own phases to this area --> + <phase name="OperationInPhase"> + <handler name="SoapMessageMUProviderChecker" + class="org.apache.axis2.jaxws.provider.SoapMessageMUProviderChecker"> + <order phase="OperationInPhase"/> + </handler> + <handler name="MustUnderstandChecker" + class="org.apache.axis2.jaxws.dispatchers.MustUnderstandChecker"> + <order phase="OperationInPhase"/> + </handler> + </phase> + </phaseOrder> + <phaseOrder type="OutFaultFlow"> + <!-- user can add his own phases to this area --> + <phase name="OperationOutFaultPhase"/> + <phase name="RMPhase"/> + <phase name="PolicyDetermination"/> + <phase name="MessageOut"/> + </phaseOrder> +</axisconfig> diff --git a/modules/jaxws-integration/test-resources/axis2_addressing.xml b/modules/jaxws-integration/test-resources/axis2_addressing.xml index 3ccbce265f..961a4ec903 100644 --- a/modules/jaxws-integration/test-resources/axis2_addressing.xml +++ b/modules/jaxws-integration/test-resources/axis2_addressing.xml @@ -1,353 +1,359 @@ -<!-- - ~ 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">false</parameter> - <parameter name="enableSwA">false</parameter> - - <!--Uncomment if you want to enable file caching for attachments --> - <!--parameter name="cacheAttachments">true</parameter> - <parameter name="attachmentDIR"></parameter> - <parameter name="sizeThreshold">4000</parameter--> - - <!--Uncomment if you want to plugin your own attachments lifecycle implementation --> - <!--<attachmentsLifecycleManager class="org.apache.axiom.attachments.lifecycle.impl.LifecycleManagerImpl"/>--> - - - <!--Uncomment if you want to enable the reduction of the in-memory cache of WSDL definitions --> - <!--In some server environments, the available memory heap is limited and can fill up under load --> - <!--Since in-memory copies of WSDL definitions can be large, some steps can be taken--> - <!--to reduce the memory needed for the cached WSDL definitions. --> - <!--parameter name="reduceWSDLMemoryCache">true</parameter--> - - <!--This will give out the timout of the configuration contexts, in milliseconds--> - <parameter name="ConfigContextTimeoutInterval">30000</parameter> - - <!--During a fault, stack trace can be sent with the fault message. The following flag will control --> - <!--that behavior.--> - <parameter name="sendStacktraceDetailsWithFaults">false</parameter> - - <!--If there aren't any information available to find out the fault reason, we set the message of the exception--> - <!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be --> - <!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag--> - <!--is set, then Axis2 tries to get the first exception and set its message as the faultreason/Reason.--> - <parameter name="DrillDownToRootCauseForFaultReason">false</parameter> - - <parameter name="userName">admin</parameter> - <parameter name="password">axis2</parameter> - - <!--To override repository/services you need to uncomment following parameter and value SHOULD be absolute file path.--> - <!--ServicesDirectory only works on the following cases--> - <!---File based configurator and in that case the value should be a file URL (http:// not allowed)--> - <!---When creating URL Based configurator with URL file:// --> - <!--- War based configurator with expanded case , --> - - <!--All the other scenarios it will be ignored.--> - <!--<parameter name="ServicesDirectory">service</parameter>--> - <!--To override repository/modules you need to uncomment following parameter and value SHOULD be absolute file path--> - <!--<parameter name="ModulesDirectory">modules</parameter>--> - - - - <!--Following params will set the proper context paths for invocations. All the endpoints will have a commons context--> - <!--root which can configured using the following contextRoot parameter--> - <!--<parameter name="contextRoot">axis2</parameter>--> - - <!--Our HTTP endpoints can handle both REST and SOAP. Following parameters can be used to distinguiush those endpoints--> - <!--In case of a servlet, if you change this you have to manually change the settings of your servlet container to map this --> - <!--context path to proper Axis2 servlets--> - <!--<parameter name="servicePath">services</parameter>--> - <!--<parameter name="restPath">rest</parameter>--> - - <!-- Following parameter will completely disable REST handling in Axis2--> - <parameter name="disableREST" locked="true">false</parameter> - - <!-- Following parameter will suppress generation of SOAP 1.2 bindings in auto-generated WSDL files --> - <parameter name="disableSOAP12" locked="true">false</parameter> - - <!-- ================================================= --> - <!-- Deployers --> - <!-- ================================================= --> - - <!--Service deployer , this will alow users to deploy AAR or exploded AAR as axis2 services--> - <deployer extension=".aar" directory="services" class="org.apache.axis2.deployment.ServiceDeployer"> - <serviceBuilderExtension name ="jwsbuilderExt" class="org.apache.axis2.jaxws.framework.JAXWSServiceBuilderExtension"/> - <serviceBuilderExtension name ="wsdlbuilderExt" class="org.apache.axis2.deployment.WSDLServiceBuilderExtension"/> - </deployer> - - <!--POJO deployer , this will alow users to drop .class file and make that into a service--> - <deployer extension=".class" directory="pojo" class="org.apache.axis2.deployment.POJODeployer"/> - <deployer extension=".jar" directory="servicejars" class="org.apache.axis2.jaxws.framework.JAXWSDeployer"/> - - <!--<deployer extension=".jsa" directory="rmiservices" class="org.apache.axis2.rmi.deploy.RMIServiceDeployer"/>--> - - - <!-- Following parameter will set the host name for the epr--> - <!--<parameter name="hostname" locked="true">myhost.com</parameter>--> - - <!-- If you have a front end host which exposes this webservice using a different public URL --> - <!-- use this parameter to override autodetected url --> - <!--<parameter name="httpFrontendHostUrl">https://someotherhost/context</parameter>--> - - - <!-- The way of adding listener to the system--> - <!-- <listener class="org.apache.axis2.ObserverIMPL">--> - <!-- <parameter name="RSS_URL">http://127.0.0.1/rss</parameter>--> - <!-- </listener>--> - - <threadContextMigrators> - <threadContextMigrator listId="JAXWS-ThreadContextMigrator-List" class="org.apache.axis2.jaxws.addressing.migrator.EndpointContextMapMigrator"/> - </threadContextMigrators> - - <!-- ================================================= --> - <!-- Message Receivers --> - <!-- ================================================= --> - <!--This is the deafult MessageReceiver for the system , if you want to have MessageReceivers for --> - <!--all the other MEP implement it and add the correct entry to here , so that you can refer from--> - <!--any operation --> - <!--Note : You can ovrride this for a particular service by adding the same element with your requirement--> - <messageReceivers> - <messageReceiver mep="http://www.w3.org/ns/wsdl/in-only" - class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/> - <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out" - class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/> - </messageReceivers> - - <!-- ================================================= --> - <!-- Message Formatter --> - <!-- ================================================= --> - <!--Following content type to message formatter mapping can be used to implement support for different message --> - <!--format serialization in Axis2. These message formats are expected to be resolved based on the content type. --> - <messageFormatters> - <messageFormatter contentType="application/x-www-form-urlencoded" - class="org.apache.axis2.kernel.http.XFormURLEncodedFormatter"/> - <messageFormatter contentType="multipart/form-data" - class="org.apache.axis2.kernel.http.MultipartFormDataFormatter"/> - <messageFormatter contentType="application/xml" - class="org.apache.axis2.kernel.http.ApplicationXMLFormatter"/> - <messageFormatter contentType="text/xml" - class="org.apache.axis2.kernel.http.SOAPMessageFormatter"/> - <messageFormatter contentType="application/soap+xml" - class="org.apache.axis2.kernel.http.SOAPMessageFormatter"/> - </messageFormatters> - - <!-- ================================================= --> - <!-- Message Builders --> - <!-- ================================================= --> - <!--Following content type to builder mapping can be used to implement support for different message --> - <!--formats in Axis2. These message formats are expected to be resolved based on the content type. --> - <messageBuilders> - <messageBuilder contentType="application/xml" - class="org.apache.axis2.builder.ApplicationXMLBuilder"/> - <messageBuilder contentType="application/xml" - class="org.apache.axis2.builder.ApplicationXMLBuilder"/> - <messageBuilder contentType="application/x-www-form-urlencoded" - class="org.apache.axis2.builder.XFormURLEncodedBuilder"/> - <messageBuilder contentType="multipart/form-data" - class="org.apache.axis2.builder.MultipartFormDataBuilder"/> - </messageBuilders> - - <!-- ================================================= --> - <!-- Transport Ins --> - <!-- ================================================= --> - <transportReceiver name="http" - class="org.apache.axis2.transport.http.SimpleHTTPServer"> - <parameter name="port">0</parameter> <!-- Dynamic port allocation --> - <!-- Here is the complete list of supported parameters (see example settings further below): - port: the port to listen on (default 6060) - hostname: if non-null, url prefix used in reply-to endpoint references (default null) - originServer: value of http Server header in outgoing messages (default "Simple-Server/1.1") - requestTimeout: value in millis of time that requests can wait for data (default 20000) - requestTcpNoDelay: true to maximize performance and minimize latency (default true) - false to minimize bandwidth consumption by combining segments - requestCoreThreadPoolSize: number of threads available for request processing (unless queue fills up) (default 25) - requestMaxThreadPoolSize: number of threads available for request processing if queue fills up (default 150) - note that default queue never fills up: see HttpFactory - threadKeepAliveTime: time to keep threads in excess of core size alive while inactive (default 180) - note that no such threads can exist with default unbounded request queue - threadKeepAliveTimeUnit: TimeUnit of value in threadKeepAliveTime (default SECONDS) (default SECONDS) - --> - <!-- <parameter name="hostname">http://www.myApp.com/ws</parameter> --> - <!-- <parameter name="originServer">My-Server/1.1</parameter> --> - <!-- <parameter name="requestTimeout">10000</parameter> --> - <!-- <parameter name="requestTcpNoDelay">false</parameter> --> - <!-- <parameter name="requestCoreThreadPoolSize">50</parameter> --> - <!-- <parameter name="requestMaxThreadPoolSize">100</parameter> --> - <!-- <parameter name="threadKeepAliveTime">240000</parameter> --> - <!-- <parameter name="threadKeepAliveTimeUnit">MILLISECONDS</parameter> --> - </transportReceiver> - - <!-- ================================================= --> - <!-- Transport Outs --> - <!-- ================================================= --> - - <transportSender name="local" - class="org.apache.axis2.transport.local.LocalTransportSender"/> - <transportSender name="http" - class="org.apache.axis2.transport.http.impl.httpclient5.HTTPClient5TransportSender"> - <parameter name="PROTOCOL">HTTP/1.1</parameter> - <parameter name="Transfer-Encoding">chunked</parameter> - - <!-- If following is set to 'true', optional action part of the Content-Type will not be added to the SOAP 1.2 messages --> - <!-- <parameter name="OmitSOAP12Action">true</parameter> --> - </transportSender> - - <transportSender name="https" - class="org.apache.axis2.transport.http.impl.httpclient5.HTTPClient5TransportSender"> - <parameter name="PROTOCOL">HTTP/1.1</parameter> - <parameter name="Transfer-Encoding">chunked</parameter> - </transportSender> - - <!-- ================================================= --> - <!-- Global Modules --> - <!-- ================================================= --> - <!-- Comment this to disable Addressing --> - <module ref="addressing"/> - - <!--Configuring module , providing parameters for modules whether they refer or not--> - <!--<moduleConfig name="addressing">--> - <!--<parameter name="addressingPara">N/A</parameter>--> - <!--</moduleConfig>--> - - <!-- ================================================= --> - <!-- Clustering --> - <!-- ================================================= --> - <!-- Configure and uncomment following for preparing Axis2 to a clustered environment --> - <!-- - <cluster class="org.apache.axis2.cluster.tribes.TribesClusterManager"> - <parameter name="param1">value1</parameter> - <parameter name="domain">apache.axis2.domain</parameter> - <parameter name="synchronizeAll">true</parameter> - <parameter name="maxRetries">10</parameter> - <configurationManager class="org.apache.axis2.cluster.configuration.TribesConfigurationManager"> - <listener class="org.apache.axis2.cluster.configuration.DefaultConfigurationManagerListener"/> - </configurationManager> - <contextManager class="org.apache.axis2.cluster.context.TribesContextManager"> - <listener class="org.apache.axis2.cluster.context.DefaultContextManagerListener"/> - </contextManager> - </cluster> - --> - - <!-- ================================================= --> - <!-- Phases --> - <!-- ================================================= --> - <phaseOrder type="InFlow"> - <!-- System predefined phases --> - <phase name="Transport"> - <handler name="RequestURIBasedDispatcher" - class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"> - <order phase="Transport"/> - </handler> - <handler name="SOAPActionBasedDispatcher" - class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"> - <order phase="Transport"/> - </handler> - </phase> - <phase name="Addressing"> - <handler name="AddressingBasedDispatcher" - class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> - <order phase="Addressing"/> - </handler> - </phase> - <phase name="Security"/> - <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="RequestURIOperationDispatcher" - class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/> - <handler name="SOAPMessageBodyBasedDispatcher" - class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/> - <handler name="HTTPLocationBasedDispatcher" - class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/> - <handler name="GenericProviderDispatcher" - class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"/> - <handler name="MustUnderstandValidationDispatcher" - class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"/> - </phase> - <phase name="RMPhase"/> - <!-- System predefined phases --> - <!-- After Postdispatch phase module author or service author can add any phase he want --> - <phase name="OperationInPhase"> - <handler name="MustUnderstandChecker" - class="org.apache.axis2.jaxws.dispatchers.MustUnderstandChecker"> - <order phase="OperationInPhase"/> - </handler> - </phase> - <phase name="soapmonitorPhase"/> - </phaseOrder> - <phaseOrder type="OutFlow"> - <!-- user can add his own phases to this area --> - <phase name="soapmonitorPhase"/> - <phase name="OperationOutPhase"/> - <!--system predefined phase--> - <!--these phase will run irrespective of the service--> - <phase name="RMPhase"/> - <phase name="PolicyDetermination"/> - <phase name="MessageOut"/> - <phase name="Security"/> - </phaseOrder> - <phaseOrder type="InFaultFlow"> - <phase name="Addressing"> - <handler name="AddressingBasedDispatcher" - class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> - <order phase="Addressing"/> - </handler> - </phase> - <phase name="Security"/> - <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="RequestURIOperationDispatcher" - class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/> - <handler name="SOAPMessageBodyBasedDispatcher" - class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/> - <handler name="HTTPLocationBasedDispatcher" - class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/> - <handler name="GenericProviderDispatcher" - class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"/> - <handler name="MustUnderstandValidationDispatcher" - class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"/> - </phase> - <phase name="RMPhase"/> - <!-- user can add his own phases to this area --> - <phase name="OperationInFaultPhase"/> - <phase name="soapmonitorPhase"/> - </phaseOrder> - <phaseOrder type="OutFaultFlow"> - <!-- user can add his own phases to this area --> - <phase name="soapmonitorPhase"/> - <phase name="OperationOutFaultPhase"/> - <phase name="RMPhase"/> - <phase name="PolicyDetermination"/> - <phase name="MessageOut"/> - <phase name="Security"/> - </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"> + <!-- The async-with-addressing tests reply to a non-anonymous wsa:ReplyTo. + Decoupled responses are declined by default and the permitted scheme + list is https alone, so both are opted into here. --> + <parameter name="allowNonAnonymousResponseEndpoints">true</parameter> + <parameter name="allowedResponseEndpointSchemes">http,https</parameter> + + <!-- ================================================= --> + <!-- Parameters --> + <!-- ================================================= --> + <parameter name="hotdeployment">true</parameter> + <parameter name="hotupdate">false</parameter> + <parameter name="enableMTOM">false</parameter> + <parameter name="enableSwA">false</parameter> + + <!--Uncomment if you want to enable file caching for attachments --> + <!--parameter name="cacheAttachments">true</parameter> + <parameter name="attachmentDIR"></parameter> + <parameter name="sizeThreshold">4000</parameter--> + + <!--Uncomment if you want to plugin your own attachments lifecycle implementation --> + <!--<attachmentsLifecycleManager class="org.apache.axiom.attachments.lifecycle.impl.LifecycleManagerImpl"/>--> + + + <!--Uncomment if you want to enable the reduction of the in-memory cache of WSDL definitions --> + <!--In some server environments, the available memory heap is limited and can fill up under load --> + <!--Since in-memory copies of WSDL definitions can be large, some steps can be taken--> + <!--to reduce the memory needed for the cached WSDL definitions. --> + <!--parameter name="reduceWSDLMemoryCache">true</parameter--> + + <!--This will give out the timout of the configuration contexts, in milliseconds--> + <parameter name="ConfigContextTimeoutInterval">30000</parameter> + + <!--During a fault, stack trace can be sent with the fault message. The following flag will control --> + <!--that behavior.--> + <parameter name="sendStacktraceDetailsWithFaults">false</parameter> + + <!--If there aren't any information available to find out the fault reason, we set the message of the exception--> + <!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be --> + <!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag--> + <!--is set, then Axis2 tries to get the first exception and set its message as the faultreason/Reason.--> + <parameter name="DrillDownToRootCauseForFaultReason">false</parameter> + + <parameter name="userName">admin</parameter> + <parameter name="password">axis2</parameter> + + <!--To override repository/services you need to uncomment following parameter and value SHOULD be absolute file path.--> + <!--ServicesDirectory only works on the following cases--> + <!---File based configurator and in that case the value should be a file URL (http:// not allowed)--> + <!---When creating URL Based configurator with URL file:// --> + <!--- War based configurator with expanded case , --> + + <!--All the other scenarios it will be ignored.--> + <!--<parameter name="ServicesDirectory">service</parameter>--> + <!--To override repository/modules you need to uncomment following parameter and value SHOULD be absolute file path--> + <!--<parameter name="ModulesDirectory">modules</parameter>--> + + + + <!--Following params will set the proper context paths for invocations. All the endpoints will have a commons context--> + <!--root which can configured using the following contextRoot parameter--> + <!--<parameter name="contextRoot">axis2</parameter>--> + + <!--Our HTTP endpoints can handle both REST and SOAP. Following parameters can be used to distinguiush those endpoints--> + <!--In case of a servlet, if you change this you have to manually change the settings of your servlet container to map this --> + <!--context path to proper Axis2 servlets--> + <!--<parameter name="servicePath">services</parameter>--> + <!--<parameter name="restPath">rest</parameter>--> + + <!-- Following parameter will completely disable REST handling in Axis2--> + <parameter name="disableREST" locked="true">false</parameter> + + <!-- Following parameter will suppress generation of SOAP 1.2 bindings in auto-generated WSDL files --> + <parameter name="disableSOAP12" locked="true">false</parameter> + + <!-- ================================================= --> + <!-- Deployers --> + <!-- ================================================= --> + + <!--Service deployer , this will alow users to deploy AAR or exploded AAR as axis2 services--> + <deployer extension=".aar" directory="services" class="org.apache.axis2.deployment.ServiceDeployer"> + <serviceBuilderExtension name ="jwsbuilderExt" class="org.apache.axis2.jaxws.framework.JAXWSServiceBuilderExtension"/> + <serviceBuilderExtension name ="wsdlbuilderExt" class="org.apache.axis2.deployment.WSDLServiceBuilderExtension"/> + </deployer> + + <!--POJO deployer , this will alow users to drop .class file and make that into a service--> + <deployer extension=".class" directory="pojo" class="org.apache.axis2.deployment.POJODeployer"/> + <deployer extension=".jar" directory="servicejars" class="org.apache.axis2.jaxws.framework.JAXWSDeployer"/> + + <!--<deployer extension=".jsa" directory="rmiservices" class="org.apache.axis2.rmi.deploy.RMIServiceDeployer"/>--> + + + <!-- Following parameter will set the host name for the epr--> + <!--<parameter name="hostname" locked="true">myhost.com</parameter>--> + + <!-- If you have a front end host which exposes this webservice using a different public URL --> + <!-- use this parameter to override autodetected url --> + <!--<parameter name="httpFrontendHostUrl">https://someotherhost/context</parameter>--> + + + <!-- The way of adding listener to the system--> + <!-- <listener class="org.apache.axis2.ObserverIMPL">--> + <!-- <parameter name="RSS_URL">http://127.0.0.1/rss</parameter>--> + <!-- </listener>--> + + <threadContextMigrators> + <threadContextMigrator listId="JAXWS-ThreadContextMigrator-List" class="org.apache.axis2.jaxws.addressing.migrator.EndpointContextMapMigrator"/> + </threadContextMigrators> + + <!-- ================================================= --> + <!-- Message Receivers --> + <!-- ================================================= --> + <!--This is the deafult MessageReceiver for the system , if you want to have MessageReceivers for --> + <!--all the other MEP implement it and add the correct entry to here , so that you can refer from--> + <!--any operation --> + <!--Note : You can ovrride this for a particular service by adding the same element with your requirement--> + <messageReceivers> + <messageReceiver mep="http://www.w3.org/ns/wsdl/in-only" + class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/> + <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out" + class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/> + </messageReceivers> + + <!-- ================================================= --> + <!-- Message Formatter --> + <!-- ================================================= --> + <!--Following content type to message formatter mapping can be used to implement support for different message --> + <!--format serialization in Axis2. These message formats are expected to be resolved based on the content type. --> + <messageFormatters> + <messageFormatter contentType="application/x-www-form-urlencoded" + class="org.apache.axis2.kernel.http.XFormURLEncodedFormatter"/> + <messageFormatter contentType="multipart/form-data" + class="org.apache.axis2.kernel.http.MultipartFormDataFormatter"/> + <messageFormatter contentType="application/xml" + class="org.apache.axis2.kernel.http.ApplicationXMLFormatter"/> + <messageFormatter contentType="text/xml" + class="org.apache.axis2.kernel.http.SOAPMessageFormatter"/> + <messageFormatter contentType="application/soap+xml" + class="org.apache.axis2.kernel.http.SOAPMessageFormatter"/> + </messageFormatters> + + <!-- ================================================= --> + <!-- Message Builders --> + <!-- ================================================= --> + <!--Following content type to builder mapping can be used to implement support for different message --> + <!--formats in Axis2. These message formats are expected to be resolved based on the content type. --> + <messageBuilders> + <messageBuilder contentType="application/xml" + class="org.apache.axis2.builder.ApplicationXMLBuilder"/> + <messageBuilder contentType="application/xml" + class="org.apache.axis2.builder.ApplicationXMLBuilder"/> + <messageBuilder contentType="application/x-www-form-urlencoded" + class="org.apache.axis2.builder.XFormURLEncodedBuilder"/> + <messageBuilder contentType="multipart/form-data" + class="org.apache.axis2.builder.MultipartFormDataBuilder"/> + </messageBuilders> + + <!-- ================================================= --> + <!-- Transport Ins --> + <!-- ================================================= --> + <transportReceiver name="http" + class="org.apache.axis2.transport.http.SimpleHTTPServer"> + <parameter name="port">0</parameter> <!-- Dynamic port allocation --> + <!-- Here is the complete list of supported parameters (see example settings further below): + port: the port to listen on (default 6060) + hostname: if non-null, url prefix used in reply-to endpoint references (default null) + originServer: value of http Server header in outgoing messages (default "Simple-Server/1.1") + requestTimeout: value in millis of time that requests can wait for data (default 20000) + requestTcpNoDelay: true to maximize performance and minimize latency (default true) + false to minimize bandwidth consumption by combining segments + requestCoreThreadPoolSize: number of threads available for request processing (unless queue fills up) (default 25) + requestMaxThreadPoolSize: number of threads available for request processing if queue fills up (default 150) + note that default queue never fills up: see HttpFactory + threadKeepAliveTime: time to keep threads in excess of core size alive while inactive (default 180) + note that no such threads can exist with default unbounded request queue + threadKeepAliveTimeUnit: TimeUnit of value in threadKeepAliveTime (default SECONDS) (default SECONDS) + --> + <!-- <parameter name="hostname">http://www.myApp.com/ws</parameter> --> + <!-- <parameter name="originServer">My-Server/1.1</parameter> --> + <!-- <parameter name="requestTimeout">10000</parameter> --> + <!-- <parameter name="requestTcpNoDelay">false</parameter> --> + <!-- <parameter name="requestCoreThreadPoolSize">50</parameter> --> + <!-- <parameter name="requestMaxThreadPoolSize">100</parameter> --> + <!-- <parameter name="threadKeepAliveTime">240000</parameter> --> + <!-- <parameter name="threadKeepAliveTimeUnit">MILLISECONDS</parameter> --> + </transportReceiver> + + <!-- ================================================= --> + <!-- Transport Outs --> + <!-- ================================================= --> + + <transportSender name="local" + class="org.apache.axis2.transport.local.LocalTransportSender"/> + <transportSender name="http" + class="org.apache.axis2.transport.http.impl.httpclient5.HTTPClient5TransportSender"> + <parameter name="PROTOCOL">HTTP/1.1</parameter> + <parameter name="Transfer-Encoding">chunked</parameter> + + <!-- If following is set to 'true', optional action part of the Content-Type will not be added to the SOAP 1.2 messages --> + <!-- <parameter name="OmitSOAP12Action">true</parameter> --> + </transportSender> + + <transportSender name="https" + class="org.apache.axis2.transport.http.impl.httpclient5.HTTPClient5TransportSender"> + <parameter name="PROTOCOL">HTTP/1.1</parameter> + <parameter name="Transfer-Encoding">chunked</parameter> + </transportSender> + + <!-- ================================================= --> + <!-- Global Modules --> + <!-- ================================================= --> + <!-- Comment this to disable Addressing --> + <module ref="addressing"/> + + <!--Configuring module , providing parameters for modules whether they refer or not--> + <!--<moduleConfig name="addressing">--> + <!--<parameter name="addressingPara">N/A</parameter>--> + <!--</moduleConfig>--> + + <!-- ================================================= --> + <!-- Clustering --> + <!-- ================================================= --> + <!-- Configure and uncomment following for preparing Axis2 to a clustered environment --> + <!-- + <cluster class="org.apache.axis2.cluster.tribes.TribesClusterManager"> + <parameter name="param1">value1</parameter> + <parameter name="domain">apache.axis2.domain</parameter> + <parameter name="synchronizeAll">true</parameter> + <parameter name="maxRetries">10</parameter> + <configurationManager class="org.apache.axis2.cluster.configuration.TribesConfigurationManager"> + <listener class="org.apache.axis2.cluster.configuration.DefaultConfigurationManagerListener"/> + </configurationManager> + <contextManager class="org.apache.axis2.cluster.context.TribesContextManager"> + <listener class="org.apache.axis2.cluster.context.DefaultContextManagerListener"/> + </contextManager> + </cluster> + --> + + <!-- ================================================= --> + <!-- Phases --> + <!-- ================================================= --> + <phaseOrder type="InFlow"> + <!-- System predefined phases --> + <phase name="Transport"> + <handler name="RequestURIBasedDispatcher" + class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"> + <order phase="Transport"/> + </handler> + <handler name="SOAPActionBasedDispatcher" + class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"> + <order phase="Transport"/> + </handler> + </phase> + <phase name="Addressing"> + <handler name="AddressingBasedDispatcher" + class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> + <order phase="Addressing"/> + </handler> + </phase> + <phase name="Security"/> + <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="RequestURIOperationDispatcher" + class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/> + <handler name="SOAPMessageBodyBasedDispatcher" + class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/> + <handler name="HTTPLocationBasedDispatcher" + class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/> + <handler name="GenericProviderDispatcher" + class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"/> + <handler name="MustUnderstandValidationDispatcher" + class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"/> + </phase> + <phase name="RMPhase"/> + <!-- System predefined phases --> + <!-- After Postdispatch phase module author or service author can add any phase he want --> + <phase name="OperationInPhase"> + <handler name="MustUnderstandChecker" + class="org.apache.axis2.jaxws.dispatchers.MustUnderstandChecker"> + <order phase="OperationInPhase"/> + </handler> + </phase> + <phase name="soapmonitorPhase"/> + </phaseOrder> + <phaseOrder type="OutFlow"> + <!-- user can add his own phases to this area --> + <phase name="soapmonitorPhase"/> + <phase name="OperationOutPhase"/> + <!--system predefined phase--> + <!--these phase will run irrespective of the service--> + <phase name="RMPhase"/> + <phase name="PolicyDetermination"/> + <phase name="MessageOut"/> + <phase name="Security"/> + </phaseOrder> + <phaseOrder type="InFaultFlow"> + <phase name="Addressing"> + <handler name="AddressingBasedDispatcher" + class="org.apache.axis2.dispatchers.AddressingBasedDispatcher"> + <order phase="Addressing"/> + </handler> + </phase> + <phase name="Security"/> + <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="RequestURIOperationDispatcher" + class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/> + <handler name="SOAPMessageBodyBasedDispatcher" + class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/> + <handler name="HTTPLocationBasedDispatcher" + class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/> + <handler name="GenericProviderDispatcher" + class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"/> + <handler name="MustUnderstandValidationDispatcher" + class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"/> + </phase> + <phase name="RMPhase"/> + <!-- user can add his own phases to this area --> + <phase name="OperationInFaultPhase"/> + <phase name="soapmonitorPhase"/> + </phaseOrder> + <phaseOrder type="OutFaultFlow"> + <!-- user can add his own phases to this area --> + <phase name="soapmonitorPhase"/> + <phase name="OperationOutFaultPhase"/> + <phase name="RMPhase"/> + <phase name="PolicyDetermination"/> + <phase name="MessageOut"/> + <phase name="Security"/> + </phaseOrder> +</axisconfig> +
