1

我遇到了一个我自己无法解决的问题,即使我几乎尝试了所有方法。我使用 Glassfish (3.1.2.2) 和 Windows 7 作为操作系统开发了一个带有 NetBeans (7.2.1) 和 Java (jdk1.7.0_09,jre7) 的 SOAP Web 服务,并且需要通过 SSL 保护连接。

如果我尝试达到:

https://localhost:8181/secauth/Secauth?WSDL

我只看到一个空白页。GlassFish 状态窗口中的错误是:

“警告:端点 Secauth 的请求方案无效。预期 http 。收到https”</p>

我为保护连接所做的工作:

  • 在 NetBeans 的“服务质量”选项卡中使用“传输安全”选项选中“安全服务”</p>

  • 使用安全选项卡编辑“web.xml”并添加“安全约束”

    <security-constraint>
    <display-name>SSL</display-name>
    <web-resource-collection>
        <web-resource-name>secauth</web-resource-name>
        <description/>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <description/>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
    </security-constraint>
    
    • 我可以打电话:

      https://localhost:8181/secauth/
      

并接受:

你好世界!


所以我的问题是: - 我必须更改什么才能通过 SSL 访问 WSDL?/ 上面那个问题是怎么回事?


用例:使用 ksoap2 从 android 应用程序调用 Web 服务,可以正常使用 HTTP,但不能使用 HTTPS。似乎无法解析“空白”页面并出现一些解析错误。

非常感谢您的先进!问候,

马塞尔

4

1 回答 1

0

http://docs.oracle.com/cd/E17802_01/webservices/webservices/reference/tutorials/wsit/doc/WSIT_Security9.html#wp151774

解决了我的问题!

似乎问题在于该项目是在应用安全设置之前运行的。

因此,只需按照分步说明,在运行项目之前插入旧的 src 代码,一切都会好起来的!

问候, 玛斯

于 2012-10-30T14:55:46.403 回答