亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? soapproxy.java

?? 陜西電信sp客戶端
?? JAVA
字號:
// ----------------------------------------------------------------------------
// $Source: /cvs/vas2006/webpro2/webpro_java/src/com/onewaveinc/portalman/webpro/soap/SOAPProxy.java,v $
// ----------------------------------------------------------------------------
// Copyright (c) 2002 by Onewave Inc.
// ----------------------------------------------------------------------------
// $Id: SOAPProxy.java,v 1.1.1.1 2006/08/01 05:49:34 zhengx Exp $
// ----------------------------------------------------------------------------
// $Log: SOAPProxy.java,v $
// Revision 1.1.1.1  2006/08/01 05:49:34  zhengx
// no message
//
// Revision 1.1  2006/06/02 03:33:17  wuyan
// *** empty log message ***
//
// Revision 1.1  2005/12/08 10:37:59  like
// no message
//
// Revision 1.1  2003/07/28 06:30:15  zengc
// no message
//
// Revision 1.4  2002/09/11 11:47:22  zengc
// WebPro JavaClient V1.3
//
// Revision 1.3  2002/09/02 09:37:55  zengc
// WebPro java Client  V1.2
//
// Revision 1.2  2002/08/15 17:20:57  zengc
// 增加了對參數(shù)是String[]數(shù)組類型的支持
//
// Revision 1.1  2002/08/09 08:36:12  zengc
// SOAP Tools
//
// ----------------------------------------------------------------------------

package com.onewaveinc.portalman.webpro.soap;

/**
 * <p>Title: PortalMAN SDK API Documentation</p>
 * <p>Description: OneWave Technologies., Inc. PortalMAN Value-add Management Platform 3rd Software Development Kit</p>
 * <p>Copyright: Copyright (c) 2002 </p>
 * <p>Company: OneWave Technologies., Inc.</p>
 * @author 3rd AAA & ICP Integration Developement Team
 * @version 1.5
 */

/*********************************************************

The following parameter types are supported:

1. The following Java primitives and their objectified forms
		boolean, Boolean,
		double, Double,
		float, Float,
		long, Long,
		int, Integer,
		short, Short,
		byte, Byte

   Note: The server side always receives the primitive

2. JavaBeans

   Note:
	a. The JavaBean must not contain other JavaBeans
	b. The JavaBean must not contain vectors or arrays that contain any parameter
	   other than those in 1 and Strings.

3. The following classes:
		String, Vector

   Notes:
	a. A vector may contain all parameters in 1, 2, and Strings. (Exception in 2b)
	b. The server side receives a Vector as an array of Objects

4. Arrays of all parameters in 1, 2, and Strings. (Exception in 2b)

***********************************************************/

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
import java.net.URL;
import org.apache.soap.*;
import org.apache.soap.util.xml.*;
import org.apache.soap.encoding.*;
import org.apache.soap.encoding.soapenc.*;
import org.apache.soap.rpc.*;
import java.util.*;
import com.onewaveinc.portalman.webpro.*;

public class SOAPProxy implements InvocationHandler{

	private String urn = null;
	private static URL serverURL = null;
	final private static String _paramName = "Parameter";
	private SOAPMappingRegistry smr = null;
	private BeanSerializer beanSer = null;

	final public static Object newInstance(String url, String urn, Class[] interfaces) throws Exception
	{
		SOAPProxy proxy = new SOAPProxy(url,urn);
		return(proxy.initialize(interfaces));
	}

	// Implementation of the java.lang.reflect.InvocationHandler interface
	final public Object invoke(Object SOAPProxy, Method m, Object[] args) throws Exception
	{
		Call call = new Call();
		call.setTargetObjectURI(urn);
		call.setMethodName(m.getName());
		call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);

		//add mapping for Method Return Object ,add by zengcheng 2002-8-7
		Class returnClass = m.getReturnType();
		Object returnObject = null;

