Hi Udara,

axis2.xml is attached herewith

Thanks

On Tue, Sep 9, 2014 at 9:58 AM, Chamila De Alwis <chami...@wso2.com> wrote:

> Thanks Nirmal! That clears it up.
>
> In our case, it seems that LB is not opening the port specified as the
> proxyPort by the cartridge.
>
> According to the puppet module template the transportReceiver port is
> defined at the nodes.pp as port 80 by default ($lb_httpPort)[1]. If the LB
> should accept requests at the port defined by the cartridge definition,
> shouldn't it be passed to LB through launch parameters or through the
> member activate event?
>
> [1] -
> https://github.com/apache/stratos/blob/4.0.0-rc4/tools/puppet3/manifests/nodes.pp
>
>
> Regards,
> Chamila de Alwis
> Software Engineer | WSO2 | +94772207163
> Blog: code.chamiladealwis.com
>
>
>
> On Tue, Sep 9, 2014 at 8:57 AM, Nirmal Fernando <nirmal070...@gmail.com>
> wrote:
>
>> Hi All,
>>
>> Let me explain the rationale behind defining a proxy port. Proxy port is
>> a way to let LB know, that LB should redirect all the requests that are
>> coming to it (i.e. proxy port) to mapped host port (i.e. port). This
>> mapping becomes vital when LB exposes multiple ports (i.e. you can define n
>> number of transport receivers in LB). Hence, if you require a Cartridge to
>> be load balanced, and then it's a must to define the port mapping and it's
>> not practical to define a default value due to the fact that people have
>> the liberty to change the transport receiver configurations in LB.
>>
>> On Tue, Sep 9, 2014 at 8:36 AM, Akila Ravihansa Perera <
>> raviha...@wso2.com> wrote:
>>
>>> Hi Prasanna,
>>>
>>> This commenting is not relevant since LB axis2.xml is deployed via
>>> Puppet. Please check Puppet lb module templates.
>>> On 9 Sep 2014 08:19, "Prasanna Dangalla" <prasa...@wso2.com> wrote:
>>>
>>>> Hi sajith,
>>>>
>>>> In LB's axis2.xml file. (in <LB_HOME>/repository/conf/axis2/axis2.xml),
>>>> the below mentioned part is commented. Is this the reason because ports
>>>> 8280 and 8243 are commented in this.
>>>>
>>>>     <!-- uncomment for non blocking http transport based on HttpCore +
>>>> NIO extensions -->
>>>>     <!-- transportReceiver name="http"
>>>> class="org.apache.synapse.transport.nhttp.HttpCoreNIOListener">
>>>>         <parameter name="port" locked="false">8280</parameter>
>>>>         <parameter name="non-blocking" locked="false">true</parameter
>>>> -->
>>>>         <!--parameter name="bind-address" locked="false">hostname or IP
>>>> address</parameter-->
>>>>         <!--parameter name="WSDLEPRPrefix"
>>>> locked="false">https://apachehost:port/somepath</parameter-->
>>>>         <!-- parameter name="httpGetProcessor"
>>>> locked="false">org.wso2.carbon.transport.nhttp.api.NHttpGetProcessor</parameter>
>>>>     </transportReceiver -->
>>>>
>>>>     <!-- the non blocking https transport based on HttpCore + SSL-NIO
>>>> extensions -->
>>>>     <!-- transportReceiver name="https"
>>>> class="org.apache.synapse.transport.nhttp.HttpCoreNIOSSLListener">
>>>>         <parameter name="port" locked="false">8243</parameter>
>>>>         <parameter name="non-blocking" locked="false">true</parameter
>>>> -->
>>>>         <!--parameter name="bind-address" locked="false">hostname or IP
>>>> address</parameter-->
>>>>         <!--parameter name="WSDLEPRPrefix"
>>>> locked="false">https://apachehost:port/somepath</parameter-->
>>>>         <!-- parameter name="httpGetProcessor"
>>>> locked="false">org.wso2.carbon.transport.nhttp.api.NHttpGetProcessor</parameter>
>>>>         <parameter name="keystore" locked="false">
>>>>             <KeyStore>
>>>>
>>>> <Location>repository/resources/security/wso2carbon.jks</Location>
>>>>                 <Type>JKS</Type>
>>>>                 <Password>wso2carbon</Password>
>>>>                 <KeyPassword>wso2carbon</KeyPassword>
>>>>             </KeyStore>
>>>>         </parameter>
>>>>         <parameter name="truststore" locked="false">
>>>>             <TrustStore>
>>>>
>>>> <Location>repository/resources/security/client-truststore.jks</Location>
>>>>                 <Type>JKS</Type>
>>>>                 <Password>wso2carbon</Password>
>>>>             </TrustStore>
>>>>         </parameter -->
>>>>         <!--<parameter name="SSLVerifyClient">require</parameter>
>>>>             supports optional|require or defaults to none -->
>>>>     <!-- /transportReceiver -->
>>>>
>>>>
>>>> On Tue, Sep 9, 2014 at 12:04 AM, Chamila De Alwis <chami...@wso2.com>
>>>> wrote:
>>>>
>>>>> Setting proxyPort to 80 works successfully.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Regards,
>>>>> Chamila de Alwis
>>>>> Software Engineer | WSO2 | +94772207163
>>>>> Blog: code.chamiladealwis.com
>>>>>
>>>>>
>>>>>
>>>>> On Mon, Sep 8, 2014 at 10:42 PM, Udara Liyanage <ud...@wso2.com>
>>>>> wrote:
>>>>>
>>>>>> Instead of 0 could you try with 80.
>>>>>>
>>>>>>
>>>>>>
>>>>>> Touched, not typed. Erroneous words are a feature, not a typo.
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Prasanna Dangalla
>>>> Software Engineer, WSO2, Inc.; http://wso2.com/
>>>> lean.enterprise.middleware
>>>>
>>>> cell: +94 777 55 80 30 | +94 718 11 27 51
>>>> twitter: @prasa77
>>>>
>>>
>>
>>
>> --
>> Best Regards,
>> Nirmal
>>
>> Nirmal Fernando.
>> PPMC Member & Committer of Apache Stratos,
>> Senior Software Engineer, WSO2 Inc.
>>
>> Blog: http://nirmalfdo.blogspot.com/
>>
>
>


