jia5462873 2013-01-16 15:42
浏览 297
已采纳

linux 下BufferOverflowException 异常,怎么解决?

linux服务器下发短信功能会报以下异常:
ceshi15:20
16?ヨ?搴?.绀?
ceshi15:20(瓒.骇绠$.?.
--?.??..?.け璐?java.nio.BufferOverflowException

其中ceshi15:20是我的短信内容

windows服务器下正常。

linux下的异常可能不到具体是哪行代码出错,求大师指点。

问题代码如下,供参考:
public static boolean send(String tel, String msg, String sender, String sendDept, String taskid) {
if(!inited)init();
boolean sendFlag = false;
Socket socket = null;
try {
socket = new Socket(serverIp, serverPort);
if (sendBind(socket)) {
try {
if (sendMessage(socket, tel, msg, sender, sendDept)) {
sendFlag = true;
System.out.println("--短消息发送成功。");
}
else {
System.out.println("--短消息发送失败。");
}
}
catch (Exception ex) {
System.out.println("--短消息发送失败:"+ex);
}

  }
  else {
    System.out.println("--短消息发送失败。绑定未成功!");
  }
}
catch (Exception e) {
  e.printStackTrace();
}
finally {
  try {
    socket.close();
  }
  catch (Exception ex) {}
}
if(sendFlag){
    dao.updateTask(taskid, 2);
}else{
    dao.updateTask(taskid, 1);
}
return sendFlag;

}

  • 写回答

1条回答 默认 最新

  • microPAO 2013-01-17 15:55
    关注

    catch (Exception ex) {
    System.out.println("--短消息发送失败:"+ex);
    }

    catch块中这样输出无法获取完整的异常栈,调试很困难。
    建议先使用log4j,输出较为完整的异常信息,然后贴出来大家一起看看

    catch (Exception ex) {
    log.error("--短消息发送失败:", ex);
    }
    或者
    catch (Exception ex) {
    ex.printStackTrace(); ;
    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)
  • ¥15 keil里为什么main.c定义的函数在it.c调用不了
  • ¥50 切换TabTip键盘的输入法
  • ¥15 可否在不同线程中调用封装数据库操作的类
  • ¥15 微带串馈天线阵列每个阵元宽度计算