Hi Anupama,

We set *OUT_ONLY *property to "true" on a message to indicate that no
response message is expected for it once it is forwarded from the ESB. This
prevents  the ESB from registering unnecessary callbacks for response
handling.

One possible option to get sample working for client modes, We can check
the header value and change synapse configuration accordingly. We can
support for both types of operations by using config[1].


[1].

<?xml version="1.0" encoding="UTF-8"?><proxy
xmlns="http://ws.apache.org/ns/synapse"; name="StockQuoteProxy"
transports="https,http" statistics="disable" trace="disable"
startOnLoad="true">
   <target>
      <inSequence>
         <filter xmlns:wsa="http://www.w3.org/2005/08/addressing";
source="$header/wsa:Action" regex="urn:placeOrder">
            <then>
               <property name="OUT_ONLY" value="true" scope="default"
type="STRING" />
            </then>
         </filter>
      </inSequence>
      <outSequence>
         <send />
      </outSequence>
      <endpoint>
         <address
uri="http://localhost:9000/services/SimpleStockQuoteService"; />
      </endpoint>
   </target>
   <publishWSDL
uri="file:repository/samples/resources/proxy/sample_proxy_1.wsdl" />
   <description /></proxy>


Thanks,

Vijitha.


On Fri, Dec 18, 2015 at 6:00 PM, Anupama Pathirage <anup...@wso2.com> wrote:

>
> Hi team,
>
> I get the following exception when I run the Sample 150 (Introduction to
> Proxy Services) in the WSO2 ESB 4.9.0 as mentioned in the [1
> <https://docs.wso2.com/display/ESB490/Sample+150%3A+Introduction+to+Proxy+Services>]
> with the client mode "placeorder" even though the order is placed correctly
> in the back end service.
>
> *Client Command used:*
> ant stockquote -Daddurl=http://localhost:8280/services/StockQuoteProxy
> -Dmode=placeorder -Dsymbol=MSFT
>
> *ESB Exception:*
> [2015-12-18 17:00:04,072] ERROR - NativeWorkerPool Uncaught exception
> java.lang.UnsupportedOperationException: An access occurred that is not
> valid.
>     at
> org.apache.axis2.description.InOnlyAxisOperation.getMessage(InOnlyAxisOperation.java:117)
>     at
> org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:299)
>     at
> org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:172)
>     at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
>     at
> org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:247)
>     at
> org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
>     at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>     at java.lang.Thread.run(Thread.java:745)
>
> Since “PlaceOrder” is a method which does not return anything as a
> response for a request, it was possible to avoid this exception by setting
> the property OUT_ONLY for the in sequence as follows [2
> <https://docs.wso2.com/display/ESB403/Generic+Properties>].
>
> <inSequence>
>     <property name="OUT_ONLY" value="true" scope="default" type="STRING"/>
> </inSequence>
>
> But this make the other client modes such as "quote" not working because
> it is trying to send a request which expects a response through an OUT_ONLY
> proxy which must be wrong in theoretically. So can you please let me know
> the proper way of handling above ESB exception while providing the support
> for both types of operations.
>
>
> [1]
> https://docs.wso2.com/display/ESB490/Sample+150%3A+Introduction+to+Proxy+Services
> [2] https://docs.wso2.com/display/ESB403/Generic+Properties
>
> Thanks and Regards,
> --
> Anupama Pathirage
> Associate Technical Lead
> WSO2, Inc.  http://wso2.com/
> Email: anup...@wso2.com
> Mobile:+94 71 8273 979
>
>
> _______________________________________________
> Dev mailing list
> Dev@wso2.org
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>


-- 
Vijitha Ekanayake
Software Engineer*, *WSO2, Inc.; http://wso2.com/
Mobile : +94 777 24 73 39 | +94 718 74 44 08
lean.enterprise.middleware
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to