Thank you very much for the info Ruwan. I used the property mediator approach to overcome a similar issue I faced when working with JMS to HTTP scenario with ESB. So based on your explanation, it seems that the header mediator is specifically designed to work with headers where as the property mediator can be used to set/remove any property in general. Please correct me if I am wrong here. Anyway I will sure have a look at the code.

Thanks
Saliya

Ruwan Linton wrote:
Saliya,

I guess what Paul suggested is the correct way of doing this, because even
though you set the transport header it will be overridden by the message
context action value. So there is a special header called Action in the
header mediator which will call the messageContext.setAction() with the
given value which is the correct approach.

Further there are some more special headers that the header mediator takes
care of and you could have a look at the header mediator source to find
them. (For example: To, ReplyTo, From)

Thanks,
Ruwan

On Thu, Oct 16, 2008 at 9:09 AM, Saliya Ekanayake <[EMAIL PROTECTED]> wrote:

Hi Joaquin,

Use the Property mediator to set the SOAP Action header. See the example
below.

<syn:property name="SOAPAction" value="echo" scope="transport"/>

Note: you have to set the scope to transport.

Regards,
Saliya


Paul Fremantle wrote:

Joaquin

I think what is happening is that Axis2 is expecting a SOAP Action for
the operation, and that isn't set, because that doesn't exist in JMS.

Please add a mediator:
  <header name="Action" value="urn:echo"/>

(Assuming that is the right action for your service).

Paul


On Wed, Oct 15, 2008 at 4:24 PM, Joaquin Caraballo
<[EMAIL PROTECTED]> wrote:


Hi everybody,

I'm trying to forward a message received from a jms queue to a SOAP
service, but the message doesn't arrive to the SOAP service. Instead,
I get  a "HTTP/1.1 500 The endpoint reference (EPR) for the Operation
not found" error.

My synapse.xml looks like this:

<definitions xmlns="http://ws.apache.org/ns/synapse";>
  <proxy name="queueName" transports="jms">
      <target>
          <inSequence>
              <class name="path.to.DummyMediator" />
           </inSequence>
           <endpoint>
               <wsdl
uri="http://localhost:8081/axis2/services/EchoService?wsdl";
service="EchoService" port="EchoServiceHttpSoap11Endpoint"/>
           </endpoint>
      </target>
  </proxy>
</definitions>

Do you see any problems in my configuration? Please could you help me?

Thanks a lot!

Best regards,

--Joaquin




I also include the logging lines around the EPR error:

2008-10-15 15:37:28,393 [192.168.1.100-bob] [JMSWorker-1] DEBUG
ProxyServiceMessageReceiver Forwarding the message to the anonymous
endpoint of the proxy service
2008-10-15 15:37:28,393 [192.168.1.100-bob] [JMSWorker-1] DEBUG
WSDLEndpoint Start : WSDL Endpoint
2008-10-15 15:37:28,393 [192.168.1.100-bob] [JMSWorker-1] DEBUG
WSDLEndpoint Sending message to WSDL endpoint : AnonymousEndpoint
resolves to address =