-- 
Prasanna Dangalla
Software Engineer, WSO2, Inc.; http://wso2.com/
lean.enterprise.middleware

cell: +94 777 55 80 30 | +94 718 11 27 51
twitter: @prasa77
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
  ~ 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                       -->
    <!-- ================================================= -->

    <!-- This will give out the timout of the configuration contexts, in milliseconds -->
    <parameter name="ConfigContextTimeoutInterval" locked="false">30000</parameter>

    <!-- Synapse Configuration file location relative to CARBON_HOME -->
    <parameter name="SynapseConfig.ConfigurationFile" locked="false">repository/deployment/server/synapse-configs</parameter>
    <!-- Synapse Home parameter -->
    <parameter name="SynapseConfig.HomeDirectory" locked="false">.</parameter>
    <!-- Resolve root used to resolve synapse references like schemas inside a WSDL -->
    <parameter name="SynapseConfig.ResolveRoot" locked="false">.</parameter>
    <!-- Synapse Server name parameter -->
    <parameter name="SynapseConfig.ServerName" locked="false">localhost</parameter>


    <!-- ================================================= -->
    <!--                Message Formatters                 -->
    <!-- ================================================= -->

    <!-- Following content type to message formatter mapping can be used to implement support -->
    <!-- for different message format serializations in Axis2. These message formats are -->
    <!-- expected to be resolved based on the content type. -->
    <messageFormatters>
        <!--messageFormatter contentType="application/xml"
                          class="org.apache.axis2.transport.http.ApplicationXMLFormatter"/>-->
        <!--messageFormatter contentType="text/xml"
                         class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>-->
        <!--messageFormatter contentType="application/soap+xml"
                         class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>-->
        <!--messageFormatter contentType="application/x-www-form-urlencoded"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
        <messageFormatter contentType="multipart/related"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="application/xml"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="application/txt"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="text/html"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="application/soap+xml"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="text/xml"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <!--messageFormatter contentType="x-application/hessian"
                         class="org.apache.synapse.format.hessian.HessianMessageFormatter"/-->
        <!--messageFormatter contentType=""
                         class="org.apache.synapse.format.hessian.HessianMessageFormatter"/-->

        <messageFormatter contentType="text/css"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="text/javascript"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>

        <messageFormatter contentType="image/gif"
                         class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="img/gif"
                         class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="image/jpeg"
                         class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="image/png"
                         class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="image/ico"
                         class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="image/x-icon"
                         class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>

	    <messageFormatter contentType="application/x-javascript"
                             class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
	    <messageFormatter contentType="application/x-shockwave-flash"
                             class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
	    <messageFormatter contentType="application/atom+xml"
                         class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="application/x-www-form-urlencoded"
                          class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
	    <messageFormatter contentType="application/xhtml+xml"
                              class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
	    <messageFormatter contentType="application/octet-stream"
                          class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="application/javascript"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>

        <messageFormatter contentType="multipart/form-data"
                          class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="application/soap+xml"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>

        <!--JSON Message Formatters-->
        <messageFormatter contentType="application/json"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="application/json/badgerfish"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>
        <messageFormatter contentType="text/javascript"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>


        <messageFormatter contentType=".*"
                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>

    </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.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="application/txt"
                        class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <!--messageBuilder contentType="application/xml"
                        class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
        <!--messageBuilder contentType="application/x-www-form-urlencoded"
                        class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
        <!--messageBuilder contentType="multipart/form-data"
                        class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
        <messageBuilder contentType="multipart/related"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="application/soap+xml"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="text/plain"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="text/xml"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <!--messageBuilder contentType="x-application/hessian"
                        class="org.apache.synapse.format.hessian.HessianMessageBuilder"/-->
        <!--messageBuilder contentType=""
                         class="org.apache.synapse.format.hessian.HessianMessageBuilder"/-->

        <!--JSON Message Builders-->
        <messageBuilder contentType="application/json"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="application/json/badgerfish"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="text/javascript"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>


        <messageBuilder contentType="text/html"
                                 class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="text/css"
                                 class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="text/javascript"
                                 class="org.wso2.carbon.relay.BinaryRelayBuilder"/>

        <messageBuilder contentType="image/gif"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="img/gif"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="image/jpeg"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="image/png"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="image/ico"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="image/x-icon"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>


	    <messageBuilder contentType="application/x-javascript"
                           class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
	    <messageBuilder contentType="application/x-shockwave-flash"
                           class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
	    <messageBuilder contentType="application/atom+xml"
                           class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
	    <messageBuilder contentType="application/x-www-form-urlencoded"
                            class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
	    <messageBuilder contentType="application/xhtml+xml"
                           class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
	    <messageBuilder contentType="application/octet-stream"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="application/javascript"
                                 class="org.wso2.carbon.relay.BinaryRelayBuilder"/>

        <messageBuilder contentType="multipart/form-data"
                        class="org.wso2.carbon.relay.BinaryRelayBuilder"/>
        <messageBuilder contentType="application/soap+xml"
                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/>


        <messageBuilder contentType=".*"
                        class="org.wso2.carbon.relay.BinaryRelayBuilder"/>

    </messageBuilders>

    <!-- ================================================= -->
    <!--             Transport Ins (Listeners)             -->
    <!-- ================================================= -->
    <!--Default trasnport will be passthrough if you need to change please add it here -->
   <transportReceiver name="http" class="org.apache.synapse.transport.passthru.PassThroughHttpListener">
      <parameter name="port">80</parameter>
      <parameter name="non-blocking"> true</parameter>
      <parameter name="httpGetProcessor" locked="false">org.wso2.carbon.transport.nhttp.api.PassThroughNHttpGetProcessor</parameter>
   </transportReceiver>
   <transportReceiver name="https" class="org.apache.synapse.transport.passthru.PassThroughHttpSSLListener">
        <parameter name="port" locked="false">443</parameter>
        <parameter name="non-blocking" locked="false">true</parameter>
        <parameter name="httpGetProcessor" locked="false">org.wso2.carbon.transport.nhttp.api.PassThroughNHttpGetProcessor</parameter>
        <!--parameter name="bind-address" locked="false">hostname or IP address</parameter-->
        <!--parameter name="WSDLEPRPrefix" locked="false">https://apachehost:port/somepath</parameter-->
        <parameter name="keystore" locked="false">
            <KeyStore>
                <Location>repository/resources/security/wso2carbon.jks</Location>
                <Type>JKS</Type>
                <Password>wso2carbon</Password>
                <KeyPassword>wso2carbon</KeyPassword>
            </KeyStore>
        </parameter>
        <parameter name="truststore" locked="false">
            <TrustStore>
                <Location>repository/resources/security/client-truststore.jks</Location>
                <Type>JKS</Type>
                <Password>wso2carbon</Password>
            </TrustStore>
        </parameter>
        <!--<parameter name="SSLVerifyClient">require</parameter>
            supports optional|require or defaults to none -->
    </transportReceiver>

    <!-- uncomment for non blocking http transport based on HttpCore + NIO extensions -->
    <!-- transportReceiver name="http" class="org.apache.synapse.transport.nhttp.HttpCoreNIOListener">
        <parameter name="port" locked="false">8280</parameter>
        <parameter name="non-blocking" locked="false">true</parameter -->
        <!--parameter name="bind-address" locked="false">hostname or IP address</parameter-->
        <!--parameter name="WSDLEPRPrefix" locked="false">https://apachehost:port/somepath</parameter-->
        <!-- parameter name="httpGetProcessor" locked="false">org.wso2.carbon.transport.nhttp.api.NHttpGetProcessor</parameter>
    </transportReceiver -->

    <!-- the non blocking https transport based on HttpCore + SSL-NIO extensions -->
    <!-- transportReceiver name="https" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSSLListener">
        <parameter name="port" locked="false">8243</parameter>
        <parameter name="non-blocking" locked="false">true</parameter -->
        <!--parameter name="bind-address" locked="false">hostname or IP address</parameter-->
        <!--parameter name="WSDLEPRPrefix" locked="false">https://apachehost:port/somepath</parameter-->
        <!-- parameter name="httpGetProcessor" locked="false">org.wso2.carbon.transport.nhttp.api.NHttpGetProcessor</parameter>
        <parameter name="keystore" locked="false">
            <KeyStore>
                <Location>repository/resources/security/wso2carbon.jks</Location>
                <Type>JKS</Type>
                <Password>wso2carbon</Password>
                <KeyPassword>wso2carbon</KeyPassword>
            </KeyStore>
        </parameter>
        <parameter name="truststore" locked="false">
            <TrustStore>
                <Location>repository/resources/security/client-truststore.jks</Location>
                <Type>JKS</Type>
                <Password>wso2carbon</Password>
            </TrustStore>
        </parameter -->
        <!--<parameter name="SSLVerifyClient">require</parameter>
            supports optional|require or defaults to none -->
    <!-- /transportReceiver -->

    <!-- ================================================= -->
    <!--             Transport Outs (Senders)              -->
    <!-- ================================================= -->
    <!--Default trasnport will be passthrough if you need to change please add it here -->
    <transportSender name="http"  class="org.apache.synapse.transport.passthru.PassThroughHttpSender">
        <parameter name="non-blocking" locked="false">true</parameter>
        <parameter name="warnOnHTTP500" locked="false">*</parameter>
        <!--parameter name="http.proxyHost" locked="false">localhost</parameter>
        <parameter name="http.proxyPort" locked="false">3128</parameter>
        <parameter name="http.nonProxyHosts" locked="false">localhost|moon|sun</parameter-->
    </transportSender>
    <transportSender name="https" class="org.apache.synapse.transport.passthru.PassThroughHttpSSLSender">
        <parameter name="non-blocking" locked="false">true</parameter>
        <parameter name="keystore" locked="false">
            <KeyStore>
                <Location>repository/resources/security/wso2carbon.jks</Location>
                <Type>JKS</Type>
                <Password>wso2carbon</Password>
                <KeyPassword>wso2carbon</KeyPassword>
            </KeyStore>
        </parameter>
        <parameter name="truststore" locked="false">
            <TrustStore>
                <Location>repository/resources/security/client-truststore.jks</Location>
                <Type>JKS</Type>
                <Password>wso2carbon</Password>
            </TrustStore>
        </parameter>
        <parameter name="HostnameVerifier">AllowAll</parameter>
        <!--supports Strict|AllowAll|DefaultAndLocalhost or the default if none specified -->
     </transportSender>

    <!-- Uncomment for non-blocking http transport based on HttpCore + NIO extensions -->
    <!-- transportSender name="http" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSender">
        <parameter name="non-blocking" locked="false">true</parameter>
    </transportSender>
    <transportSender name="https" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSSLSender">
        <parameter name="non-blocking" locked="false">true</parameter>
        <parameter name="keystore" locked="false">
            <KeyStore>
                <Location>repository/resources/security/wso2carbon.jks</Location>
                <Type>JKS</Type>
                <Password>wso2carbon</Password>
                <KeyPassword>wso2carbon</KeyPassword>
            </KeyStore>
        </parameter>
        <parameter name="truststore" locked="false">
            <TrustStore>
                <Location>repository/resources/security/client-truststore.jks</Location>
                <Type>JKS</Type>
                <Password>wso2carbon</Password>
            </TrustStore>
        </parameter>
        <parameter name="HostnameVerifier">AllowAll</parameter -->
            <!--supports Strict|AllowAll|DefaultAndLocalhost or the default if none specified -->
    <!-- /transportSender -->

    <transportSender name="local" class="org.apache.axis2.transport.local.LocalTransportSender"/>

    <!-- ================================================= -->
    <!--                Clustering                         -->
    <!-- ================================================= -->
    <!--
     To enable clustering for this node, set the value of "enable" attribute of the "clustering"
     element to "true". The initialization of a node in the cluster is handled by the class
     corresponding to the "class" attribute of the "clustering" element. It is also responsible for
     getting this node to join the cluster.
     -->
    <clustering class="org.apache.axis2.clustering.tribes.TribesClusteringAgent" enable="false">

        <!--
           This parameter indicates whether the cluster has to be automatically initalized
           when the AxisConfiguration is built. If set to "true" the initialization will not be
           done at that stage, and some other party will have to explictly initialize the cluster.
        -->
        <parameter name="AvoidInitiation">true</parameter>

        <!--
           The membership scheme used in this setup. The only values supported at the moment are
           "multicast" and "wka"

           1. multicast - membership is automatically discovered using multicasting
           2. wka - Well-Known Address based multicasting. Membership is discovered with the help
                    of one or more nodes running at a Well-Known Address. New members joining a
                    cluster will first connect to a well-known node, register with the well-known node
                    and get the membership list from it. When new members join, one of the well-known
                    nodes will notify the others in the group. When a member leaves the cluster or
                    is deemed to have left the cluster, it will be detected by the Group Membership
                    Service (GMS) using a TCP ping mechanism.
        -->
        <parameter name="membershipScheme">wka</parameter>

        <!--
         The clustering domain/group. Nodes in the same group will belong to the same multicast
         domain. There will not be interference between nodes in different groups.
        -->
        <parameter name="domain">lb.domain</parameter>

        <!--
           When a Web service request is received, and processed, before the response is sent to the
           client, should we update the states of all members in the cluster? If the value of
           this parameter is set to "true", the response to the client will be sent only after
           all the members have been updated. Obviously, this can be time consuming. In some cases,
           such this overhead may not be acceptable, in which case the value of this parameter
           should be set to "false"
        -->
        <parameter name="synchronizeAll">false</parameter>

        <!--
          The maximum number of times we need to retry to send a message to a particular node
          before giving up and considering that node to be faulty
        -->
        <parameter name="maxRetries">10</parameter>

        <!-- The multicast address to be used -->
        <parameter name="mcastAddress">228.0.0.4</parameter>

        <!-- The multicast port to be used -->
        <parameter name="mcastPort">45564</parameter>

        <!-- The frequency of sending membership multicast messages (in ms) -->
        <parameter name="mcastFrequency">500</parameter>

        <!-- The time interval within which if a member does not respond, the member will be
         deemed to have left the group (in ms)
         -->
        <parameter name="memberDropTime">3000</parameter>

        <!--
           The IP address of the network interface to which the multicasting has to be bound to.
           Multicasting would be done using this interface.
        -->
        <parameter name="mcastBindAddress">127.0.0.1</parameter>

        <!-- The host name or IP address of this member -->

        <parameter name="localMemberHost">10.0.1.166</parameter>


        <!--
        The TCP port used by this member. This is the port through which other nodes will
        contact this member
         -->
        <parameter name="localMemberPort">4000</parameter>

        <!--
        Preserve message ordering. This will be done according to sender order.
        -->
        <parameter name="preserveMessageOrder">false</parameter>

        <!--
        Maintain atmost-once message processing semantics
        -->
        <parameter name="atmostOnceMessageSemantics">false</parameter>

        <!--
           This interface is responsible for handling state replication. The property changes in
           the Axis2 context hierarchy in this node, are propagated to all other nodes in the cluster.

           The "excludes" patterns can be used to specify the prefixes (e.g. local_*) or
           suffixes (e.g. *_local) of the properties to be excluded from replication. The pattern
           "*" indicates that all properties in a particular context should not be replicated.

            The "enable" attribute indicates whether context replication has been enabled
        -->
        <stateManager class="org.apache.axis2.clustering.state.DefaultStateManager"
                      enable="false">
            <replication>
                <defaults>
                    <exclude name="local_*"/>
                    <exclude name="LOCAL_*"/>
                </defaults>
                <context class="org.apache.axis2.context.ConfigurationContext">
                    <exclude name="local_*"/>
                    <exclude name="UseAsyncOperations"/>
                    <exclude name="SequencePropertyBeanMap"/>
                </context>
                <context class="org.apache.axis2.context.ServiceGroupContext">
                    <exclude name="local_*"/>
                    <exclude name="my.sandesha.*"/>
                </context>
                <context class="org.apache.axis2.context.ServiceContext">
                    <exclude name="local_*"/>
                    <exclude name="my.sandesha.*"/>
                </context>
            </replication>
        </stateManager>
    </clustering>

    <!-- ================================================= -->
    <!--                    Phases                         -->
    <!-- ================================================= -->

    <phaseOrder type="InFlow">
        <!--  System pre defined phases       -->
        <phase name="Transport"/>
        <phase name="Addressing"/>
        <phase name="Security"/>
        <phase name="PreDispatch"/>
        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase"/>
        <!--  System pre defined phases       -->
        <phase name="RMPhase"/>
        <phase name="OpPhase"/>
    </phaseOrder>

    <phaseOrder type="OutFlow">
        <!-- Handlers related to unified-endpoint component are added to the UEPPhase -->
        <phase name="UEPPhase" />
        <!--      user can add his own phases to this area  -->
        <phase name="RMPhase"/>
        <phase name="MUPhase"/>
        <phase name="OpPhase"/>
        <phase name="OperationOutPhase"/>
        <!--system predefined phase-->
        <!--these phase will run irrespective of the service-->
        <phase name="PolicyDetermination"/>
        <phase name="MessageOut"/>
        <phase name="Security"/>
    </phaseOrder>

    <phaseOrder type="InFaultFlow">
        <phase name="Transport"/>
        <phase name="Addressing"/>
        <phase name="Security"/>
        <phase name="PreDispatch"/>
        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase"/>
        <!--      user can add his own phases to this area  -->
        <phase name="RMPhase"/>
        <phase name="OpPhase"/>
        <phase name="MUPhase"/>
        <phase name="OperationInFaultPhase"/>
    </phaseOrder>

    <phaseOrder type="OutFaultFlow">
        <!-- Handlers related to unified-endpoint component are added to the UEPPhase -->
        <phase name="UEPPhase" />
        <!--      user can add his own phases to this area  -->
        <phase name="RMPhase"/>
        <!-- Must Understand Header processing phase -->
        <phase name="MUPhase"/>
        <phase name="OperationOutFaultPhase"/>
        <phase name="PolicyDetermination"/>
        <phase name="MessageOut"/>
        <phase name="Security"/>
    </phaseOrder>

</axisconfig>

Reply via email to