[jboss-dev-forums] [JBoss ESB Development] - Exposing webservice on ESB using SoapProcessor - wrong soap:address

Mikael Jørgensen do-not-reply at jboss.com
Fri Aug 13 08:54:04 EDT 2010


Mikael Jørgensen [http://community.jboss.org/people/mikaelfj] created the discussion

"Exposing webservice on ESB using SoapProcessor - wrong soap:address"

To view the discussion, visit: http://community.jboss.org/message/557289#557289

--------------------------------------------------------------
Hi,

I'm building up some action pipelines in JBoss ESB.

The first action is a webservice, exposed by the SoapProcessor - and the idea is to let the action pipeline be triggered by an invokation of the webservice, and then to have the next actions perform various tasks based on the content of the provided Message.

It seems as if there are two ways of getting the WSDL for the webservice
* Through  http://host:8080/contract/ http://host:8080/contract/... 
* Through  http://host:8080/Webservice.../....WS?wsdl http://host:8080/Webservice.../....WS?wsdl

The first is the one generated by the ESB and and the latter is (if understood correctly) the one generated by JBossWS.

If I use the latter one, then when I invoke the webservice, the Message gotten from SOAPProcessor.getMessage() is null, and if I understood it correctly, I need to use the first WSDL that refers to the specific port that was defined for the JBR provider that my service listens to.

So all this works fine when running it all locally - i.e. I have a webservice client that uses the WSDL obrtained from  http://host:8080/contract/ http://host:8080/contract/... to invoke the webservice.

But, if I deploy the ESB/action pipeline on a remote server it breaks.

I expect that the cause of the problem is, that the WSDL returned from  http://host:8080/contract/...contains http://host:8080/contract/...contains a soap:address looking like:
<soap:address location=" http://localhost:8770/ http://localhost:8770/"/>
and this address does not make sense when the webservice is deployed on a remote host.
It looks like the soap:address of the WSDL just contains the string from the host attribute in the JBR provider definition from the jboss-esb.xml.

Is this how it is supposed to be?
If it is, how am I supposed to deploy the ESB stuff remotely - I't can't be that I need to alter the host attribute of the JBR provided to match the hostname of the machine it is deployed to.

If this is not how it is supposed to be - how do I get hold on the proper WSDL which points to the proper host and port.

(Or am I doing this entirely wrong ....?)

Regards
Mikael

--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/557289#557289]

Start a new discussion in JBoss ESB Development at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2032]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-dev-forums/attachments/20100813/4b57a624/attachment.html 


More information about the jboss-dev-forums mailing list