package com.sms;import org.smslib.IOutboundMessageNotification;
import org.smslib.Message.MessageEncodings;
import org.smslib.OutboundMessage;
import org.smslib.modem.SerialModemGateway;public class sms{
private static org.smslib.Service srv = new org.smslib.Service();public static void creatService() {
SerialModemGateway gateway = new SerialModemGateway("modem.com1", "com1",9600, "wavcom","123");
gateway.setInbound(true);
gateway.setOutbound(true);
try {
srv.addGateway(gateway);srv.startService();
System.out.println("Modem connected.");
sendSms("10086", "10086");
} catch (Exception ex) {
ex.printStackTrace();
}
}public static org.smslib.Service getService() {
if (srv == null) {
creatService();
}
return srv;
}public static void disconnect() {
try {
// srv.disconnect();System.out.println("Modem disconnected.");
} catch (Exception ex) {
ex.printStackTrace();
}}public static void main(String args[]) {
creatService();
}public static boolean sendSms(String mobile, String content) {
OutboundMessage msg = new OutboundMessage(mobile, content);
msg.setEncoding(MessageEncodings.ENCUCS2);
try {
srv.sendMessage(msg);
System.out.println(msg);
} catch (Exception ex) {
// log.error(ex);
return false;
}
return true;
}public void close() {
try {
srv.stopService();
} catch (Exception ex) {
// log.error(ex);
}
}public class OutboundNotification implements IOutboundMessageNotification {
public void process(String gatewayId, OutboundMessage msg) {
System.out.println("Outbound handler called from Gateway: "
+ gatewayId);
System.out.println(msg);
}
}
}
import org.smslib.Message.MessageEncodings;
import org.smslib.OutboundMessage;
import org.smslib.modem.SerialModemGateway;public class sms{
private static org.smslib.Service srv = new org.smslib.Service();public static void creatService() {
SerialModemGateway gateway = new SerialModemGateway("modem.com1", "com1",9600, "wavcom","123");
gateway.setInbound(true);
gateway.setOutbound(true);
try {
srv.addGateway(gateway);srv.startService();
System.out.println("Modem connected.");
sendSms("10086", "10086");
} catch (Exception ex) {
ex.printStackTrace();
}
}public static org.smslib.Service getService() {
if (srv == null) {
creatService();
}
return srv;
}public static void disconnect() {
try {
// srv.disconnect();System.out.println("Modem disconnected.");
} catch (Exception ex) {
ex.printStackTrace();
}}public static void main(String args[]) {
creatService();
}public static boolean sendSms(String mobile, String content) {
OutboundMessage msg = new OutboundMessage(mobile, content);
msg.setEncoding(MessageEncodings.ENCUCS2);
try {
srv.sendMessage(msg);
System.out.println(msg);
} catch (Exception ex) {
// log.error(ex);
return false;
}
return true;
}public void close() {
try {
srv.stopService();
} catch (Exception ex) {
// log.error(ex);
}
}public class OutboundNotification implements IOutboundMessageNotification {
public void process(String gatewayId, OutboundMessage msg) {
System.out.println("Outbound handler called from Gateway: "
+ gatewayId);
System.out.println(msg);
}
}
}
2011-6-30 15:51:08 org.smslib.helper.Logger logInfo
信息: SMSLib: A Java API library for sending and receiving SMS via a GSM modem or other supported gateways.
This software is distributed under the terms of the Apache v2.0 License.
Web Site: http://smslib.org
2011-6-30 15:51:08 org.smslib.helper.Logger logInfo
信息: Version: 3.4.4
2011-6-30 15:51:08 org.smslib.helper.Logger logInfo
信息: JRE Version: 1.6.0_13
2011-6-30 15:51:08 org.smslib.helper.Logger logInfo
信息: JRE Impl Version: 11.3-b02
2011-6-30 15:51:08 org.smslib.helper.Logger logInfo
信息: O/S: Windows XP / x86 / 5.1
2011-6-30 15:51:08 org.smslib.helper.Logger logInfo
信息: GTW: modem.com1: Starting gateway, using Generic AT Handler.
2011-6-30 15:51:08 org.smslib.helper.Logger logInfo
信息: GTW: modem.com1: Opening: com1 @9600
2011-6-30 15:51:08 org.smslib.helper.Logger logInfo
信息: GTW: modem.com1: Closing: com1 @9600
2011-6-30 15:51:09 org.smslib.helper.Logger logInfo
信息: GTW: modem.com1: Stopping gateway...
2011-6-30 15:51:09 org.smslib.helper.Logger logInfo
信息: GTW: modem.com1: Closing: com1 @9600
2011-6-30 15:51:09 org.smslib.helper.Logger logInfo
信息: GTW: modem.com1: Gateway stopped.
org.smslib.GatewayException: Comm library exception: java.lang.RuntimeException: javax.comm.NoSuchPortException
at org.smslib.modem.SerialModemDriver.connectPort(SerialModemDriver.java:96)
at org.smslib.modem.AModemDriver.connect(AModemDriver.java:111)
at org.smslib.modem.ModemGateway.startGateway(ModemGateway.java:185)
at org.smslib.Service$1Starter.run(Service.java:257)
真心求救啊,可怜可怜我吧。快疯了
可是为啥我用超级终端选贼com1能连接上???端口号绝对没问题啊
import org.smslib.helper.CommPortIdentifier;public class test {
public static void main(String [] args){
Enumeration en = CommPortIdentifier.getPortIdentifiers();
CommPortIdentifier portId;
while (en.hasMoreElements())
{
portId = (CommPortIdentifier) en.nextElement();
if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL)
System.out.println(portId.getName());
}
}
}
这段代码是检测机器上所有的COM口的代码,可是我任务管理器明明存在com,这个和程序一个都检测不出来
在线回复也行。