[SNMP4J] Null Pointer Exception - MOSubTreeProxy snmp4jAgent v2.5.0

ru_44 at hotmail.com ru_44 at hotmail.com
Wed May 18 15:19:58 CEST 2016



Hi Frank,I recently upgraded to snmp4j 2.5.0 and snmp4j agent v2.5.0. There’s a bugfix in SNMP4J v2.5.0 which causes a Null Pointer Exception when we use
the MOSubtreeProxy in SNMP4J-Agent v2.5.0

http://www.snmp4j.org/CHANGES.txt

* Fixed [SFJ-121]:
DefaultPDUFactory.createPDU does not set contextName and contextEngineID on
ScopedPDU

  instances.

 

 

The MOSubtreeProxy class needs to set (or initialize) the
contextEngineID & contextEngineName in the DefaultPDUFactory inside its
constructor.  Currently when the
DefaultPDUFactory.applyContextInfoToScopedPDU() is called via DefaultPDUFactory.createPDU(),
both fields are NULL.

 

22767 [DefaultUDPTransportMapping_192.168.1.90/161]
DEBUG org.snmp4j.agent.mo.snmp.VacmMIB  - Access allowed for view
'fullReadView2' by subtree 1.3 for OID 1.3.6.1.2.1.1.1.0

java.lang.NullPointerException: Context engine ID
must not be null

        at
org.snmp4j.ScopedPDU.setContextEngineID(ScopedPDU.java:69)

        at
org.snmp4j.util.DefaultPDUFactory.applyContextInfoToScopedPDU(DefaultPDUFactory.java:114)

        at
org.snmp4j.util.DefaultPDUFactory.createPDU(DefaultPDUFactory.java:99)

        at
org.snmp4j.agent.mo.snmp4j.MOSubtreeProxy.get(MOSubtreeProxy.java:139)

        at
org.snmp4j.agent.CommandProcessor$GetHandler.processPdu(CommandProcessor.java:1074)

        at
org.snmp4j.agent.CommandProcessor$GetHandler.processPdu(CommandProcessor.java:1041)

        at
org.snmp4j.agent.CommandProcessor.processRequest(CommandProcessor.java:422)

        at
org.snmp4j.agent.CommandProcessor.processRequest(CommandProcessor.java:384)

        at
org.snmp4j.agent.CommandProcessor.dispatchCommand(CommandProcessor.java:340)

        at
org.snmp4j.agent.CommandProcessor$Command.run(CommandProcessor.java:560)

        at
org.snmp4j.agent.CommandProcessor.processPdu(CommandProcessor.java:163)

        at
com.mibadapter.snmpagent.Processor.processPdu(Processor.java:73)

        at
org.snmp4j.MessageDispatcherImpl.fireProcessPdu(MessageDispatcherImpl.java:689)

        at
org.snmp4j.MessageDispatcherImpl.dispatchMessage(MessageDispatcherImpl.java:308)

        at
org.snmp4j.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:385)

        at
org.snmp4j.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:345)

        at
org.snmp4j.transport.AbstractTransportMapping.fireProcessMessage(AbstractTransportMapping.java:76)

        at
org.snmp4j.transport.DefaultUdpTransportMapping$ListenThread.run(DefaultUdpTransportMapping.java:423)

        at
java.lang.Thread.run(Thread.java:745)

22773 [DefaultUDPTransportMapping_192.168.1.90/161]
WARN org.snmp4j.agent.CommandProcessor  - java.lang.NullPointerException:
Context engine ID must not be null

java.lang.Exception: Error 'General variable binding
error' generated at: 1.3.6.1.2.1.1.1.0 = Null

        at
org.snmp4j.agent.request.SnmpRequest$SnmpSubRequest.requestStatusChanged(SnmpRequest.java:621)

        at
org.snmp4j.agent.request.RequestStatus.fireRequestStatusChanged(RequestStatus.java:89)

        at
org.snmp4j.agent.request.RequestStatus.setErrorStatus(RequestStatus.java:52)

        at
org.snmp4j.agent.CommandProcessor$GetHandler.processPdu(CommandProcessor.java:1087)

        at
org.snmp4j.agent.CommandProcessor$GetHandler.processPdu(CommandProcessor.java:1041)

        at
org.snmp4j.agent.CommandProcessor.processRequest(CommandProcessor.java:422)

        at
org.snmp4j.agent.CommandProcessor.processRequest(CommandProcessor.java:384)

        at
org.snmp4j.agent.CommandProcessor.dispatchCommand(CommandProcessor.java:340)

        at
org.snmp4j.agent.CommandProcessor$Command.run(CommandProcessor.java:560)

        at
org.snmp4j.agent.CommandProcessor.processPdu(CommandProcessor.java:163)

        at
com.mibadapter.snmpagent.Processor.processPdu(Processor.java:73)

        at
org.snmp4j.MessageDispatcherImpl.fireProcessPdu(MessageDispatcherImpl.java:689)

        at
org.snmp4j.MessageDispatcherImpl.dispatchMessage(MessageDispatcherImpl.java:308)

        at
org.snmp4j.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:385)

        at
org.snmp4j.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:345)

        at
org.snmp4j.transport.AbstractTransportMapping.fireProcessMessage(AbstractTransportMapping.java:76)

        at
org.snmp4j.transport.DefaultUdpTransportMapping$ListenThread.run(DefaultUdpTransportMapping.java:423)

        at
java.lang.Thread.run(Thread.java:745)

 ThanksRushik

  		 	   		  


More information about the SNMP4J mailing list