1、HTTP认证
XFire中的HTTP认证是通过HttpClient中的Basic方式发送用户名和密码的。客户端代码如下:
服务器端得到用户名和密码(目前只是测试到在Service实现中可以通过XFireServletController得到httpRequest对象。在InHandler的各个特定阶段(Phase)应该也是可以的,但是目前没有成功):
2、SOAP Header Authentication with Handlers
通过分别定义Client Handler和Server Handler来传入/得到用户名和密码信息。
配置WS Server和WS Client,其中Client端的测试代码类名由Client改为ClientTest,因为我们要用到Xfire的一个名为Client的类
首先我们编写服务端验证类继承AbstractHandler
下面是Client发送授权信息
为ClientTest.java加入以下代码
等等,还没有完,修改Services.xm为WS绑定Handler
这样我们就完成了编码,下面启动tomcat,运行客户端代码,本文为abcd@1234位授权用户,使用abcd@1234,可以正常访问WS,如果用错误帐号,则会有以下异常
如果不在CientTest加如身份校验Handler则会有以下异常