*First build the cxf bundle and add it to the dropins folder, you'll have
to build Spring bundle and add that as well.*
*This is the cxf inbound endpoint definition which needs to go to
/repository/deployment/server/synapse-configs/default/inbound-endpoints
folder. It can have any name e.g. rminbound.xml*
*Note that it reads a config file (attached), that config file contains the
RM protocol config. e.g. How often should the server send acknowledgements.*

<inboundEndpoint name="HttpListenerRMEP"
      protocol="cxf_ws_rm" interval="10000" suspend="false"
   sequence="RMIn" onError="fault" class="">
   <p:parameters xmlns:p="http://ws.apache.org/ns/synapse";>
      <p:parameter  name="inbound.cxf.rm.port">8081</p:parameter>
      <p:parameter  name="inbound.cxf.rm.host">localhost</p:parameter>
      <p:parameter
 name="inbound.cxf.rm.config-file">repository/conf/cxf/server.xml</p:parameter>
   </p:parameters>
</inboundEndpoint>

*This is the Synapse config. I'm removing RM headers in the in sequence
because the back end doesn't support RM.*

<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://ws.apache.org/ns/synapse";>

   <sequence name="RMOut" onError="fault">
      <log level="full" />
      <send />
   </sequence>
   <sequence name="RMIn" onError="fault">
      <in>
         <property name="PRESERVE_WS_ADDRESSING" value="true" />
         <log level="full" />
         <header xmlns:wsrm="http://schemas.xmlsoap.org/ws/2005/02/rm";
name="wsrm:Sequence" action="remove" />
         <header xmlns:wsa="http://www.w3.org/2005/08/addressing";
name="wsa:To" action="remove" />
         <header xmlns:wsa="http://www.w3.org/2005/08/addressing";
name="wsa:FaultTo" action="remove" />
         <send>
            <endpoint>
               <address uri="
http://localhost:9000/services/SimpleStockQuoteService"; />
            </endpoint>
         </send>
      </in>
      <out>
         <log level="full" />
         <send />
      </out>
   </sequence>
   <sequence name="fault">
      <log level="full">
         <property name="MESSAGE" value="Executing default
&quot;fault&quot; sequence" />
         <property name="ERROR_CODE"
expression="get-property('ERROR_CODE')" />
         <property name="ERROR_MESSAGE"
expression="get-property('ERROR_MESSAGE')" />
      </log>
      <drop />
   </sequence>
   <sequence name="main">
      <log />
      <send />
      <drop />
   </sequence>
</definitions>

*Using the stockquote client to invoke the service*

ant stockquote -Dsymbol=IBM -Dmode=quote -Daddurl=http://localhost:8081
-Dwsrm=true

Sandamal Weerasinghe | Software Engineer | WSO2 Lanka (Pvt) Ltd

Mobile - +94-77-144-9640

On Mon, Mar 16, 2015 at 10:41 PM, Sandamal Weerasinghe <[email protected]>
wrote:

> Hi all,
>
> Please find the pull requests for the above feature. In the orbit bundle I
> embedded the dependencies because many of them don't have osgi bundles and
> this would ensure that the RM Inbound feature would have all the
> dependencies it would need. For the RM Connector we can use the work done
> by Pasadi as a starting point (
> https://svn.wso2.com/wso2/interns/2013/pasadi/CXFWsdlToJava/)
>
> Thanks.
>
> https://github.com/wso2/orbit/pull/71
> https://github.com/wso2/carbon-mediation/pull/82
>
> Sandamal Weerasinghe | Software Engineer | WSO2 Lanka (Pvt) Ltd
>
> Mobile - +94-77-144-9640
>
<?xml version="1.0" encoding="UTF-8"?>
<!--
  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.
-->
<beans xmlns="http://www.springframework.org/schema/beans"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";  xmlns:wsa="http://cxf.apache.org/ws/addressing"; xmlns:http="http://cxf.apache.org/transports/http/configuration"; xmlns:wsrm-policy="http://schemas.xmlsoap.org/ws/2005/02/rm/policy"; xmlns:wsrm-mgr="http://cxf.apache.org/ws/rm/manager"; xsi:schemaLocation="http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd        http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd        http://schemas.xmlsoap.org/ws/2005/02/rm/policy http://schemas.xmlsoap.org/ws/2005/02/rm/wsrm-policy.xsd        http://cxf.apache.org/ws/rm/manager http://cxf.apache.org/schemas/configuration/wsrm-manager.xsd        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"; xmlns:cxf="http://cxf.apache.org/core";>
    <cxf:bus>
        <cxf:features>
            <wsa:addressing/>
            <wsrm-mgr:reliableMessaging>
                <wsrm-policy:RMAssertion>
                    <wsrm-policy:BaseRetransmissionInterval Milliseconds="4000"/>
                    <wsrm-policy:AcknowledgementInterval Milliseconds="2000"/>
                </wsrm-policy:RMAssertion>
                <wsrm-mgr:destinationPolicy>
                    <wsrm-mgr:acksPolicy intraMessageThreshold="0"/>
                </wsrm-mgr:destinationPolicy>
            </wsrm-mgr:reliableMessaging>
        </cxf:features>
    </cxf:bus>
</beans>
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to