Tomee JAX-WS Enpoint.publish not running on specified port

19 Views Asked by At

Migrating an existing application to TomEE, which uses JAX-WS javax.xml.ws.Endpoint. The following code does not open port 7001.

@WebServiceProvider
@ServiceMode(value=Service.Mode.PAYLOAD)
public final class WsProvider implements Provider<Source> {
  ...
  public void start() {
    String publishAddress = "http://0.0.0.0:7001/v1.0.1/soap";
    Endpoint endPoint = Endpoint.create(this);
    endPoint.publish(publishAddress);
    log.debug("published: " + endPoint.isPublished());
  }

TomEE log:

2023-09-24 05:06:05.526 INFO [main] org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass Creating Service {http://ws.app.com/} WsProviderService from class com.app.ws.WsProvider
2023-09-24 05:06:05.969 INFO [main] org.apache.cxf.endpoint.ServerImpl.initDestination Setting the server's publish address to be http://0.0.0.0:7001/v1.0.1/soap
2023-09-24 05:06:05.994 DEBUG: published: true

7001 not in the list of open ports:

lsof -i -P -n | grep LISTEN | grep java

java      4859            root   21u  IPv4  34883      0t0  TCP *:9998 (LISTEN)
java      4859            root   22u  IPv4  34884      0t0  TCP *:9999 (LISTEN)
java      4859            root   23u  IPv4  34885      0t0  TCP *:42883 (LISTEN)
java      4859            root  219u  IPv4  34886      0t0  TCP *:8080 (LISTEN)
java      4859            root  232u  IPv4  34905      0t0  TCP 127.0.0.1:61616 (LISTEN)
java      4859            root  296u  IPv4  34942      0t0  TCP 127.0.0.1:8005 (LISTEN)

Environment:

  • TomEE 8.0.15
  • Java 1.8.0_181
  • Ubuntu 5.15.0-84-generic

There are no exceptions, the app deploys and runs fine on TomEE, except it does not listen on port 7001. The same app runs as expected on Weblogic and Tomcat. Is there a TomEE specific configuration that needs to be enabled to make this work?

0

There are 0 best solutions below