		if(returnClass.getName().equals((new String[0]).getClass().getName())){
			returnObject = new String[1];
		}else{
			returnObject = returnClass.newInstance();
		}
		if( isSimple(returnObject) || isSimpleArray(returnObject) )
		{

		}
		else if( isVector(returnObject) )
		{
			addMapping((java.util.Vector) returnObject);
		}
		// if this is an non-simple array then
		// Assume that this is an array of beans
		else if( isArray(returnObject) )
		{
			if( smr == null ){
			smr = new SOAPMappingRegistry();
			}
			if( beanSer == null ){
			beanSer = new BeanSerializer();
			}
			//System.out.println("Adding a default mapping");
			ArraySerializer arraySer = new ArraySerializer();
			smr.mapTypes(Constants.NS_URI_SOAP_ENC, null, null, beanSer, beanSer);
			smr.mapTypes(Constants.NS_URI_SOAP_ENC,null,returnClass, arraySer, arraySer);

		}		// Assume that this is a bean
		else
		{
			if( smr == null ){
			smr = new SOAPMappingRegistry();
			}
			if( beanSer == null ){
			beanSer = new BeanSerializer();
			}
			String qnamePart = returnClass.getName();
			//System.out.println("qnamePart = " + qnamePart);
			smr.mapTypes(Constants.NS_URI_SOAP_ENC,
				 new QName(urn, qnamePart),returnClass, beanSer, beanSer);

		}



		//for arg

		java.util.Vector params = new java.util.Vector();
		for( int i=0; i<args.length; i++ )
		{
			if( isSimple(args[i]) || isSimpleArray(args[i]) )
			{
				params.add(new Parameter(_paramName+(i+1),args[i].getClass(),args[i],null));
			}
			else if( isVector(args[i]) )
			{
				addMapping((java.util.Vector)args[i]);
				params.add(new Parameter(_paramName+(i+1),args[i].getClass(),args[i],null));
			}
			// if this is an non-simple array then
			// Assume that this is an array of beans
			else if( isArray(args[i]) )
			{
				if( smr == null )
					smr = new SOAPMappingRegistry();
				if( beanSer == null )
					beanSer = new BeanSerializer();
				//System.out.println("Adding a default mapping");
				ArraySerializer arraySer = new ArraySerializer();
				smr.mapTypes(Constants.NS_URI_SOAP_ENC, null, null, beanSer, beanSer);
				smr.mapTypes(Constants.NS_URI_SOAP_ENC,null,args[i].getClass(), arraySer, arraySer);
				params.add(new Parameter(_paramName+(i+1),args[i].getClass(),args[i],null));
			}
			// Assume that this is a bean
			else
			{
				if( smr == null )
					smr = new SOAPMappingRegistry();
				if( beanSer == null )
					beanSer = new BeanSerializer();
				String qnamePart = args[i].getClass().getName();
				//System.out.println("qnamePart = " + qnamePart);
				smr.mapTypes(Constants.NS_URI_SOAP_ENC,
							 new QName(urn, qnamePart),args[i].getClass(), beanSer, beanSer);
				params.add(new Parameter(_paramName+(i+1),args[i].getClass(),args[i],null));
			}
		}
		if( params.size() != 0 )
			call.setParams(params);

		if( smr != null )
			call.setSOAPMappingRegistry(smr);

