xmlauthenticationhandler.java

来自「精通Jboss——Ejb和Web Services开发精解的随书源代码」· Java 代码 · 共 30 行

JAVA
30
字号
package com.liuyang.axis.security.handler;

import org.apache.axis.AxisFault;
import org.apache.axis.MessageContext;
import org.apache.axis.handlers.BasicHandler;
import org.apache.axis.security.AuthenticatedUser;
import org.apache.axis.security.SecurityProvider;
import org.apache.axis.utils.Messages;
import com.liuyang.axis.security.XMLSecurityProvider;

public class XMLAuthenticationHandler extends BasicHandler {

	public void invoke(MessageContext msgContext) throws AxisFault {
		SecurityProvider provider = new XMLSecurityProvider();
		if (provider != null) {
			String  userID = msgContext.getUsername();
			if (userID == null || userID.equals(""))
				throw new AxisFault("Server.Unauthenticated",
				Messages.getMessage("cantAuth00", userID),null,null);
			String passwd = msgContext.getPassword();
			AuthenticatedUser authUser = provider.authenticate(msgContext);
			if (authUser == null)
				throw new AxisFault("Server.Unauthenticated",
				Messages.getMessage("cantAuth01", userID),null,null);
			msgContext.setProperty(MessageContext.AUTHUSER, authUser);
		}
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?