⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 register.java

📁 短信发送
💻 JAVA
字号:
package com.jdev.sms.soa;

import java.net.MalformedURLException;
import java.rmi.RemoteException;

import javax.xml.rpc.ParameterMode;
import javax.xml.rpc.ServiceException;

import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.encoding.XMLType;

import com.jdev.security.Md5;
import com.jdev.sms.Const;
import com.jdev.util.Debug;

/**
 * 注册UC平台
 * 
 * Author: Lin.Jin
 * CrateDate: 2008-6-30 下午03:28:10
 * Copyright(C) 2008 北京合智创展科技责任有限公司
 *
 */
public class Register {
	private final static String module = Register.class.getName();
	
	/**
	 * 获取随机数
	 * 
	 * @return
	 */
	@SuppressWarnings("static-access")
	public static String getRandom() {
		Debug.logVerbose("获取随机数....");
		String ret = "-1";
		String strRandom = "";
		Service service = new Service();
		Call call;
		try {
			call = (Call) service.createCall();
			call.setTargetEndpointAddress(new java.net.URL(Const.HWWebServiceRegisterURL));
			call.setOperationName("getRandom");
			call.setReturnType(XMLType.XSD_STRING);
			call.getMessageContext().setUsername(Const.HWWebServiceUser);
			call.getMessageContext().setPassword(Const.HWWebServiceUserPasswd);
			ret = (String) call.invoke(new java.lang.Object[] {});
			
			strRandom = "" + ret;
			
			Debug.logVerbose("random = " + strRandom);
		} catch (Exception e) {
			e.printStackTrace();
		}
		
		if ("-1".equals(strRandom)) {
			Debug.logVerbose("get random fail..continue to getRandom.");
			
			try {
				Thread.currentThread().sleep(1000);
			} catch (InterruptedException e) {		
				Debug.logError(e, module);
				e.printStackTrace();
			}
			
			return getRandom();
		}
		
		return strRandom;
	}
	
	/**
	 * 设置回调地址
	 * 
	 * @param rand
	 * @return
	 */
	public static String setCallBackAddr(String rand) {
		Debug.logVerbose("into setCallBackAddr......");
		
		Service service = new Service();
		Call call;
		String ret = "-1";
		String connId = "";
		
		// 获取回调CONNID
		try {
			call = (Call) service.createCall();
			call.setTargetEndpointAddress(new java.net.URL(Const.HWWebServiceRegisterURL));
			call.setOperationName("setCallBackAddr");
			call.addParameter("uc", XMLType.XSD_STRING, ParameterMode.IN);
			call.addParameter("pw", XMLType.XSD_STRING, ParameterMode.IN);
			call.addParameter("rand", XMLType.XSD_STRING, ParameterMode.IN);
			call.addParameter("url", XMLType.XSD_STRING, ParameterMode.IN);
			call.setReturnType(XMLType.XSD_STRING);
			call.getMessageContext().setUsername(Const.HWWebServiceUser);
			call.getMessageContext().setPassword(Const.HWWebServiceUserPasswd);
			
			String pw = Md5.MD5(rand + Const.UC_PASSWORD + Const.UC_PASSWORD);				
			
			ret = (String) call.invoke(new java.lang.Object[] {Const.UC, pw, rand, Const.CallBackURL });
			Debug.logVerbose("connId:" + ret);
			
			connId = ret;
		} catch (MalformedURLException e) {
			e.printStackTrace();
		} catch (RemoteException e) {
			e.printStackTrace();
		} catch (ServiceException e) {
			e.printStackTrace();
		}
		
		if ("-1".equals(connId)) {
			Debug.logVerbose("get callbackaddress fail..continue to get.");
			
			try {
				Thread.currentThread().sleep(1000);
			} catch (InterruptedException e) {	
				Debug.logError(e, module);
				e.printStackTrace();
			}
			
			rand = getRandom();
			return setCallBackAddr(rand);
		}
		
		return connId;
	}
}

⌨️ 快捷键说明

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