		// Invoke the call.
		Response resp = call.invoke(serverURL, "");
		if( !resp.generatedFault() )
		{
			Parameter ret = resp.getReturnValue();
			return(ret.getValue());
		}
		else
		{
			Fault fault = resp.getFault();

			//add for exception trace,by zengcheng
			Vector entries = fault.getDetailEntries();
			if(entries != null){
				WebProManager.debug("SOAP ServerError encountered: " + fault.getFaultString());
				for (Iterator i = entries.iterator(); i.hasNext(); ) {
				org.w3c.dom.Element entry = (org.w3c.dom.Element)i.next();
				WebProManager.debug(entry.getFirstChild().getNodeValue());
				}
			}

			throw new SOAPException(fault.getFaultCode(),fault.getFaultString());
		}
	}

	// Private methods...

	// Not allowed to "construct" a new instance.
	private SOAPProxy(String url, String urn) throws Exception
	{
		this.urn = urn;
		if(urn == null){
			throw new Exception("SOAP server urn can't be null !");
		}
		if(url == null){
			throw new Exception("SOAP server route URL can't be null !");
		}

		try{
			this.serverURL = new URL(url);
		}catch( Exception e ){
			throw new Exception("SOAP server route URL is invalide !");
		}
	}

	private Object initialize(Class[] interfaces)
	{
		return(Proxy.newProxyInstance(getClass().getClassLoader(),interfaces,this));
	}

	private boolean isSimple(Object o)
	{
		if( o instanceof Integer || o instanceof Double || o instanceof Boolean ||
			o instanceof Byte || o instanceof Character || o instanceof Float ||
			o instanceof String || o instanceof Short || o instanceof Long )
			return(true);

		return(false);
	}

	private boolean isSimpleArray(Object o)
	{
		if( o instanceof int[] || o instanceof boolean[] || o instanceof long[] || o instanceof float[] ||
			o instanceof short[] || o instanceof byte[] || o instanceof java.lang.Integer[] || o instanceof java.lang.Double[] || o instanceof java.lang.Boolean[] ||
			o instanceof java.lang.Byte[] || o instanceof java.lang.Float[] ||
			o instanceof java.lang.String[] || o instanceof java.lang.Short[] || o instanceof java.lang.Long[] )
			return(true);

		return(false);
	}

	private boolean isVector(Object o)
	{
		if( o instanceof java.util.Vector )
			return(true);
		return(false);
	}

	private boolean isArray(Object o)
	{
		if( o instanceof Object[] )
			return(true);
		return(false);
	}

	private void addMapping(java.util.Vector v)
	{
		Object o = v.get(0);
		if( o == null )
			return;

		if( isSimple(o) || isSimpleArray(o) )
		{
			//System.out.println("Vector contains simple elements only.");
		}
		else if( isVector(o) )
		{
			//System.out.println("Recursive Vector...");
			addMapping((java.util.Vector)o);
		}
		else
		{
			if( smr == null )
				smr = new SOAPMappingRegistry();
			if( beanSer == null )
				beanSer = new BeanSerializer();
			//System.out.println("Adding a default mapping");
			smr.mapTypes(Constants.NS_URI_SOAP_ENC, null, null, beanSer, beanSer);
		}
	}
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人精品综合在线观看| 午夜不卡av在线| 不卡av在线网| 中文字幕一区二区三区四区| 色综合网站在线| 亚洲国产欧美在线人成| 欧美一区二区三区四区视频 | 在线不卡欧美精品一区二区三区| 午夜视频在线观看一区| 日韩亚洲欧美一区| 国产传媒一区在线| 亚洲人123区| 日韩午夜激情视频| 国产99精品国产| 亚洲国产日日夜夜| 精品久久久久av影院| 国产99精品国产| 亚州成人在线电影| 国产亚洲人成网站| 在线精品视频免费播放| 蜜桃一区二区三区在线观看| 国产精品久久久久毛片软件| 精品视频色一区| 国产黄色91视频| 亚洲444eee在线观看| 久久精品视频免费| 欧美日韩免费一区二区三区视频| 久草中文综合在线| 亚洲精选一二三| 欧美精品一区二区三区久久久| 91丨九色丨蝌蚪富婆spa| 老司机午夜精品99久久| 日韩理论片在线| 2023国产精品自拍| 欧美日韩国产成人在线91| 国产精品一色哟哟哟| 亚洲尤物视频在线| 欧美韩国日本综合| 欧美一激情一区二区三区| 色综合中文字幕国产 | 国产一区二区三区免费看| 亚洲色图欧洲色图| 久久精品亚洲精品国产欧美| 欧美久久久久久久久| 一本一道综合狠狠老| 韩日av一区二区| 五月开心婷婷久久| 亚洲欧美另类在线| 国产精品欧美久久久久一区二区| 日韩小视频在线观看专区| 欧美中文字幕一区二区三区| 粗大黑人巨茎大战欧美成人| 久久99精品久久久久久| 日日夜夜一区二区| 亚洲一区二区三区四区不卡| 亚洲日本va午夜在线影院| 久久精品人人做人人爽97 | 久久久久国产精品麻豆| 日韩视频中午一区| 欧美性色aⅴ视频一区日韩精品| 成人免费高清在线| 国产91在线观看丝袜| 久久99久久99精品免视看婷婷| 亚洲成人中文在线| 午夜电影一区二区三区| 亚洲电影中文字幕在线观看| 亚洲乱码日产精品bd | 亚洲一级二级三级在线免费观看| 国产精品久久久久久久久免费丝袜 | 亚洲私人黄色宅男| 日本一区二区三区四区| 久久精品视频免费观看| 久久―日本道色综合久久 | 中文字幕欧美三区| 国产亚洲va综合人人澡精品| 久久人人超碰精品| 国产亚洲精品久| 欧美激情资源网| 国产精品无遮挡| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 久久66热re国产| 国产中文一区二区三区| 精品一区二区三区免费毛片爱| 精品午夜久久福利影院| 激情五月婷婷综合| 国产成人午夜精品影院观看视频| 国产成人精品免费网站| jlzzjlzz亚洲日本少妇| 91蜜桃在线观看| 精品婷婷伊人一区三区三| 欧美一区二区三区不卡| 亚洲精品在线免费观看视频| 国产亚洲福利社区一区| 中文字幕字幕中文在线中不卡视频| 亚洲免费看黄网站| 丝袜诱惑亚洲看片| 国产精品一区二区视频| 9久草视频在线视频精品| 色999日韩国产欧美一区二区| 欧美久久久影院| 久久久久国产成人精品亚洲午夜| 1024国产精品| 视频一区二区中文字幕| 国产乱子伦视频一区二区三区| aa级大片欧美| 7777精品伊人久久久大香线蕉 | 欧美大片免费久久精品三p| 国产免费成人在线视频| 亚洲国产成人av好男人在线观看| 麻豆精品在线观看| 99久久精品国产网站| 在线播放国产精品二区一二区四区 | 欧美乱妇20p| 国产视频一区在线播放| 亚洲一区二区不卡免费| 国产一区二区三区高清播放| 97精品久久久久中文字幕| 日韩一区二区三| 亚洲人成网站在线| 美腿丝袜亚洲色图| 99精品视频在线观看| 91精品国产综合久久福利| 国产精品麻豆一区二区 | 亚洲午夜在线视频| 国产成人av影院| 欧美妇女性影城| 中文字幕日本乱码精品影院| 青青草精品视频| 在线视频国内自拍亚洲视频| 久久久噜噜噜久久人人看| 五月婷婷色综合| aaa亚洲精品| 久久综合久久鬼色中文字| 性做久久久久久免费观看 | 高清国产一区二区| 日韩免费观看2025年上映的电影 | 中国av一区二区三区| 欧美aaaaaa午夜精品| 欧美在线色视频| 中文字幕一区二区三区乱码在线| 国产在线麻豆精品观看| 69成人精品免费视频| 亚洲精品国产精华液| www.欧美日韩| 国产视频在线观看一区二区三区 | 中文字幕亚洲区| 国产又黄又大久久| 日韩一级黄色大片| 午夜精品123| 欧美日韩一区二区三区在线| 亚洲欧美电影一区二区| 成人精品高清在线| 久久精品男人天堂av| 黄色小说综合网站| 日韩欧美久久一区| 美女视频黄 久久| 日韩欧美一级二级| 美国三级日本三级久久99| 亚洲国产精品久久不卡毛片 | 狠狠色丁香久久婷婷综| 国产亚洲欧美激情| 91麻豆精品91久久久久同性| 一区二区三区在线不卡| 欧美一区二区在线免费观看| 日本乱人伦一区| 555www色欧美视频| 久久久久久一级片| 国产精品久久久久久一区二区三区| 日韩理论片中文av| 日日夜夜精品视频天天综合网| 免费人成在线不卡| 国产91综合网| 欧美日韩亚洲综合一区| 日韩三级伦理片妻子的秘密按摩| 日韩精品一区二区三区老鸭窝 | 91精品一区二区三区久久久久久| 日韩欧美国产三级| 久久精品欧美日韩精品| 一区二区日韩电影| 麻豆传媒一区二区三区| 大白屁股一区二区视频| 欧美日韩成人在线一区| 久久久精品国产免大香伊 | 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 欧美日韩国产小视频在线观看| 精品人伦一区二区色婷婷| 国产精品福利影院| 奇米色一区二区| 91片在线免费观看| 日韩一区二区三区精品视频| 中文字幕日韩av资源站| 欧美bbbbb| 在线精品视频小说1| 国产午夜亚洲精品午夜鲁丝片 | 精品国产123| 亚洲激情av在线| 国产一区二区视频在线播放| 成人免费毛片片v| 99久久夜色精品国产网站| 日韩欧美中文字幕精品|