Hi all, I'm using Camel2.5 SNMP component and encountered some problems. I checked source code, made a patch (shown below) and it woked fine in my environment.
I would like to confirm whether belows cases are bugs or not, and if these are not bugs, how do I avoid them. *case1 When application calles doStop() method in SNMP component more than twice, I got NullPointerException. *case2 I can not set protocol=tcp in SNMP component. *path I applied the patch for org.apache.camel.component.snmp.SnmpOIDPoller class --- org/SnmpOIDPoller.java 2010-10-25 16:30:46.000000000 +0900 +++ new/SnmpOIDPoller.java 2011-01-13 15:39:47.872629200 +0900 @@ -36,6 +36,7 @@ import org.snmp4j.smi.OID; import org.snmp4j.smi.OctetString; import org.snmp4j.smi.VariableBinding; +import org.snmp4j.transport.DefaultTcpTransportMapping; import org.snmp4j.transport.DefaultUdpTransportMapping; public class SnmpOIDPoller extends ScheduledPollConsumer implements ResponseListener { @@ -63,7 +64,11 @@ LOG.debug("Activating oid poller"); this.targetAddress = GenericAddress.parse(this.endpoint.getAddress()); - this.transport = new DefaultUdpTransportMapping(); + if (this.endpoint.getProtocol().equalsIgnoreCase("tcp")) {//tcp option + this.transport = new DefaultTcpTransportMapping(); + } else { //simply consider udp + this.transport = new DefaultUdpTransportMapping(); + } this.snmp = new Snmp(this.transport); this.usm = new USM(SecurityProtocols.getInstance(), new OctetString(MPv3.createLocalEngineID()), 0); SecurityModels.getInstance().addSecurityModel(usm); @@ -85,9 +90,11 @@ @Override protected void doStop() throws Exception { // stop listening to the transport - if (this.transport.isListening()) { - this.transport.close(); - } + if (this.transport != null) { //suppress NullPointerException when doStop called more than twice + if (this.transport.isListening()) { + this.transport.close(); + } + } super.doStop(); } -- View this message in context: http://camel.465427.n5.nabble.com/camel-snmp-2-5-problems-tp3339373p3339373.html Sent from the Camel - Users mailing list archive at Nabble.com.