Error on SNMP Java Client Application

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • sreekandank
    New Member
    • Jun 2009
    • 45

    Error on SNMP Java Client Application

    I have written the following SNMP client code to display the hardware information
    Code:
    import java.io.IOException;
    import org.snmp4j.CommunityTarget;
    import org.snmp4j.PDU;
    import org.snmp4j.Snmp;
    import org.snmp4j.Target;
    import org.snmp4j.TransportMapping;
    import org.snmp4j.event.ResponseEvent;
    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 SNMPManager
    {
     Snmp snmp=null;
     String address=null;
     public SNMPManager(String add)
     {
      address=add;
     }
     public static void main(String[] args)throws IOException
     {
      SNMPManager client=new SNMPManager("udp:127.0.0.1/161");
      client.start();
      String sysDescr=client.getAsString(new OID(".1.3.6.1.2.1.1.1.0"));
      System.out.println(sysDescr);
     }
     private void start()throws IOException
     {
      TransportMapping transport=new DefaultUdpTransportMapping();
      snmp = new Snmp(transport);
      transport.listen();
     }
     public String getAsString(OID oid)throws IOException
     {
      ResponseEvent event=get(new OID[]{oid});
      return event.getResponse().get(0).getVariable().toString();
     }
     public ResponseEvent get(OID oids[])throws IOException
     {
      PDU pdu=new PDU();
      for(OID oid:oids)
      {
       pdu.add(new VariableBinding(oid));
      }
      pdu.setType(PDU.GET);
      ResponseEvent event=snmp.send(pdu, getTarget(),null);
      if(event != null)
      {
       return event;
      }
      throw new RuntimeException("GET timed out");
     }
     private Target getTarget()
     {
      Address targetAddress=GenericAddress.parse(address);
      CommunityTarget target=new CommunityTarget();
      target.setCommunity(new OctetString("public"));
      target.setAddress(targetAddress);
      target.setRetries(2);
      target.setTimeout(1500);
      target.setVersion(SnmpConstants.version2c);
      return target;
     }
    }
    When I run this program, that shows the exception as given below:

    Exception in thread "main" java.lang.NoCla ssDefFoundError : org/snmp4j/TransportMappin g
    at java.lang.Class .getDeclaredMet hods0(Native Method)
    at java.lang.Class .privateGetDecl aredMethods(Cla ss.java:2442)
    at java.lang.Class .getMethod0(Cla ss.java:2685)
    at java.lang.Class .getMethod(Clas s.java:1620)
    at sun.launcher.La uncherHelper.ge tMainMethod(Lau ncherHelper.jav a:494)
    at sun.launcher.La uncherHelper.ch eckAndLoadMain( LauncherHelper. java:486)

    Caused by: java.lang.Class NotFoundExcepti on: org.snmp4j.Tran sportMapping
    at java.net.URLCla ssLoader$1.run( URLClassLoader. java:366)
    at java.net.URLCla ssLoader$1.run( URLClassLoader. java:355)
    at java.security.A ccessController .doPrivileged(N ative Method)
    at java.net.URLCla ssLoader.findCl ass(URLClassLoa der.java:354)
    at java.lang.Class Loader.loadClas s(ClassLoader.j ava:423)
    at sun.misc.Launch er$AppClassLoad er.loadClass(La uncher.java:308 )
    at java.lang.Class Loader.loadClas s(ClassLoader.j ava:356)
    ... 6 more


    Please help me to correct this error. Thanks in advance...
  • Kara Hewett
    New Member
    • Apr 2014
    • 27

    #2
    Did you add the jar SNMP4J to WEB-INF/lib?

    Comment

    Working...