je developpe une application sous netbeans on utilisant le package snmp4j.
j'ai ajouté la variable 'msg' pour voir ou sa bloque dans le programme, j'ai consataté que il permet d'envoyer le paquet, mais, il n'arrive pas de récupréré le résultat. (msg="1 2").
je ne vois pas ou est le probleme?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
 
package Pack;
 
import org.snmp4j.CommunityTarget;
import org.snmp4j.PDU;
import org.snmp4j.Snmp;
import org.snmp4j.TransportMapping;
import org.snmp4j.event.ResponseEvent;
import org.snmp4j.event.ResponseListener;
import org.snmp4j.mp.SnmpConstants;
import org.snmp4j.smi.Address;
import org.snmp4j.smi.GenericAddress;
import org.snmp4j.smi.OID;
import org.snmp4j.smi.OctetString;
import org.snmp4j.smi.VariableBinding;
import org.snmp4j.transport.DefaultUdpTransportMapping;
 
public class snmp1
{
  private String msg="";
 
  public String Aff()
  {
     return msg;
  }
 
  public void methsnmp()
   {
    try
    {
     Address targetAddress = GenericAddress.parse("udp:127.0.0.1/161");
     TransportMapping transport = new DefaultUdpTransportMapping();
     Snmp snmp = new Snmp(transport);
 
     transport.listen();
 
     CommunityTarget target = new CommunityTarget();
     target.setCommunity(new OctetString("public"));
     target.setAddress(targetAddress);
     target.setRetries(2);
     target.setTimeout(1500);
     target.setVersion(SnmpConstants.version2c);
 
     PDU pdu = new PDU();
     pdu.add(new VariableBinding(new OID(new int[] {1,3,6,1,2,1,1,5,0})));
     //pdu.add(new VariableBinding(new OID(new int[] {1,3,6,1,2,1,1,7,0})));
     pdu.setType(PDU.GET);
 
     ResponseListener listener = new ResponseListener()
     {
       public void onResponse(ResponseEvent event)
          {
            msg+="3";
            ((Snmp)event.getSource()).cancel(event.getRequest(), this);
            msg="Received response PDU is: "+event.getResponse();
            //System.out.println(msg);
          }
     };
     msg+="1";
     snmp.send(pdu, target, null, listener);
     msg+="2";
    }
    catch(Exception e)
    {
      msg="Erreur";
    }
 }
}