NullPointerException
Closed this issue · 1 comments
GoogleCodeExporter commented
Hi Davy,
When i using Reflection Type to call method with no arguments, it will be
thrown NullPointerException. More log info as below.
2012-07-13 17:59:52,874 [main] ERROR code.google.nfs.rpc.protocol.RPCProtocol
-encode request object error
java.lang.NullPointerException
at code.google.nfs.rpc.protocol.RPCProtocol.encode(RPCProtocol.java:104)
at code.google.nfs.rpc.protocol.ProtocolUtils.encode(ProtocolUtils.java:35)
at code.google.nfs.rpc.netty.serialize.NettyProtocolEncoder.encode(NettyProtocolEncoder.java:22)
at org.jboss.netty.handler.codec.oneone.OneToOneEncoder.handleDownstream(OneToOneEncoder.java:66)
at org.jboss.netty.channel.DefaultChannelPipeline.sendDownstream(DefaultChannelPipeline.java:591)
at org.jboss.netty.channel.DefaultChannelPipeline.sendDownstream(DefaultChannelPipeline.java:582)
at org.jboss.netty.channel.Channels.write(Channels.java:611)
at org.jboss.netty.channel.Channels.write(Channels.java:578)
at org.jboss.netty.channel.AbstractChannel.write(AbstractChannel.java:251)
at code.google.nfs.rpc.netty.client.NettyClient.sendRequest(NettyClient.java:47)
at code.google.nfs.rpc.client.AbstractClient.invokeSyncIntern(AbstractClient.java:69)
at code.google.nfs.rpc.client.AbstractClient.invokeSync(AbstractClient.java:55)
at code.google.nfs.rpc.client.AbstractClientInvocationHandler.invoke(AbstractClientInvocationHandler.java:73)
at $Proxy0.sayHello(Unknown Source)
at MyNettyClient.main(MyNettyClient.java:29)
2012-07-13 17:59:52,877 [main] ERROR .nfs.rpc.netty.client.NettyClientHandler
-catch some exception not IOException
java.lang.NullPointerException
at code.google.nfs.rpc.protocol.RPCProtocol.encode(RPCProtocol.java:104)
at code.google.nfs.rpc.protocol.ProtocolUtils.encode(ProtocolUtils.java:35)
at code.google.nfs.rpc.netty.serialize.NettyProtocolEncoder.encode(NettyProtocolEncoder.java:22)
at org.jboss.netty.handler.codec.oneone.OneToOneEncoder.handleDownstream(OneToOneEncoder.java:66)
at org.jboss.netty.channel.Channels.write(Channels.java:611)
at org.jboss.netty.channel.Channels.write(Channels.java:578)
at org.jboss.netty.channel.AbstractChannel.write(AbstractChannel.java:251)
at code.google.nfs.rpc.netty.client.NettyClient.sendRequest(NettyClient.java:47)
at code.google.nfs.rpc.client.AbstractClient.invokeSyncIntern(AbstractClient.java:69)
at code.google.nfs.rpc.client.AbstractClient.invokeSync(AbstractClient.java:55)
at code.google.nfs.rpc.client.AbstractClientInvocationHandler.invoke(AbstractClientInvocationHandler.java:73)
at $Proxy0.sayHello(Unknown Source)
at MyNettyClient.main(MyNettyClient.java:29)
--------------------------------------------------------------
I have temporarily fixed this issue by adding a NULL checking as below you can
see.
Object[] requestObjects = wrapper.getRequestObjects();
if(requestObjects!=null){
for (Object requestArg : requestObjects) {
byte[] requestArgByte = Codecs.getEncoder(wrapper.getCodecType()).encode(requestArg);
requestArgs.add(requestArgByte);
requestArgsLen += requestArgByte.length;
}
}
Original issue reported on code.google.com by kasa.l...@gmail.com
on 13 Jul 2012 at 10:20
GoogleCodeExporter commented
Thks,I fixed it in trunk code.
Original comment by BlueDavy
on 23 Jul 2012 at 2:34
- Changed state: Fixed