8

有人可以帮忙吗?

我想使用嵌入式 Jetty 7 作为端点。这是我尝试过的:

public class MiniTestJetty {

@WebService(targetNamespace = "http")
public static class Calculator {

    @Resource
    WebServiceContext context;

    public int add(int a, int b) {
        return a + b;
    }
}


public static void main(String[] args) throws Exception {
    int port = 8080;
    Server server = new Server(port);

    Calculator calculator = new Calculator();
    Endpoint.publish("http://localhost:" + port + "/calc", calculator);

    server.start();
    server.join();
}

}

但我看不出这是否真的使用 Jetty 而不是默认的 sun HttpServer。

一个博客提到

 System.setProperty("com.sun.net.httpserver.HttpServerProvider",
       "org.mortbay.jetty.j2se6.JettyHttpServerProvider");

但是 Jetty 7 中似乎没有这样的 HttpServerProvider 。

感谢您的帮助,阿克塞尔。

4

3 回答 3

4

所有必要的似乎都是

System.setProperty("com.sun.net.httpserver.HttpServerProvider", "org.mortbay.jetty.j2se6.JettyHttpServerProvider");

jetty-contrib/org/mortgay/jetty/j2se6 中的当前贡献代码尚未准备好用于 Jetty 7。仅此而已。

于 2009-10-29T20:12:16.170 回答
3

您可以简单地在 Firefox 中打开 WSDL 的 URL,然后使用 Firebug 检查响应标头。你应该得到类似的东西:

HTTP/1.1 200 OK
Content-Type: text/xml;charset=utf-8
Transfer-Encoding: chunked
Server: Jetty(7.1.2.v20100523)
于 2010-05-26T16:43:51.130 回答
2

班级改名为

org.eclipse.jetty.http.spi.JettyHttpServerProvider

我从http://download.eclipse.org/jetty/updates/jetty-bundles-9.x/9.0.6.v20130930/ 获取它:

V9.0.6 用于 Java 7
V9.3.2 用于 Java 8

于 2015-09-09T09:58:07.927 回答