【发布时间】:2012-02-11 12:21:33
【问题描述】:
我正在使用 ejb 3 和 glassfish 3.1.1 开发 Web 服务。我正在使用 Netbeans 7.0,想知道如何在端口 8181 上为此 Web 服务启用 https。
我不需要任何身份验证方法,只需通过 https 保护通信!
谢谢
阿德姆
【问题讨论】:
标签: web-services netbeans https ejb
我正在使用 ejb 3 和 glassfish 3.1.1 开发 Web 服务。我正在使用 Netbeans 7.0,想知道如何在端口 8181 上为此 Web 服务启用 https。
我不需要任何身份验证方法,只需通过 https 保护通信!
谢谢
阿德姆
【问题讨论】:
标签: web-services netbeans https ejb
您需要按照here 的说明指定安全连接。本质上,您需要在部署描述符 web.xml 中设置:
<security-constraint>
...
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
但是NetBeans 将为您插入代码:打开web.xml,单击编辑器顶部的“安全”选项卡,然后单击“添加安全约束”按钮。输入名称,在 URL 模式中写入 /*,设置所有 Http 方法,并指定 Confidential 作为传输保证。
如果您没有 web.xml,因为您只部署 Enterprise Java Bean,请创建一个新 GlassFish 描述符 glassfish-ejb-jar.xml 并像这样填充它(或查看 here 文件层次结构):
<glassfish-ejb-jar>
<enterprise-beans>
<ejb>
<ejb-name>Hello</ejb-name>
<webservice-endpoint>
<port-component-name>Hello</port-component-name>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</webservice-endpoint>
</ejb>
</enterprise-beans>/>
</glassfish-ejb-jar>
从现在开始,您的应用程序将使用端口 8181。
有关如何在 Netbeans Web 应用程序中设置安全性的详细信息,请参阅 here,有关证书的信息,请参阅 here。
【讨论】:
sun-ejb-jar.xml?