Glassfish 上的安全 Web 服务客户端

Posted

技术标签:

【中文标题】Glassfish 上的安全 Web 服务客户端【英文标题】:Secure Webservice Client on Glassfish 【发布时间】:2011-08-14 14:16:49 【问题描述】:

我在 URL https://my-webservice-path?wsdl 有一个安全的外部 Web 服务,我想连接以使用它。这是一个 2-way ssl。 我在以下创建了一个 Web 服务客户端:

    创建一个java应用Application1 在项目窗口中,单击 Application1 图标 -> 新建 -> Web 服务客户端 将我的 URL 粘贴到 WSDL URL,客户端类型为 JAX-WS,包:com.mypackage 完成

但出现错误:错误:发生 I/O 错误。收到致命警报:handshake_failure

而且我无法创建 Web 服务引用。我使用 Glassfish 3.0.1 服务器。

我尝试用我的密钥对和证书替换 Glassfish 的 keystore.jks 和 cacerts.jks 中的别名 s1as,但仍然失败。

我也尝试使用wsimport解析wsdl文件但失败:(

我在 Oracle 论坛http://forums.oracle.com/forums/thread.jspa?threadID=2214292&tstart=0 上发布了这个问题,但没有得到任何答案。 我试图解决这个问题 2 天:(

我现在可以做些什么来解决这个问题? 请帮帮我,谢谢!

【问题讨论】:

嗨,我用wireshark检查并看到了。当我使用浏览器调用此服务时,客户端将客户端的证书发送到服务器。一切都很好。但是当我使用java代码时,没有证书被发送到服务器。握手失败。希望这些信息对您有所帮助! 【参考方案1】:

请在Mutual-authentication with web services 中查看 Catchwa 的答案。详细描述了实现基于 glassfish 的相互身份验证的步骤。

【讨论】:

大家好。我解决了这个问题。这是 Netbeans 6.9 的一个错误。如果您使用 Netbeans 7.0,就可以了。希望对您有所帮助

以上是关于Glassfish 上的安全 Web 服务客户端的主要内容,如果未能解决你的问题,请参考以下文章

如何在 GlassFish 上从 JAX-WS 向 Swing 客户端构建推送通知?

NetBeans 上的 GlassFish 部署错误

在模拟已获得 glassfish 服务器授权的用户时调用 REST 服务

在本地主机上的 glassfish 4.0 上实现 ssl

休息,glassfish4 shiro 启用工作样本

中间件安全JBoos&反序列化&弱口令&Glassfish读取&CVE