1

I tried to expose multiple ports on one endpoint. The bindings are equal - SOAP.

<service name="Test">
<port name="CustomerPort" binding="tns:BindingOne">
<soap:address location="http://localhost:8080/ode/processes/Test" />
</port>
<port name="GuidePort" binding="tns:BindingTwo">
<soap:address location="http://localhost:8080/ode/processes/Test" />
</port>
</service>

For some reason only one port is exposed. In WCF this would work. Any suggestions?

stefankolb
  • 328
  • 3
  • 16

1 Answers1

0

ODE uses Axis2 for exposing Web services, so if it does not work, it is most likely a limitation of Axis2. Though, I'm not sure if it is a limitation at all, my gut feeling is that exposing two different ports at the same EPR is a bad idea.

vanto
  • 3,134
  • 18
  • 28
  • Why should it be a bad idea? Isn't it just the idea of having different interfaces for one service at the same endpoint, which could serve different roles the service could be involved? – stefankolb May 07 '12 at 23:42
  • Hm, you're probably right. I haven't seen such a scenario in real world yet, all combined services I've seen so far have used different EPRs. In this case it might be a limitation of ODE since it [extracts](https://github.com/apache/ode/blob/trunk/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEAxisServiceDispatcher.java) the service name from the EPR. If a SOAPActionBasedServiceDispatcher is invoked before, it may work. – vanto May 08 '12 at 08:01