📄 clientauthhandler.java
字号:
package com.jones.web.service.authentication.impl;
import org.codehaus.xfire.MessageContext;
import org.codehaus.xfire.handler.AbstractHandler;
import org.jdom.Element;
import org.jdom.Namespace;
/**
* SOAP信息发送之前的客户端处理器(在消息中添加认证相关数据包括用户名和密码等)
*
* @author gubiao
*
*/
public class ClientAuthHandler extends AbstractHandler {
private String username;
private String password;
public ClientAuthHandler(String username, String password) {
this.username = username;
this.password = password;
}
public void invoke(MessageContext context) throws Exception {
final Namespace ns = Namespace.getNamespace("jones",
"http://services.web.jones.com");
Element el = new Element("header", ns);
Element auth = new Element("AuthenticationToken", ns);
Element username_el = new Element("username", ns);
username_el.addContent(this.username);
Element password_el = new Element("password", ns);
password_el.addContent(this.password);
auth.addContent(username_el);
auth.addContent(password_el);
el.addContent(auth);
context.getCurrentMessage().setHeader(el);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -