soap 网络服务端点发布

soap web service Endpoint publish

我正在实施一些基于 soap 的网络服务,但我对发布 wsdl 感到有些困惑。

一段代码:

    public class HelloWorldPublisher{  
          public static void main(String[] args) {  
             Endpoint.publish("http://localhost:9999/ws/hello", new HelloWorldImpl());  
         }  
    }

现在,当我 运行 生成 WSDL 时,我可以使用 link:

访问它
http://localhost:9999/ws/hello?wsdl

这怎么可能?没有服务器在端口 9999 上侦听,但我仍然能够获得 wsdl。

任何澄清都很好。

您使用的是 JAX-WS 的 RPC 风格。一旦你这样做 Endpoint.publish java 默认使用一个轻量级的 HTTP 服务器实现,它包含在 java 开发工具包中。它使用一个嵌入式容器,它是同一个 JVM 中的东西 运行。尝试开源 Endpoint.publish