我知道有类似的问题,但我已经尝试过,无法找到错误的位置。
我想要设置基本身份验证来访问tomcat中的web服务,在netbeans 7.4中进行开发
因此,web服务位于URL MyWebservice中,因此如果没有身份验证设置,我可以浏览http://localhost:8084/MyWebservice?wsdl来获取WSDL。
所以我已经放入tomcat-users.xml:
<role rolename="webservicerole"/>
<user username="wsuser" password="wspwd" roles="webservicerole"/>
在web.xml中:
<security-constraint>
<web-resource-collection>
<web-resource-name>MyWebservice</web-resource-name>
<url-pattern>/MyWebservice</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>wsuser</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
现在,如果我浏览到http://localhost:8084/MyWebservice,我收到了http 403错误,如果我退出web.xml中的基本身份验证,我会在webservice网址上显示一个正确的网页信息,显示有关端口等的信息。
我无法查看的(确定明显的)错误???
我很确定我之前在目录中使用DIGEST身份验证做了类似的事情,并且效果很好。
问候。
答案 0 :(得分:0)
您的rolename
不正确。它应该是:
<auth-constraint>
<role-name>webservicerole</role-name>
</auth-constraint>