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

📄 smswebservice.java

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

import java.util.Arrays;

import javax.xml.rpc.ParameterMode;

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

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


/**
 * 短信服务
 * 
 * Author: Lin.Jin
 * CrateDate: 2008-6-30 下午03:55:10
 * Copyright(C) 2008 北京合智创展科技责任有限公司
 *
 */
public class SMSWebService {
	private final static String module = SMSWebService.class.getName();
	
	public static String sendMsg(String msg, String[] callees, String isReturn, int msgId) {
		String rand = Register.getRandom();
		
		Service service = new Service();
		Call call;
		String ret = "-1";
		Debug.logVerbose("准备发送短信。。。");
		Debug.logVerbose(rand + "--" + msg + "--" + Arrays.toString(callees) + "--" + isReturn + "--" + msgId + "--");
		try {
			// 发送短信
			call = (Call) service.createCall();
			call.setTargetEndpointAddress(new java.net.URL(Const.HWWebServiceSMSURL));
			call.setOperationName("sendSMS");
			
			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("callee",XMLType.XSD_ANYTYPE, ParameterMode.IN);
			call.addParameter("isreturn", XMLType.XSD_STRING, ParameterMode.IN);
			call.addParameter("cont", XMLType.XSD_STRING, ParameterMode.IN);
			call.addParameter("msgid", XMLType.XSD_INTEGER, ParameterMode.IN);
			call.addParameter("connID", XMLType.XSD_STRING, ParameterMode.IN);
			call.setReturnType(XMLType.XSD_STRING);			
			call.getMessageContext().setUsername(Const.HWWebServiceUser);// 用户名。
			call.getMessageContext().setPassword(Const.HWWebServiceUserPasswd);// 密码				
		
			Debug.logVerbose("短信原文:" + msg);
			String msgContent = (new sun.misc.BASE64Encoder()).encode( msg.getBytes() ); 
			Debug.logVerbose("BASE64编码后的短信内容:" + msgContent);						
		
			Debug.logVerbose("密码原文:" + Const.UC_PASSWORD);
			String pw = Md5.MD5(rand + Const.UC_PASSWORD + Const.UC_PASSWORD);	
			Debug.logVerbose("密码:" + pw);
			
			ret = (String) call.invoke(new java.lang.Object[] {Const.UC, pw, rand, callees, isReturn, 
					msgContent, msgId, Const.CONNID});
			
			Debug.logVerbose("发送的状态:" + ret);			
		} catch (Exception e) {
			e.printStackTrace();
		}
		
		Debug.logVerbose("结束发送!");
		return ret;
	}
}

⌨️ 快捷键说明

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