一小段用SNMP4J读取OID的代码,请大家给看看,为啥运行的时候返回的是两个null啊?protocol.send()这个函数没有把值传给response?是不是还要有agent端之类的,或者是mib文件要放在什么固定的位置?请明白人给小妹分析一下吧,谢谢了       import org.snmp4j.*;
import org.snmp4j.transport.*;
import java.io.*;
import org.snmp4j.smi.*;
import org.snmp4j.mp.*;
import org.snmp4j.event.*;class snmptest{
        public static void main(String[] args){
        
        try{
        TransportMapping transport1 ;
        transport1 = new DefaultUdpTransportMapping();
         Snmp protocol = new Snmp(transport1);
         transport1.listen();
         CommunityTarget myTarget = new CommunityTarget();//agent对象
         Address deviceAdd;//org.snmp4j.smi.*;
        deviceAdd = GenericAddress.parse("udp:192.168.100.211/161");//设置IP地址和端口号
        myTarget.setAddress(deviceAdd
        myTarget.setCommunity(new OctetString("public"));//设置共同体名
        myTarget.setRetries(0);//设置重试次数
        myTarget.setTimeout(5*60);    //设置超时
        myTarget.setVersion(SnmpConstants.version2c);//org.snmp4j.mp.*;
        PDU pdu = new PDU();//new   request   PDU包
        VariableBinding var = new VariableBinding(new OID("1.3.6.1.4.1.9.2.1.8.0"));
        pdu.add(var);//OID添加 
        pdu.setType(PDU.GET);//设置PDU类型,
        ResponseEvent response = protocol.send(pdu, myTarget);//发出request   PDU 
        System.out.println(response.getResponse());
        System.out.println(response.getPeerAddress());      }catch(IOException e){
              e.printStackTrace();
              System.out.println(e.getMessage());              return;
      }
        }
}