关于联通接口收不到上行短信问题

来源:互联网 发布:mui.js tab切换选项卡 编辑:程序博客网 时间:2024/04/28 21:19

我就是使用华为的短信包做的短信的处理,接受短信都可以,后来进行过代码的改造,导入了一部分jar包,后经实验发现不能达到预期要求,就将代码恢复到之前的状态了

 

然后问题就出现了。。。。。下发短信可以正常,但是接收不到手机发来的短信,没有任何响应  我新写了一个类继承自SGIPSMProxy 类,代码如下:

 

public class MySgipProxy extends SGIPSMProxy{

 /**
  *
  * <p>Discription:[启动短消息服务]</p>
  * @coustructor 方法.
  */
    public MySgipProxy(Args args)
    {
        super(args);
        startService(args.get("ServiceIP", "127.0.0.1"),
               Integer.parseInt(args.get("ServicePort", "8801")));
    }

  
    public SGIPMessage onDeliver(SGIPDeliverMessage msg)
    {
     System.out.println("sigp ondeliver......");
     ProcessRecvDeliverMsg(msg);
  System.out.println("正在等待接收.......");
        return super.onDeliver(msg);
    }

    public SGIPMessage onReport(SGIPReportMessage msg)
    {
     System.out.println("sigp onreport......");
     return super.onReport(msg);
    }

    public void onTerminate()
    {
       System.out.println("sigp terminated......");
     //stopService();
    }
   
    /**
  *
  * <p>Discription:[对收到的短信内容做处理]</p>
  * @param 
  */
 public void ProcessRecvDeliverMsg(SGIPMessage msg) {
  //获取消息编码
  if (msg instanceof SGIPSubmitRepMessage) {
   System.out.println("返回下发短信的相应消息");
  }
  if (msg instanceof SGIPDeliverMessage) {
   // 收到用户发送的短信(上行)
   SGIPDeliverMessage deliverMsg = (SGIPDeliverMessage) msg;
   String msgcontentGBK="";
   try {
    msgcontentGBK = new String(deliverMsg.getMsgContent(),"UTF-16").trim();
   } catch (UnsupportedEncodingException e1) {
    e1.printStackTrace();
   }
   String sequence_id= deliverMsg.getSequenceId()+"";
   String userNumber = deliverMsg.getUserNumber(); // 手机号码
   String spNumber = deliverMsg.getSPNumber();
   
   //保存到数据库
   String sql="INSERT INTO D_CHN_SGIP_ONDELIVER (ID,SEQUENCE_ID,USERNUMBER,SPNUMBER,MSGCONTENT,STATUS,SUBTIME) VALUES(D_CHN_SGIP_ONDELIVER_SEQ.Nextval,'"
    +sequence_id+"','"+userNumber+"','"+spNumber+"','"
    +msgcontentGBK+"','1',to_char(SYSDATE,'yyyyMMddHH24MIss'))";
   JdbcUtil.execUpdate(sql);
  }
 }

}

 

 

正常情况下,onDeliver方法中的语句在服务开启之后,应该在日志文件中打印出来的~~现在,就跟没有写这个类一样,这个类中的内容完全不走。。。

 

我是64位系统,在本机编译后提交到服务器运行~~原来可以的32位系统编译好的代码提交上去还是不行。。。。

 

有哪位高人能给指点一下呀。。。。。跪谢。。。。

 

ps.服务器为weblogic 跟缓存什么的有没有关系。。。