Java 解码ByteBuffer,snmp陷阱消息的结果
我用它来接收snmpv1陷阱消息:Java 解码ByteBuffer,snmp陷阱消息的结果,java,decode,snmp,bytebuffer,snmp4j,Java,Decode,Snmp,Bytebuffer,Snmp4j,我用它来接收snmpv1陷阱消息: transport.addTransportListener(new TransportListener() { public void processMessage(TransportMapping transportmapping, Address address, ByteBuffer byteBuffer) { BERInputStream berStream = new BERInputStream(
transport.addTransportListener(new TransportListener() {
public void processMessage(TransportMapping transportmapping,
Address address, ByteBuffer byteBuffer) {
BERInputStream berStream = new BERInputStream(byteBuffer);
BER.decodeString(berStream, new BER.MutableByte());
}
)};
我的问题是,我不知道如何解析byteBuffer
,以获得代理以清晰的方式发送的数据。
这是我现在执行代码时得到的结果:
java.io.IOException: Wrong ASN.1 type. Not a string: 48 at position 1
我尝试过其他一些MutableType
s,但我真的不知道该用哪一个。
这是正确的吗?如果是的话,你知道使用哪个
可变类型吗?我完全错了
感谢我的一位同事,以下是更正(忽略上述内容):
命令
包含所有信息,无需解码任何内容。您可以在您的帖子中添加一条示例消息吗?@Robert:看到我的答案了,我做错了。
Snmp snmp = new Snmp(transport);
CommandResponder trapPrinter = new CommandResponder() {
public synchronized void processPdu(CommandResponderEvent e) {
PDU command = e.getPDU();
}
};