http://192.168.1.100:8081/axis2/services/EchoService.EchoServiceHttpSoap11Endpoint/
2008-10-15 15:37:28,393 [192.168.1.100-bob] [JMSWorker-1] DEBUG
WSDLEndpoint SOAPAction: null
2008-10-15 15:37:28,393 [192.168.1.100-bob] [JMSWorker-1] DEBUG
WSDLEndpoint WSA-Action: null
2008-10-15 15:37:28,396 [192.168.1.100-bob] [JMSWorker-1] DEBUG
Axis2FlexibleMEPClient Sending [add = false] [sec = false] [rm =
false] [mtom = false] [swa = false] [format = soap11] [force
soap11=true] [force soap12=false] [pox=false] [get=false]
[encoding=null] [to null]
2008-10-15 15:37:28,410 [192.168.1.100-bob] [JMSWorker-1]  INFO
TimeoutHandler This engine will expire all callbacks after : 86400
seconds, irrespective of the timeout action, after the specified or
optional timeout
2008-10-15 15:37:28,412 [192.168.1.100-bob] [JMSWorker-1]  WARN
JMSConnectionFactory Error looking up destination with JNDI name :
__NONE__ to map its corresponding provider specific Destination name
2008-10-15 15:37:28,412 [192.168.1.100-bob] [JMSWorker-1]  WARN
JMSConnectionFactory JMS Destination with JNDI name : __NONE__ does
not exist
2008-10-15 15:37:28,418 [192.168.1.100-bob] [JMSWorker-1]  WARN
JMSConnectionFactory JMS Destination with JNDI name : __NONE__ created
2008-10-15 15:37:28,419 [192.168.1.100-bob] [JMSWorker-1]  INFO
JMSConnectionFactory Mapping JNDI name : __NONE__ and JMS Destination
name : __NONE__ against service : __NONE__
2008-10-15 15:37:28,419 [192.168.1.100-bob] [JMSWorker-1]  WARN
JMSConnectionFactory Cannot find destination : __NONE__ Creating a
Queue with this name
2008-10-15 15:37:28,421 [192.168.1.100-bob] [JMSWorker-1]  INFO
JMSListener Started listening on destination : __NONE__ for service
__NONE__
2008-10-15 15:37:28,423 [192.168.1.100-bob] [JMSWorker-1] DEBUG
SynapseCallbackReceiver Callback added. Total callbacks waiting for :
1
2008-10-15 15:37:28,433 [192.168.1.100-bob] [JMSWorker-1] DEBUG
ConnectionPool No connections available for reuse
2008-10-15 15:37:28,435 [192.168.1.100-bob] [JMSWorker-1] DEBUG
HttpCoreNIOSender A new connection established to : 192.168.1.100:8081
2008-10-15 15:37:28,435 [192.168.1.100-bob] [JMSWorker-1] DEBUG
Axis2HttpRequest start streaming outgoing http request
2008-10-15 15:37:28,462 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
ClientHandler HTTP connection [/192.168.1.100:8081]: Connected
([EMAIL PROTECTED])
2008-10-15 15:37:28,462 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
ClientHandler ClientHandler connected : [/192.168.1.100:8081]
2008-10-15 15:37:28,465 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
SOAPMessageFormatter contentType from the OMOutputFormat =text/xml
2008-10-15 15:37:28,465 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
SOAPMessageFormatter contentType returned =text/xml; charset=UTF-8
2008-10-15 15:37:28,469 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
headers >> POST

