首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java jnetpcap IndexOutOfBoundsEcxeption有效负载

Java jnetpcap IndexOutOfBoundsEcxeption有效负载
EN

Stack Overflow用户
提问于 2014-11-01 21:13:05
回答 1查看 131关注 0票数 0
代码语言:javascript
复制
  if (packet.hasHeader(ip)) {  
         String str = FormatUtils.ip(ip.source());  

         if (packet.hasHeader(Payload.ID)) {

             try{
             payload = packet.getHeader(new Payload());
             }
             catch(Exception e)
             {
                System.err.println("ERROR"); 

             }


              if(payload!=null){
              String pattern;
              synchronized (MainThread.lockB){ 
              pattern=MPSM.findpatt(payload.toString());
              }
            synchronized (MainThread.lockB){ 
                smpsmCheckPattern(pattern, nameOfAdd, payload.toString() );
                }
              }'

有时当我运行程序时,我会得到IndexOutOfBoundsEcxeption in try "payload = packet.getHeader(new Payload());",我不知道为什么我会得到异常

EN

回答 1

Stack Overflow用户

发布于 2014-11-05 03:21:15

我猜错误是因为if cond检查前一个包的协议id,该包可能与您现在正在处理的有效负载不同。

替换下面的逻辑

if (packet.hasHeader(Payload.ID)) {

代码语言:javascript
复制
         try{
         payload = packet.getHeader(new Payload());
         }
         catch(Exception e)
         {
            System.err.println("ERROR"); 
         }

使用

Payload pl = new Payload();

if(packet.hasHeader(pl)) //这将检查并检索有效负载

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26689656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档