snmp4j FAQ
- Why is SNMP4J free?
Currently there is a lack of an affordable well object
oriented designed SNMP implementation for Java. SNMP4J tries to fill this gap.
It is free to get the best support and feedback from the Internet community. In
addition it is a small compensation for the help we got from other open source
projects.
Nevertheless you are welcome to support the development of SNMP4J
by purchasing commercial e-mail support.
- Where can I find examples for SNMP4J API usage?
Simple examples are provided by
the JavaDoc of the SNMP class which can be viewed here.
A (nearly) complete example for the SNMP4J API usage
is the console tool. It can be found in the org.snmp4j.tools.console.SnmpRequest
class.
- Is SNMP4J thread-safe?
Yes, SNMP4J is designed for multi-threaded
environments. Nevertheless, objects put into a PDU must not be modified while
the corresponding SNMP request is being processed.
- Why do I get sometimes a time-out (response == null) on a request although I see log
messages like “Received response that cannot be matched to any outstanding
request...”?
The response of the agent has been received after the
request had been timed out. To solve this, increase the time-out value for the
target.
- Why am I always getting a time-out (response == null) when sending a request?
Probably you have forgotten to call the listen() method of the
TransportMapping (once) or the Snmp class before sending the
request.
- Can I use a single Snmp instance to request data from multiple SNMP agents at the same time?
Yes, of course! You can either use asynchronous requests and
collect their responses in a one or more callback listeners or you can use
synchronous requests that are send from several threads concurrently. - Can SNMP4J be used with Java EE?
Yes, the SNMP4JSettings class provides the
option to replace the default thread and timer factories by custom ones that use
Java EE resources instead of Java SE threads (timers).