http://192.168.1.100:8081/axis2/services/EchoService.EchoServiceHttpSoap11Endpoint/
HTTP/1.1
2008-10-15 15:37:28,469 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
headers >> Content-Type: text/xml; charset=UTF-8
2008-10-15 15:37:28,469 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
headers >> Transfer-Encoding: chunked
2008-10-15 15:37:28,469 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
headers >> Host: 192.168.1.100:8081
2008-10-15 15:37:28,469 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
headers >> Connection: Keep-Alive
2008-10-15 15:37:28,469 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
headers >> User-Agent: Synapse-HttpComponents-NIO
2008-10-15 15:37:28,470 [192.168.1.100-bob] [JMSWorker-1] DEBUG
SOAPMessageFormatter start writeTo()
2008-10-15 15:37:28,470 [192.168.1.100-bob] [JMSWorker-1] DEBUG
SOAPMessageFormatter   preserve=false
2008-10-15 15:37:28,470 [192.168.1.100-bob] [JMSWorker-1] DEBUG
SOAPMessageFormatter   isOptimized=false
2008-10-15 15:37:28,470 [192.168.1.100-bob] [JMSWorker-1] DEBUG
SOAPMessageFormatter   isDoingSWA=false
2008-10-15 15:37:28,471 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
ClientHandler HTTP connection [/192.168.1.100:8081]: Output ready
2008-10-15 15:37:28,471 [192.168.1.100-bob] [JMSWorker-1] DEBUG
SOAPMessageFormatter end writeTo()
2008-10-15 15:37:28,471 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
ClientHandler HTTP connection [/192.168.1.100:8081]: Content encoder
[chunk-coded; completed: false]
2008-10-15 15:37:28,472 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
ClientHandler HTTP connection [/192.168.1.100:8081]: Output ready
2008-10-15 15:37:28,472 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
ClientHandler HTTP connection [/192.168.1.100:8081]: Content encoder
[chunk-coded; completed: true]
2008-10-15 15:37:28,472 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
ClientHandler HTTP connection [/192.168.1.100:8081]: Request ready
2008-10-15 15:37:28,486 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
ClientHandler HTTP connection [/192.168.1.100:8081]: HTTP/1.1 500 The
endpoint reference (EPR) for the Operation not found is
192.168.1.100
http://192.168.1.100:8081/axis2/services/EchoService.EchoServiceHttpSoap11Endpoint/
and the WSA Action = null
2008-10-15 15:37:28,486 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
ClientHandler Received an internal server error with a SOAP payload
2008-10-15 15:37:28,488 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
headers << HTTP/1.1 500 The endpoint reference (EPR) for the Operation
not found is 192.168.1.100
http://192.168.1.100:8081/axis2/services/EchoService.EchoServiceHttpSoap11Endpoint/
and the WSA Action = null
2008-10-15 15:37:28,488 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
headers << Date: Wed, 15 Oct 2008 14:37:28 GMT
2008-10-15 15:37:28,488 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
headers << Server: Simple-Server/1.1
2008-10-15 15:37:28,488 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
headers << Transfer-Encoding: chunked
2008-10-15 15:37:28,488 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
headers << Content-Type: text/xml; charset=UTF-8
2008-10-15 15:37:28,488 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
headers << Connection: Keep-Alive
2008-10-15 15:37:28,488 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
ClientHandler HTTP connection [/192.168.1.100:8081]: Input ready
2008-10-15 15:37:28,492 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
ConnectionPool Released a connection to host: 192.168.1.100 on port :
8081 to the connection pool of current size : 1
2008-10-15 15:37:28,492 [192.168.1.100-bob] [I/O dispatcher 1] DEBUG
ClientHandler HTTP connection [/192.168.1.100:8081]: Content decoder
[chunk-coded; completed: true]
2008-10-15 15:37:28,494 [192.168.1.100-bob] [HttpClientWorker-1] DEBUG
TransportUtils createSOAPEnvelope using Builder (class
org.apache.axis2.builder.SOAPBuilder) selected from type (text/xml)
2008-10-15 15:37:28,498 [192.168.1.100-bob] [HttpClientWorker-1] DEBUG
SynapseCallbackReceiver Callback removed. Pending callbacks count : 0
2008-10-15 15:37:28,498 [192.168.1.100-bob] [HttpClientWorker-1] DEBUG
SynapseCallbackReceiver Synapse received an asynchronous response
message
2008-10-15 15:37:28,498 [192.168.1.100-bob] [HttpClientWorker-1] DEBUG
SynapseCallbackReceiver Received To: null
2008-10-15 15:37:28,498 [192.168.1.100-bob] [HttpClientWorker-1] DEBUG
SynapseCallbackReceiver SOAPAction:
2008-10-15 15:37:28,498 [192.168.1.100-bob] [HttpClientWorker-1] DEBUG
SynapseCallbackReceiver WSA-Action:
2008-10-15 15:37:28,505 [192.168.1.100-bob] [HttpClientWorker-1] DEBUG
SynapseCallbackReceiver Body :
<?xml version='1.0' encoding='utf-8'?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/
"><soapenv:Body><soapenv:Fault
xmlns:axis2ns4="http://schemas.xmlsoap.org/soap/envelope/
"><faultcode>axis2ns4:Client</faultcode><faultstring>The
endpoint reference (EPR) for the Operation not found is
192.168.1.100
http://192.168.1.100:8081/axis2/services/EchoService.EchoServiceHttpSoap11Endpoint/
and the WSA Action =
null</faultstring><detail><Exception>org.apache.axis2.AxisFault: The
endpoint reference (EPR) for the Operation not found is
192.168.1.100
http://192.168.1.100:8081/axis2/services/EchoService.EchoServiceHttpSoap11Endpoint/
and the WSA Action = null
      at
org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:89)
      at org.apache.axis2.engine.Phase.invoke(Phase.java:333)
      at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
      at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163)
      at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
      at
org.apache.axis2.transport.http.HTTPWorker.service(HTTPWorker.java:278)
      at
org.apache.axis2.transport.http.server.AxisHttpService.doService(AxisHttpService.java:281)
      at
org.apache.axis2.transport.http.server.AxisHttpService.handleRequest(AxisHttpService.java:187)
      at
org.apache.axis2.transport.http.server.HttpServiceProcessor.run(HttpServiceProcessor.java:82)
      at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
      at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
      at java.lang.Thread.run(Thread.java:613)
</Exception></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope>
2008-10-15 15:37:28,507 [192.168.1.100-bob] [HttpClientWorker-1] DEBUG
Axis2SynapseEnvironment Injecting MessageContext
2008-10-15 15:37:28,507 [192.168.1.100-bob] [HttpClientWorker-1] DEBUG
Axis2SynapseEnvironment Proxy service queueName does not specifies an
out-sequence - sending the response back









Reply via email to