http://dev.firnow.com/course/4_webprogram/php/phpjs/20100721/480316.html 里面做得比較詳細
我自己做了一個簡單的。。。
1.資料綁定類ResourceManager
2.Hander處理類
3.deploy.wsdd
4.Clinet類
package three;

import java.rmi.RemoteException;

import org.apache.axis.AxisFault;

import util.SignUtil;

public class T1 {

public static void main(String[] args) {
UserServiceSoapBindingStub binding;
try {
binding = (three.UserServiceSoapBindingStub) new UserServiceServiceLocator().getUserService();
binding.setUsername("egssadmin");
try {
binding.setPassword(SignUtil.encryptBASE64("xcp12300".getBytes()));
} catch (Exception e) {
e.printStackTrace();
}
} catch (javax.xml.rpc.ServiceException jre) {
if (jre.getLinkedCause() != null)
jre.getLinkedCause().printStackTrace();
throw new junit.framework.AssertionFailedError("JAX-RPC ServiceException caught: " + jre);
}
// Time out after a minute
binding.setTimeout(60000);
User value = null;
try {
value = binding.login("admin1","111111");
} catch (AxisFault fault) {
System.out.println("1Error : " + fault.getMessage());
} catch (RemoteException e) {
e.printStackTrace();
}
System.out.println(value.getRealName());
}
}
最后:webservice-之使用axis+spring開發
http://wenku.baidu.com/view/e8a411225901020207409c62.html
我自己做了一個簡單的。。。
1.資料綁定類ResourceManager
package cn.gov.luzhou.SiteServer.user.business.util;
import java.util.ResourceBundle;
public class ResourceManager
{
private static ResourceBundle r = null;
static
{
r = ResourceBundle.getBundle("serviceAuthor");
}
public final static String getValue(String key){
return r.getString(key);
}
public final static void refresh()
{
r = ResourceBundle.getBundle("BasicConfig");
}
public static void main(String args[])
{
System.out.println(getValue("egssadmin"));
}
}
import java.util.ResourceBundle;
public class ResourceManager
{
private static ResourceBundle r = null;
static
{
r = ResourceBundle.getBundle("serviceAuthor");
}
public final static String getValue(String key){
return r.getString(key);
}
public final static void refresh()
{
r = ResourceBundle.getBundle("BasicConfig");
}
public static void main(String args[])
{
System.out.println(getValue("egssadmin"));
}
}
2.Hander處理類
package cn.gov.luzhou.SiteServer.user.business.webService;
import org.apache.axis.AxisFault;
import org.apache.axis.MessageContext;
import org.apache.axis.handlers.BasicHandler;
import cn.gov.luzhou.SiteServer.user.business.util.ResourceManager;
import cn.gov.luzhou.SiteServer.user.business.util.SignUtil;
/**
*
* @author 向才鵬
* @version 1.0
* Copyright (C), 2009,www.soujava.cn所有
* Date: Aug 18, 2010 4:27:20 PM
*/
public class AutherHandle extends BasicHandler {
/**
*
* @author 向才鵬
* Aug 18, 2010 4:28:07 PM
*/
private static final long serialVersionUID = 1L;
@SuppressWarnings("unchecked")
public void invoke(MessageContext msgContext) throws AxisFault{
String userID = msgContext.getUsername();
String psw = msgContext.getPassword();
//System.out.println("CommandHandle: userID:["+userID+"] psw:["+psw+"]");
if(userID != null && psw != null){
String value = ResourceManager.getValue(userID);
String value2 = "";
try {
value2= new String(SignUtil.decryptBASE64(psw));
} catch (Exception e) {
e.printStackTrace();
}
if(!value2.equals(value)){
throw new AxisFault("Illegal user.",new Exception("你沒有訪問權限"));
}
}else{
throw new AxisFault("Illegal user.",new Exception("請加上訪問權限,如需要幫助聯系技術支持部!"));
}
}
}
import org.apache.axis.AxisFault;
import org.apache.axis.MessageContext;
import org.apache.axis.handlers.BasicHandler;
import cn.gov.luzhou.SiteServer.user.business.util.ResourceManager;
import cn.gov.luzhou.SiteServer.user.business.util.SignUtil;
/**
*
* @author 向才鵬
* @version 1.0
* Copyright (C), 2009,www.soujava.cn所有
* Date: Aug 18, 2010 4:27:20 PM
*/
public class AutherHandle extends BasicHandler {
/**
*
* @author 向才鵬
* Aug 18, 2010 4:28:07 PM
*/
private static final long serialVersionUID = 1L;
@SuppressWarnings("unchecked")
public void invoke(MessageContext msgContext) throws AxisFault{
String userID = msgContext.getUsername();
String psw = msgContext.getPassword();
//System.out.println("CommandHandle: userID:["+userID+"] psw:["+psw+"]");
if(userID != null && psw != null){
String value = ResourceManager.getValue(userID);
String value2 = "";
try {
value2= new String(SignUtil.decryptBASE64(psw));
} catch (Exception e) {
e.printStackTrace();
}
if(!value2.equals(value)){
throw new AxisFault("Illegal user.",new Exception("你沒有訪問權限"));
}
}else{
throw new AxisFault("Illegal user.",new Exception("請加上訪問權限,如需要幫助聯系技術支持部!"));
}
}
}
3.deploy.wsdd
<?xml version="1.0" encoding="UTF-8"?>
<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<handler name="track" type="java:cn.gov.luzhou.SiteServer.user.business.webService.AutherHandle"></handler>
<service name="UserService" provider="java:RPC">
<parameter name="className" value="cn.gov.luzhou.SiteServer.user.business.webService.UserService"/>
<parameter name="allowedMethods" value="*"/>
<typeMapping qname="my:User" xmlns:my="urn:UserService"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" type="java:cn.gov.luzhou.SiteServer.user.web.vo.SysUserVo"/>
<requestFlow>
<handler type="track"/>
</requestFlow>
<responseFlow>
<handler type="track"/>
</responseFlow>
</service>
</deployment>
<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<handler name="track" type="java:cn.gov.luzhou.SiteServer.user.business.webService.AutherHandle"></handler>
<service name="UserService" provider="java:RPC">
<parameter name="className" value="cn.gov.luzhou.SiteServer.user.business.webService.UserService"/>
<parameter name="allowedMethods" value="*"/>
<typeMapping qname="my:User" xmlns:my="urn:UserService"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" type="java:cn.gov.luzhou.SiteServer.user.web.vo.SysUserVo"/>
<requestFlow>
<handler type="track"/>
</requestFlow>
<responseFlow>
<handler type="track"/>
</responseFlow>
</service>
</deployment>
4.Clinet類









































最后:webservice-之使用axis+spring開發
http://wenku.baidu.com/view/e8a411225901020207409c62.html
名稱: ?4C.ESL | .↗Evon
口號: 遇到新問題?先要尋找一個方案乄而不是創造一個方案こ
mail: 聯系我