Glassfish中部署的Java Web服务可通过http和https访问

时间:2010-12-09 14:57:25

标签: java web-services https glassfish jax-ws

我正在尝试使用JAX-WS和Glassfish 2.1创建一个Web服务,该服务正在侦听2个enpoints,一个在 http 上,另一个在 https 上。首先,我使用默认设置创建了Web服务(这意味着通过 http ),它运行正常。之后我修改了它以接受 https 上的连接,这也有效,但最初的情况已停止工作。谁能告诉我如何解决这个问题?我知道这是可能的,但我找不到办法。

感谢。

1 个答案:

答案 0 :(得分:1)

我能够做到这一点的唯一方法是通过Apache的代理传递。我发现这也相对容易设置。

使用CentOS,我安装了apache(随mod_proxy一起提供)和mod_ssl。

在http.conf文件中,我有以下配置:

Listen 8080
ProxyRequests On
SSLProxyEngine on

AllowCONNECT 8181

<Proxy *>
    Order deny,allow
    Allow from all
    Deny from all
</Proxy>
ProxyPass / https://radish:8181/
ProxyPassReverse / https://radish:8181/

使用此配置,您显然必须在glassfish中禁用8080侦听器。

最后,我使用ProxyPass将端口80和443从Apache转发到glassfish端口8181.