Hi,

I am using Synapse1.1. I want to expose a proxy service that can do a
database read.

I decided to use the DBLookup mediator. In the samples packaged (sample
360,361) , a webservice endpoint (StockQuoteProxy) is used , wherein the
record set returned by the dblookup mediator  is sent to the StockQuoteProxy
and the response in handled by the "OutGoing Message Sequence" to forward to
the client. I do not wish to use the webservice endpoint , but rather return
the record set from the SQL select statement to the webservice client
directly.

So I wrote a synapse config having a  Proxy Service resembling the below :

<proxy name="someName">
<target>
 <inSequence>
 <dblookup>
...
</dblookup>
<header name="To" expression="get-property('ReplyTo')"/>
<send/>
<drop/>
</inSequence>
<outSequence>
<drop/>
</outSequence>
</target>
<syn:publishWSDL
uri="file:repository/conf/sample/resources/proxy/sample_proxy_1.wsdl"/>
</proxy>

My client read the exposed Proxy WSDL and figured out what port to use and
dispatched the request.
>From the synapse server logs, I observed that the DBLookup happened , but
after that there was an exception :

2007-11-28 13:02:19,683 [xxxx] [HttpServerWorker-3] ERROR Axis2Sender
Unexpected error during send
ing message out
org.apache.axis2.AxisFault: The system cannot infer the transport
information from the  URL.
        at org.apache.axis2.description.ClientUtils.inferOutTransport(
ClientUtils.java:73)
        at
org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl
(DynamicAxisOperation.ja
va:157)
        at org.apache.axis2.client.OperationClient.execute(
OperationClient.java:163)
        at org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(
Axis2FlexibleMEPClient.java:294)
        at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java
:55)
        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(
Axis2SynapseEnvironment.java:200)
        at org.apache.synapse.mediators.builtin.SendMediator.mediate(
SendMediator.java:97)
        at org.apache.synapse.mediators.AbstractListMediator.mediate(
AbstractListMediator.java:60)
        at org.apache.synapse.mediators.base.SequenceMediator.mediate(
SequenceMediator.java:122)
        at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive
(ProxyServiceMessageReceiver.java:140)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:145)
        at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(
HTTPTransportUtils.java:275)
        at org.apache.synapse.transport.nhttp.ServerWorker.processPost(
ServerWorker.java:218)
        at org.apache.synapse.transport.nhttp.ServerWorker.run(
ServerWorker.java:182)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(
ThreadPoolExecutor.java:650)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(
ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)
2007-11-28 13:02:19,694 [xxxxx] [HttpServerWorker-3]  WARN
ProxyServiceMessageReceiver Executing fa
ult handler due to exception encountered
2007-11-28 13:02:19,699 [xxxx] [HttpServerWorker-3]  WARN FaultHandler Fault
handler - setting ERR
OR_MESSAGE : Unexpected error during sending message out
2007-11-28 13:02:19,700 [xxxx] [HttpServerWorker-3]  WARN FaultHandler Fault
handler - setting ERR
OR_DETAIL : org.apache.synapse.SynapseException: Unexpected error during
sending message out
        at org.apache.synapse.core.axis2.Axis2Sender.handleException(
Axis2Sender.java:113)
        at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java
:62)
        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(
Axis2SynapseEnvironment.java:200)
        at org.apache.synapse.mediators.builtin.SendMediator.mediate(
SendMediator.java:97)
        at org.apache.synapse.mediators.AbstractListMediator.mediate(
AbstractListMediator.java:60)
        at org.apache.synapse.mediators.base.SequenceMediator.mediate(
SequenceMediator.java:122)
        at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive
(ProxyServiceMessageReceiver.java:140)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:145)
        at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(
HTTPTransportUtils.java:275)
        at org.apache.synapse.transport.nhttp.ServerWorker.processPost(
ServerWorker.java:218)
        at org.apache.synapse.transport.nhttp.ServerWorker.run(
ServerWorker.java:182)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(
ThreadPoolExecutor.java:650)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(
ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)
Caused by: org.apache.axis2.AxisFault: The system cannot infer the transport
information from the  URL.
        at org.apache.axis2.description.ClientUtils.inferOutTransport(
ClientUtils.java:73)
        at
org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl
(DynamicAxisOperation.ja
va:157)
        at org.apache.axis2.client.OperationClient.execute(
OperationClient.java:163)
        at org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(
Axis2FlexibleMEPClient.java:294)
        at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java
:55)
        ... 12 more


Was there something wrong in the proxy configuration that I wrote. Please
advise.

Thanks in advance.
Eric.

Reply via email to