Re: [jgroups-dev] What does cause NullPointerException?

Development issues <[email protected]> Fri, 25 Dec 2015 05:03:43 -0700 (MST)
Newsgroups gmane.comp.java.javagroups.devel
Message-ID <[email protected]>
--===============4363445656547565801==
Content-Type: multipart/alternative; 
	boundary="----=_Part_653579_2027020197.1451045023255"

------=_Part_653579_2027020197.1451045023255
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

The exception occurs in your code (Zab2PhasesTest.resetProtocol), so=20
without that code I don't know what's going on. If you post a unit test=20
and package up the code I could take a look. Or you set a breakpoint in=20
Zab2PhasesTest.resetProtocol() and see what's null that triggers the NPE.

Yes, The exception occurs in your code (Zab2PhasesTest.resetProtocol) in li=
ne channel.send(msg).In fact, I do not use Junit test, when I am coding and=
=C2=A0 testing the code, I just compile and run it in Linux machines using =
command line.=20
The attachment shows the codes. They are two files, one called Zab2PhasesTe=
st and second called Zab2PhasesClient. Zab2PhasesClient uses by Zab2PhasesT=
est to initial senders to send requests to servers.=20

Note that NPE occurs in Zab2PhasesTest.resetProtocol in line channel.send(m=
sg, line 192.
Thank you indeed
Ibrahim
=C2=A0
=20

    On Friday, December 25, 2015 7:58 AM, JGroups - Dev mailing list [via J=
Groups] <[email protected]> wrote:
=20

  The exception occurs in your code (Zab2PhasesTest.resetProtocol), so=20
without that code I don't know what's going on. If you post a unit test=20
and package up the code I could take a look. Or you set a breakpoint in=20
Zab2PhasesTest.resetProtocol() and see what's null that triggers the NPE.

On 24/12/15 22:34, Development issues wrote:
> <<An NPE can only occur if channel is null at this point...
> <<JChannel.getAddress() can of course return null if the channel hasn't
> <<been connected yet, but you'd only get an NPE if you try to reference
> <<local_address
> The channel is connected and I use it without any problem before the
> line where the exception occur. Meaning that with the same code I manage
> to use channel to send requests to the servers, but where the execution
> come to line channel.send(msg), the exception occurs. This is why I am
> surprised when I use channel first time it worked but when I use it
> again I have NullPointerException.
> <<OK. Can you also subscribe properly? So far, I've had to approve all of
> <<your posts individually...
> I thought I am already subscribe by using and logging in to this site
> http://jgroups.1086181.n5.nabble.com/.
> No worry, I have found another site and just subscribe today which is
> https://sourceforge.net/p/javagroups/mailman/javagroups-development/. I
> hope now I am subscribed correctly.
> The following is stack trace as requested:
> java.lang.NullPointerException
> at
> org.jgroups.protocols.jz.Zab2PhasesTest.resetProtocol(Zab2PhasesTest.java=
:192)
> at
> org.jgroups.protocols.jz.Zab2PhasesTest.finishedSend(Zab2PhasesTest.java:=
318)
> at
> org.jgroups.protocols.jz.Zab2PhasesClient.receive(Zab2PhasesClient.java:1=
43)
> at org.jgroups.JChannel.invokeCallback(JChannel.java:812)
> at org.jgroups.JChannel.up(JChannel.java:736)
> at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:1029)
> at org.jgroups.protocols.pbcast.STATE_TRANSFER.up(STATE_TRANSFER.java:146=
)
> at org.jgroups.protocols.FRAG2.up(FRAG2.java:165)
> at
> org.jgroups.protocols.jz.Zab2Phases.handleOrderingResponse(Zab2Phases.jav=
a:588)
> at org.jgroups.protocols.jz.Zab2Phases.up(Zab2Phases.java:256)
> at org.jgroups.protocols.jz.Zab2Phases.up(Zab2Phases.java:277)
> at org.jgroups.protocols.RSVP.up(RSVP.java:237)
> at org.jgroups.stack.Protocol.up(Protocol.java:420)
> at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:294)
> at org.jgroups.protocols.UNICAST3.deliverBatch(UNICAST3.java:1087)
> at org.jgroups.protocols.UNICAST3.removeAndDeliver(UNICAST3.java:886)
> at org.jgroups.protocols.UNICAST3.handleDataReceived(UNICAST3.java:790)
> at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:426)
> at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:619)
> at org.jgroups.protocols.BARRIER.up(BARRIER.java:152)
> at org.jgroups.protocols.VERIFY_SUSPECT.up(VERIFY_SUSPECT.java:155)
> at org.jgroups.protocols.FD_ALL.up(FD_ALL.java:200)
> at org.jgroups.protocols.FD_SOCK.up(FD_SOCK.java:297)
> at org.jgroups.protocols.MERGE2.up(MERGE2.java:237)
> at org.jgroups.protocols.Discovery.up(Discovery.java:277)
> at org.jgroups.protocols.TP.passMessageUp(TP.java:1572)
> at org.jgroups.protocols.TP$MyHandler.run(TP.java:1791)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java=
:1142)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.jav=
a:617)
> at java.lang.Thread.run(Thread.java:745)
> Cheers,
> Ibrahim
> Ibrahim EL-Sanosi PHD student [hidden email]
> </user/SendEmail.jtp?type=3Dnode&node=3D10925&i=3D0>
>
>
> On Thursday, December 24, 2015 7:21 AM, JGroups - Dev mailing list [via
> JGroups] <[hidden email] </user/SendEmail.jtp?type=3Dnode&node=3D10925&i=
=3D1>>
> wrote:
>
>
>
>
> On 23/12/15 19:30, Development issues wrote:
> =C2=A0> =C2=A0>>I bet this occurs when trying to marshall Zab2PhasesHeade=
r. Did
> you add
> =C2=A0> =C2=A0>>a magic-ID for your header, e.g.
> =C2=A0> =C2=A0>>ClassConfigurator.add(7200, Zab2PhasesHeader.class); ?
> =C2=A0> =C2=A0>>Also, you need to add your protocols as well, e.g.
> =C2=A0> =C2=A0>>ClassConfigurator.addProtocol(513, jzookeeper.Zab2Phases.=
class);
> =C2=A0>
> =C2=A0> Yes, I added all protocol headers in jg-magic-map.xml, and added =
all
> =C2=A0> protocols in jg-protocol-ids.xml files.
>
>
> OK, so this isn't the problem then...
>
>
> =C2=A0> I think the problem is in channel object, why I think that becaus=
e I
> =C2=A0> tried to add line channel.getAddress() before channel.send(msg) t=
he
> =C2=A0> excption points to channel.getAddress(), see below.
> =C2=A0>
> =C2=A0> ZABHeader resetProtocol =3D new ZABHeader(ZABHeader.RESET);
> =C2=A0> Message msg =3D new Message(null).putHeader(ID, resetProtocol);
> =C2=A0> Address local_addr =3D channel.getAddress();// The exception occu=
rs here.
>
>
> An NPE can only occur if channel is null at this point...
> JChannel.getAddress() can of course return null if the channel hasn't
> been connected yet, but you'd only get an NPE if you try to reference
> local_address
>
>
> =C2=A0> channel.send(msg);
> =C2=A0>
> =C2=A0> I will send stack trace tomorrow. Sorry for that.
>
> OK. Can you also subscribe properly? So far, I've had to approve all of
> your posts individually...
> Cheers,
>
> =C2=A0> Ibrahim
> =C2=A0>
> =C2=A0>
> =C2=A0> On Wednesday, December 23, 2015 5:45 PM, JGroups - Dev mailing li=
st [via
> =C2=A0> JGroups] <[hidden email] </user/SendEmail.jtp?type=3Dnode&node=3D=
10922&i=3D0>>
> =C2=A0> wrote:
> =C2=A0>
> =C2=A0>
> =C2=A0>
> =C2=A0>
> =C2=A0> On 23/12/15 18:16, Development issues wrote:
> =C2=A0>
> =C2=A0> =C2=A0> Thank you for replaying.
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> Yes, I never reuse a message. The following is a part of =
my code
> where
> =C2=A0> =C2=A0> the exception occurs:
> =C2=A0> =C2=A0> Client code:
> =C2=A0> =C2=A0> ---
> =C2=A0> =C2=A0> ---
> =C2=A0> =C2=A0> --
> =C2=A0> =C2=A0> Zab2PhasesHeader resetProtocol =3D new
> Zab2PhasesHeader(Zab2PhasesHeader
> =C2=A0> =C2=A0> .RESET);
> =C2=A0> =C2=A0> Message msg =3D new Message(null).putHeader(ID, resetProt=
ocol);
> =C2=A0> =C2=A0> channel.send(msg); // The exception point to this line.
> =C2=A0> You still haven't shown the stack trace.
> =C2=A0> I bet this occurs when trying to marshall Zab2PhasesHeader. Did y=
ou add
> =C2=A0> a magic-ID for your header, e.g.
> =C2=A0> ClassConfigurator.add(7200, Zab2PhasesHeader.class); ?
> =C2=A0>
> =C2=A0> Also, you need to add your protocols as well, e.g.
> =C2=A0> ClassConfigurator.addProtocol(513, jzookeeper.Zab2Phases.class);
> =C2=A0>
> =C2=A0>
> =C2=A0>
> =C2=A0> =C2=A0> Note that I have 3 protocols (ZabMain, Zab2Phases and Zab=
Prob), each
> =C2=A0> =C2=A0> with its own header and stack. The same =C2=A0client code=
 (above code) is
> =C2=A0> =C2=A0> used (with different in protocol header) to benchmark all=
 three
> =C2=A0> =C2=A0> protocols. The client code ran without any problems when =
I benchmark
> =C2=A0> =C2=A0> the protocols ZabMain and ZabProb. The problem only occur=
s when I
> =C2=A0> =C2=A0> benchmark the Zab2Phases protocol.
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> The following is Zab2Phases stack as requested:
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> <config xmlns=3D"urn:org:jgroups"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0xmlns:xsi=3D"http://www=
.w3.org/2001/XMLSchema-instance"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0xsi:schemaLocation=3D"u=
rn:org:jgroups
> =C2=A0> =C2=A0> http://www.jgroups.org/schema/JGroups-3.3.xsd">
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<UDP
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0mcast_por=
t=3D"${jgroups.udp.mcast_port:45588}"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0tos=3D"8"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0max_bundl=
e_size=3D"64K"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0max_bundl=
e_timeout=3D"30"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0enable_di=
agnostics=3D"true"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0thread_na=
ming_pattern=3D"cl"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0ip_mcast=
=3D"false"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0timer_typ=
e=3D"new3"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0timer.min=
_threads=3D"10"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0timer.max=
_threads=3D"10"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0timer.kee=
p_alive_time=3D"3000"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0timer.que=
ue_max_size=3D"500"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0timer.rej=
ection_policy=3D"abort"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0thread_po=
ol.enabled=3D"true"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0thread_po=
ol.min_threads=3D"2"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0thread_po=
ol.max_threads=3D"8"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0thread_po=
ol.keep_alive_time=3D"5000"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0thread_po=
ol.queue_enabled=3D"true"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0thread_po=
ol.queue_max_size=3D"10000"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0thread_po=
ol.rejection_policy=3D"discard"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0oob_threa=
d_pool.enabled=3D"true"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0oob_threa=
d_pool.min_threads=3D"1"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0oob_threa=
d_pool.max_threads=3D"8"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0oob_threa=
d_pool.keep_alive_time=3D"5000"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0oob_threa=
d_pool.queue_enabled=3D"false"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0oob_threa=
d_pool.queue_max_size=3D"100"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0oob_threa=
d_pool.rejection_policy=3D"discard"/>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<FILE_PING
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0timeout=
=3D"2000"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0num_initi=
al_members=3D"20"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0location=
=3D"/home/pg/p13/a6915654/"/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<MERGE2 max_interval=3D"30000"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0min_inter=
val=3D"10000"/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<FD_SOCK/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<FD_ALL/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<VERIFY_SUSPECT timeout=3D"1500" =C2=
=A0/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<BARRIER/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<pbcast.NAKACK2 xmit_interval=3D"1000=
"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0xmit_table_num_rows=3D"100"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0xmit_table_msgs_per_row=3D"2000"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0xmit_table_max_compaction_time=3D"30000"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0max_msg_batch_size=3D"500"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0use_mcast_xmit=3D"false"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0discard_delivered_msgs=3D"true"/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<UNICAST3 xmit_interval=3D"500"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0xm=
it_table_num_rows=3D"100"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0xm=
it_table_msgs_per_row=3D"2000"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0xm=
it_table_max_compaction_time=3D"60000"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0co=
nn_expiry_timeout=3D"0"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0ma=
x_msg_batch_size=3D"500"/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<pbcast.STABLE stability_delay=3D"100=
0" desired_avg_gossip=3D"50000"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 max_bytes=3D"4M"/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 <pbcast.GMS print_local_addr=3D"true=
" join_timeout=3D"3000"
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0view_bundling=3D"true"/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<UFC/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<MFC/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<RSVP resend_interval=3D"2000" timeou=
t=3D"10000"/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<jzookeeper.Zab2Phases />
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<FRAG2 frag_size=3D"60K" =C2=A0/>
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0<pbcast.STATE_TRANSFER />
> =C2=A0> =C2=A0> </config>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> Thank you indeed.
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> Ibrahim
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> The stack trace is as following?
> =C2=A0> =C2=A0> Ibrahim EL-Sanosi PHD student [hidden email]
> =C2=A0> =C2=A0> </user/SendEmail.jtp?type=3Dnode&node=3D10920&i=3D0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> On Wednesday, December 23, 2015 7:22 AM, JGroups - Dev ma=
iling
> list [via
> =C2=A0> =C2=A0> JGroups] <[hidden email]
> </user/SendEmail.jtp?type=3Dnode&node=3D10920&i=3D1>>
> =C2=A0> =C2=A0> wrote:
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> What's the stack trace?
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> I hope you're not reusing the message, as in:
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> Message msg=3Dnew Message(null, "hello world');
> =C2=A0> =C2=A0> for(int i=3D0; i < 5; i++)
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0ch.send(msg);
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> This is incorrect as the send modifies the message. The c=
orrect code
> =C2=A0> =C2=A0> would be:
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> for(int i=3D0; i < 5; i++) {
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 Message msg=3Dnew Message(null, "hello worl=
d');
> =C2=A0> =C2=A0> =C2=A0 =C2=A0 =C2=A0ch.send(msg);
> =C2=A0> =C2=A0> }
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> On 22/12/15 22:39, Development issues wrote:
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> =C2=A0> I have a cluster consist of 5 machines, 3 allocat=
ed for
> services and
> =C2=A0> =C2=A0> 2 for
> =C2=A0> =C2=A0> =C2=A0> clients. I start the cluster and build a channel =
without any
> problem.
> =C2=A0> =C2=A0> Also
> =C2=A0> =C2=A0> =C2=A0> clients manage to send a request to the servers u=
sing
> =C2=A0> channel.send(msg).
> =C2=A0> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> =C2=A0> However, when I use channel.send(msg) again (in c=
lient side), it
> =C2=A0> =C2=A0> gives me
> =C2=A0> =C2=A0> =C2=A0> NullPointerException. Moreover, NullPointerExcept=
ion point to line
> =C2=A0> where
> =C2=A0> =C2=A0> =C2=A0> channel.send(msg) is.
> =C2=A0> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> =C2=A0> Can anyone tell what does cause such problem?
> =C2=A0> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> =C2=A0> Thank you
> =C2=A0> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> =C2=A0> Ibrahim
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> --
> =C2=A0> =C2=A0> Bela Ban, JGroups lead (http://www.jgroups.org
> <http://www.jgroups.org/>
> =C2=A0> <http://www.jgroups.org/> <http://www.jgroups.org/>)
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0>
> -------------------------------------------------------------------------=
-----
>
> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> _______________________________________________
> =C2=A0> =C2=A0> Javagroups-development mailing list
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> ------------------------------------------------------------------------
> =C2=A0> =C2=A0> If you reply to this email, your message will be added to=
 the
> discussion
> =C2=A0> =C2=A0> below:
> =C2=A0> =C2=A0>
> =C2=A0>
> http://jgroups.1086181.n5.nabble.com/What-does-cause-NullPointerException=
-tp10915p10918.html
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> To unsubscribe from What does cause NullPointerException?=
, click
> here.
> =C2=A0> =C2=A0> NAML
> =C2=A0> =C2=A0>
> =C2=A0>
> <http://jgroups.1086181.n5.nabble.com/template/NamlServlet.jtp?macro=3Dma=
cro_viewer&id=3Dinstant_html%21nabble%3Aemail.naml&base=3Dnabble.naml.names=
paces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.w=
eb.template.NodeNamespace&breadcrumbs=3Dnotify_subscribers%21nabble%3Aemail=
.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aem=
ail.naml>
>
> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> ------------------------------------------------------------------------
> =C2=A0> =C2=A0> View this message in context: Re: What does cause
> NullPointerException?
> =C2=A0> =C2=A0>
> =C2=A0>
> <http://jgroups.1086181.n5.nabble.com/What-does-cause-NullPointerExceptio=
n-tp10915p10920.html>
>
> =C2=A0>
> =C2=A0> =C2=A0> Sent from the JGroups - Dev mailing list archive
> =C2=A0> =C2=A0> <http://jgroups.1086181.n5.nabble.com/JGroups-Dev-f6604.h=
tml> at
> =C2=A0> Nabble.com.
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0>
> -------------------------------------------------------------------------=
-----
>
> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0>
> =C2=A0> =C2=A0> _______________________________________________
> =C2=A0> =C2=A0> Javagroups-development mailing list
> =C2=A0> =C2=A0>
> =C2=A0> --
> =C2=A0> Bela Ban, JGroups lead (http://www.jgroups.org
> <http://www.jgroups.org/> <http://www.jgroups.org/>)
> =C2=A0>
> =C2=A0>
> =C2=A0>
> -------------------------------------------------------------------------=
-----
>
> =C2=A0>
> =C2=A0> _______________________________________________
> =C2=A0> Javagroups-development mailing list
> =C2=A0>
> =C2=A0>
> =C2=A0>
> =C2=A0> -----------------------------------------------------------------=
-------
> =C2=A0> If you reply to this email, your message will be added to the dis=
cussion
> =C2=A0> below:
> =C2=A0>
> http://jgroups.1086181.n5.nabble.com/What-does-cause-NullPointerException=
-tp10915p10921.html
> =C2=A0>
> =C2=A0> To unsubscribe from What does cause NullPointerException?, click =
here.
> =C2=A0> NAML
> =C2=A0>
> <http://jgroups.1086181.n5.nabble.com/template/NamlServlet.jtp?macro=3Dma=
cro_viewer&id=3Dinstant_html%21nabble%3Aemail.naml&base=3Dnabble.naml.names=
paces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.w=
eb.template.NodeNamespace&breadcrumbs=3Dnotify_subscribers%21nabble%3Aemail=
.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aem=
ail.naml>
>
> =C2=A0>
> =C2=A0>
> =C2=A0>
> =C2=A0>
> =C2=A0> -----------------------------------------------------------------=
-------
> =C2=A0> View this message in context: Re: What does cause NullPointerExce=
ption?
> =C2=A0>
> <http://jgroups.1086181.n5.nabble.com/What-does-cause-NullPointerExceptio=
n-tp10915p10922.html>
>
> =C2=A0> Sent from the JGroups - Dev mailing list archive
> =C2=A0> <http://jgroups.1086181.n5.nabble.com/JGroups-Dev-f6604.html> at
> Nabble.com.
> =C2=A0>
> =C2=A0>
> =C2=A0>
> -------------------------------------------------------------------------=
-----
>
> =C2=A0>
> =C2=A0>
> =C2=A0>
> =C2=A0> _______________________________________________
> =C2=A0> Javagroups-development mailing list
> =C2=A0>
> --
> Bela Ban, JGroups lead (http://www.jgroups.org=C2=A0<http://www.jgroups.o=
rg/>)
>
>
> -------------------------------------------------------------------------=
-----
>
> _______________________________________________
> Javagroups-development mailing list
>
>
>
> ------------------------------------------------------------------------
> If you reply to this email, your message will be added to the discussion
> below:
> http://jgroups.1086181.n5.nabble.com/What-does-cause-NullPointerException=
-tp10915p10924.html
>
> To unsubscribe from What does cause NullPointerException?, click here.
> NAML
> <http://jgroups.1086181.n5.nabble.com/template/NamlServlet.jtp?macro=3Dma=
cro_viewer&id=3Dinstant_html%21nabble%3Aemail.naml&base=3Dnabble.naml.names=
paces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.w=
eb.template.NodeNamespace&breadcrumbs=3Dnotify_subscribers%21nabble%3Aemail=
.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aem=
ail.naml>
>
>
>
>
> ------------------------------------------------------------------------
> View this message in context: Re: What does cause NullPointerException?
> <http://jgroups.1086181.n5.nabble.com/What-does-cause-NullPointerExceptio=
n-tp10915p10925.html>
> Sent from the JGroups - Dev mailing list archive
> <http://jgroups.1086181.n5.nabble.com/JGroups-Dev-f6604.html> at Nabble.c=
om.
>
>
> -------------------------------------------------------------------------=
-----
>
>
>
> _______________________________________________
> Javagroups-development mailing list
>
--=20
Bela Ban, JGroups lead (http://www.jgroups.org)


---------------------------------------------------------------------------=
---
_______________________________________________
Javagroups-development mailing list

=20
=20
   If you reply to this email, your message will be added to the discussion=
 below: http://jgroups.1086181.n5.nabble.com/What-does-cause-NullPointerExc=
eption-tp10915p10926.html   To unsubscribe from What does cause NullPointer=
Exception?, click here.
 NAML=20



Code.rar (9K) <http://jgroups.1086181.n5.nabble.com/attachment/10927/0/Code=
.rar>




--
View this message in context: http://jgroups.1086181.n5.nabble.com/What-doe=
s-cause-NullPointerException-tp10915p10927.html
Sent from the JGroups - Dev mailing list archive at Nabble.com.
------=_Part_653579_2027020197.1451045023255
Content-Type: text/html; charset=us-ascii
Content-Transfer-Encoding: quoted-printable

<div style=3D"color:#000; background-color:#fff; font-family:bookman old st=
yle, new york, times, serif;font-size:16px"><div id=3D"yiv7378208276"><div =
id=3D"yui_3_16_0_1_1450957456600_34550"><div id=3D"yui_3_16_0_1_14509574566=
00_34549" style=3D"color:#000;background-color:#fff;font-family:bookman old=
 style, new york, times, serif;font-size:16px;">The exception occurs in you=
r code (Zab2PhasesTest.resetProtocol), so=20
<br class=3D"" id=3D"yui_3_16_0_1_1450957456600_34661" clear=3D"none">witho=
ut that code I don't know what's going on. If you post a unit test=20
<br class=3D"" id=3D"yui_3_16_0_1_1450957456600_34663" clear=3D"none">and p=
ackage up the code I could take a look. Or you set a breakpoint in=20
<br class=3D"" id=3D"yui_3_16_0_1_1450957456600_34665" clear=3D"none">Zab2P=
hasesTest.resetProtocol() and see what's null that triggers the NPE.
<br class=3D"" id=3D"yui_3_16_0_1_1450957456600_34667" clear=3D"none"><br c=
lass=3D"" id=3D"yui_3_16_0_1_1450957456600_34669" clear=3D"none"><div id=3D=
"yui_3_16_0_1_1450957456600_34672" dir=3D"ltr">Yes, The exception occurs in=
 your code (Zab2PhasesTest.resetProtocol) in line channel.send(msg).</div><=
div id=3D"yui_3_16_0_1_1450957456600_34723" dir=3D"ltr">In fact, I do not u=
se Junit test, when I am coding and&nbsp; testing the code, I just compile =
and run it in Linux machines using command line. <br></div><div id=3D"yui_3=
_16_0_1_1450957456600_35004" dir=3D"ltr">The attachment shows the codes. Th=
ey are two files, one called Zab2PhasesTest and second called Zab2PhasesCli=
ent. Zab2PhasesClient uses by Zab2PhasesTest to initial senders to send req=
uests to servers. <br></div><div id=3D"yui_3_16_0_1_1450957456600_35428" di=
r=3D"ltr"><br></div><div id=3D"yui_3_16_0_1_1450957456600_35426" dir=3D"ltr=
">Note that NPE occurs in Zab2PhasesTest.resetProtocol in line channel.send=
(msg, line 192.</div><div id=3D"yui_3_16_0_1_1450957456600_35474" dir=3D"lt=
r"><br></div><div id=3D"yui_3_16_0_1_1450957456600_35475" dir=3D"ltr">Thank=
 you indeed</div><div dir=3D"ltr"><br></div><div dir=3D"ltr">Ibrahim<br></d=
iv><div id=3D"yiv7378208276yui_3_16_0_1_1450957456600_32600"><span></span><=
/div><div id=3D"yiv7378208276yui_3_16_0_1_1450957456600_32564">&nbsp;</div>=
<div class=3D"yiv7378208276signature" id=3D"yiv7378208276yui_3_16_0_1_14509=
57456600_32601"><br></div> <div id=3D"yui_3_16_0_1_1450957456600_34558" cla=
ss=3D"yiv7378208276qtdSeparateBR"><br clear=3D"none"><br clear=3D"none"></d=
iv><div class=3D"yiv7378208276yqt3160716981" id=3D"yiv7378208276yqt87494"><=
/div></div></div></div><div id=3D"yui_3_16_0_1_1450957456600_34577" class=
=3D".yiv7378208276yahoo_quoted"> <div id=3D"yui_3_16_0_1_1450957456600_3457=
6" style=3D"font-family:bookman old style, new york, times, serif;font-size=
:16px;"> <div id=3D"yui_3_16_0_1_1450957456600_34575" style=3D"font-family:=
HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;=
font-size:16px;"> <div id=3D"yui_3_16_0_1_1450957456600_34574" dir=3D"ltr">=
<font id=3D"yui_3_16_0_1_1450957456600_34573" size=3D"2" face=3D"Arial"> On=
 Friday, December 25, 2015 7:58 AM, JGroups - Dev mailing list [via JGroups=
] &lt;<a href=3D"/user/SendEmail.jtp?type=3Dnode&node=3D10927&i=3D0" target=
=3D"_top" rel=3D"nofollow" link=3D"external">[hidden email]</a>&gt; wrote:<=
br clear=3D"none"></font></div>  <br clear=3D"none"><br clear=3D"none"> <di=
v id=3D"yui_3_16_0_1_1450957456600_34587" class=3D"yiv7378208276y_msg_conta=
iner"><div id=3D"yiv7378208276"><div id=3D"yui_3_16_0_1_1450957456600_34586=
">

=09The exception occurs in your code (Zab2PhasesTest.resetProtocol), so=20
<br clear=3D"none">without that code I don't know what's going on. If you p=
ost a unit test=20
<br clear=3D"none">and package up the code I could take a look. Or you set =
a breakpoint in=20
<br clear=3D"none">Zab2PhasesTest.resetProtocol() and see what's null that =
triggers the NPE.
<br clear=3D"none"><br clear=3D"none">On 24/12/15 22:34, Development issues=
 wrote:
<div id=3D"yui_3_16_0_1_1450957456600_34592" class=3D"yiv7378208276shrinkab=
le-quote"><div class=3D'shrinkable-quote'><br clear=3D"none">&gt; &lt;&lt;A=
n NPE can only occur if channel is null at this point...
<br clear=3D"none">&gt; &lt;&lt;JChannel.getAddress() can of course return =
null if the channel hasn't
<br clear=3D"none">&gt; &lt;&lt;been connected yet, but you'd only get an N=
PE if you try to reference
<br clear=3D"none">&gt; &lt;&lt;local_address
<br clear=3D"none">&gt; The channel is connected and I use it without any p=
roblem before the
<br clear=3D"none">&gt; line where the exception occur. Meaning that with t=
he same code I manage
<br clear=3D"none">&gt; to use channel to send requests to the servers, but=
 where the execution
<br clear=3D"none">&gt; come to line channel.send(msg), the exception occur=
s. This is why I am
<br clear=3D"none">&gt; surprised when I use channel first time it worked b=
ut when I use it
<br clear=3D"none">&gt; again I have NullPointerException.
<br clear=3D"none">&gt; &lt;&lt;OK. Can you also subscribe properly? So far=
, I've had to approve all of
<br clear=3D"none">&gt; &lt;&lt;your posts individually...
<br clear=3D"none">&gt; I thought I am already subscribe by using and loggi=
ng in to this site
<br clear=3D"none">&gt; <a id=3D"yui_3_16_0_1_1450957456600_34594" rel=3D"n=
ofollow" shape=3D"rect" target=3D"_blank" href=3D"http://jgroups.1086181.n5=
.nabble.com/" link=3D"external">http://jgroups.1086181.n5.nabble.com/</a>.
<br clear=3D"none">&gt; No worry, I have found another site and just subscr=
ibe today which is
<br clear=3D"none">&gt; <a id=3D"yui_3_16_0_1_1450957456600_34593" rel=3D"n=
ofollow" shape=3D"rect" target=3D"_blank" href=3D"https://sourceforge.net/p=
/javagroups/mailman/javagroups-development/" link=3D"external">https://sour=
ceforge.net/p/javagroups/mailman/javagroups-development/</a>. I
<br clear=3D"none">&gt; hope now I am subscribed correctly.
<br clear=3D"none">&gt; The following is stack trace as requested:
<br clear=3D"none">&gt; java.lang.NullPointerException
<br clear=3D"none">&gt; at
<br clear=3D"none">&gt; org.jgroups.protocols.jz.Zab2PhasesTest.resetProtoc=
ol(Zab2PhasesTest.java:192)
<br clear=3D"none">&gt; at
<br clear=3D"none">&gt; org.jgroups.protocols.jz.Zab2PhasesTest.finishedSen=
d(Zab2PhasesTest.java:318)
<br clear=3D"none">&gt; at
<br clear=3D"none">&gt; org.jgroups.protocols.jz.Zab2PhasesClient.receive(Z=
ab2PhasesClient.java:143)
<br clear=3D"none">&gt; at org.jgroups.JChannel.invokeCallback(JChannel.jav=
a:812)
<br clear=3D"none">&gt; at org.jgroups.JChannel.up(JChannel.java:736)
<br clear=3D"none">&gt; at org.jgroups.stack.ProtocolStack.up(ProtocolStack=
.java:1029)
<br clear=3D"none">&gt; at org.jgroups.protocols.pbcast.STATE_TRANSFER.up(S=
TATE_TRANSFER.java:146)
<br clear=3D"none">&gt; at org.jgroups.protocols.FRAG2.up(FRAG2.java:165)
<br clear=3D"none">&gt; at
<br clear=3D"none">&gt; org.jgroups.protocols.jz.Zab2Phases.handleOrderingR=
esponse(Zab2Phases.java:588)
<br clear=3D"none">&gt; at org.jgroups.protocols.jz.Zab2Phases.up(Zab2Phase=
s.java:256)
<br clear=3D"none">&gt; at org.jgroups.protocols.jz.Zab2Phases.up(Zab2Phase=
s.java:277)
<br clear=3D"none">&gt; at org.jgroups.protocols.RSVP.up(RSVP.java:237)
<br clear=3D"none">&gt; at org.jgroups.stack.Protocol.up(Protocol.java:420)
<br clear=3D"none">&gt; at org.jgroups.protocols.pbcast.STABLE.up(STABLE.ja=
va:294)
<br clear=3D"none">&gt; at org.jgroups.protocols.UNICAST3.deliverBatch(UNIC=
AST3.java:1087)
<br clear=3D"none">&gt; at org.jgroups.protocols.UNICAST3.removeAndDeliver(=
UNICAST3.java:886)
<br clear=3D"none">&gt; at org.jgroups.protocols.UNICAST3.handleDataReceive=
d(UNICAST3.java:790)
<br clear=3D"none">&gt; at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:=
426)
<br clear=3D"none">&gt; at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.=
java:619)
<br clear=3D"none">&gt; at org.jgroups.protocols.BARRIER.up(BARRIER.java:15=
2)
<br clear=3D"none">&gt; at org.jgroups.protocols.VERIFY_SUSPECT.up(VERIFY_S=
USPECT.java:155)
<br clear=3D"none">&gt; at org.jgroups.protocols.FD_ALL.up(FD_ALL.java:200)
<br clear=3D"none">&gt; at org.jgroups.protocols.FD_SOCK.up(FD_SOCK.java:29=
7)
<br clear=3D"none">&gt; at org.jgroups.protocols.MERGE2.up(MERGE2.java:237)
<br clear=3D"none">&gt; at org.jgroups.protocols.Discovery.up(Discovery.jav=
a:277)
<br clear=3D"none">&gt; at org.jgroups.protocols.TP.passMessageUp(TP.java:1=
572)
<br clear=3D"none">&gt; at org.jgroups.protocols.TP$MyHandler.run(TP.java:1=
791)
<br clear=3D"none">&gt; at
<br clear=3D"none">&gt; java.util.concurrent.ThreadPoolExecutor.runWorker(T=
hreadPoolExecutor.java:1142)
<br clear=3D"none">&gt; at
<br clear=3D"none">&gt; java.util.concurrent.ThreadPoolExecutor$Worker.run(=
ThreadPoolExecutor.java:617)
<br clear=3D"none">&gt; at java.lang.Thread.run(Thread.java:745)
<br clear=3D"none">&gt; Cheers,
<br clear=3D"none">&gt; Ibrahim
<br clear=3D"none">&gt; Ibrahim EL-Sanosi PHD student [hidden email]
<br clear=3D"none">&gt; &lt;/user/SendEmail.jtp?type=3Dnode&amp;node=3D1092=
5&amp;i=3D0&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; On Thursday, December 24, 2015 7:21 AM, JGroups - D=
ev mailing list [via
<br clear=3D"none">&gt; JGroups] &lt;[hidden email] &lt;/user/SendEmail.jtp=
?type=3Dnode&amp;node=3D10925&amp;i=3D1&gt;&gt;
<br clear=3D"none">&gt; wrote:
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; On 23/12/15 19:30, Development issues wrote:
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;&gt;I bet this occurs when try=
ing to marshall Zab2PhasesHeader. Did
<br clear=3D"none">&gt; you add
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;&gt;a magic-ID for your header=
, e.g.
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;&gt;ClassConfigurator.add(7200=
, Zab2PhasesHeader.class); ?
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;&gt;Also, you need to add your=
 protocols as well, e.g.
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;&gt;ClassConfigurator.addProto=
col(513, jzookeeper.Zab2Phases.class);
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; Yes, I added all protocol headers in jg-=
magic-map.xml, and added all
<br clear=3D"none">&gt; &nbsp;&gt; protocols in jg-protocol-ids.xml files.
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; OK, so this isn't the problem then...
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; &nbsp;&gt; I think the problem is in channel object=
, why I think that because I
<br clear=3D"none">&gt; &nbsp;&gt; tried to add line channel.getAddress() b=
efore channel.send(msg) the
<br clear=3D"none">&gt; &nbsp;&gt; excption points to channel.getAddress(),=
 see below.
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; ZABHeader resetProtocol =3D new ZABHeade=
r(ZABHeader.RESET);
<br clear=3D"none">&gt; &nbsp;&gt; Message msg =3D new Message(null).putHea=
der(ID, resetProtocol);
<br clear=3D"none">&gt; &nbsp;&gt; Address local_addr =3D channel.getAddres=
s();// The exception occurs here.
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; An NPE can only occur if channel is null at this po=
int...
<br clear=3D"none">&gt; JChannel.getAddress() can of course return null if =
the channel hasn't
<br clear=3D"none">&gt; been connected yet, but you'd only get an NPE if yo=
u try to reference
<br clear=3D"none">&gt; local_address
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; &nbsp;&gt; channel.send(msg);
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; I will send stack trace tomorrow. Sorry =
for that.
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; OK. Can you also subscribe properly? So far, I've h=
ad to approve all of
<br clear=3D"none">&gt; your posts individually...
<br clear=3D"none">&gt; Cheers,
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; &nbsp;&gt; Ibrahim
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; On Wednesday, December 23, 2015 5:45 PM,=
 JGroups - Dev mailing list [via
<br clear=3D"none">&gt; &nbsp;&gt; JGroups] &lt;[hidden email] &lt;/user/Se=
ndEmail.jtp?type=3Dnode&amp;node=3D10922&amp;i=3D0&gt;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; wrote:
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; On 23/12/15 18:16, Development issues wr=
ote:
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Thank you for replaying.
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Yes, I never reuse a message.=
 The following is a part of my code
<br clear=3D"none">&gt; where
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; the exception occurs:
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Client code:
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; ---
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; ---
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; --
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Zab2PhasesHeader resetProtoco=
l =3D new
<br clear=3D"none">&gt; Zab2PhasesHeader(Zab2PhasesHeader
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; .RESET);
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Message msg =3D new Message(n=
ull).putHeader(ID, resetProtocol);
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; channel.send(msg); // The exc=
eption point to this line.
<br clear=3D"none">&gt; &nbsp;&gt; You still haven't shown the stack trace.
<br clear=3D"none">&gt; &nbsp;&gt; I bet this occurs when trying to marshal=
l Zab2PhasesHeader. Did you add
<br clear=3D"none">&gt; &nbsp;&gt; a magic-ID for your header, e.g.
<br clear=3D"none">&gt; &nbsp;&gt; ClassConfigurator.add(7200, Zab2PhasesHe=
ader.class); ?
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; Also, you need to add your protocols as =
well, e.g.
<br clear=3D"none">&gt; &nbsp;&gt; ClassConfigurator.addProtocol(513, jzook=
eeper.Zab2Phases.class);
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Note that I have 3 protocols =
(ZabMain, Zab2Phases and ZabProb), each
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; with its own header and stack=
. The same &nbsp;client code (above code) is
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; used (with different in proto=
col header) to benchmark all three
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; protocols. The client code ra=
n without any problems when I benchmark
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; the protocols ZabMain and Zab=
Prob. The problem only occurs when I
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; benchmark the Zab2Phases prot=
ocol.
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; The following is Zab2Phases s=
tack as requested:
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &lt;config xmlns=3D"urn:org:j=
groups"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp;xmlns:xsi=3D"<a rel=3D"nofollow" shape=3D"rect" target=3D"_blank" href=
=3D"http://www.w3.org/2001/XMLSchema-instance" link=3D"external">http://www=
.w3.org/2001/XMLSchema-instance</a>"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp;xsi:schemaLocation=3D"urn:org:jgroups
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; <a rel=3D"nofollow" shape=3D"=
rect" target=3D"_blank" href=3D"http://www.jgroups.org/schema/JGroups-3.3.x=
sd" link=3D"external">http://www.jgroups.org/schema/JGroups-3.3.xsd</a>"&gt=
;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;UDP
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;mcast_port=3D"${jgroups.udp.mcast_port:45588}"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;tos=3D"8"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;max_bundle_size=3D"64K"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;max_bundle_timeout=3D"30"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;enable_diagnostics=3D"true"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;thread_naming_pattern=3D"cl"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;ip_mcast=3D"false"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;timer_type=3D"new3"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;timer.min_threads=3D"10"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;timer.max_threads=3D"10"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;timer.keep_alive_time=3D"3000"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;timer.queue_max_size=3D"500"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;timer.rejection_policy=3D"abort"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;thread_pool.enabled=3D"true"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;thread_pool.min_threads=3D"2"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;thread_pool.max_threads=3D"8"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;thread_pool.keep_alive_time=3D"5000"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;thread_pool.queue_enabled=3D"true"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;thread_pool.queue_max_size=3D"10000"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;thread_pool.rejection_policy=3D"discard"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;oob_thread_pool.enabled=3D"true"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;oob_thread_pool.min_threads=3D"1"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;oob_thread_pool.max_threads=3D"8"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;oob_thread_pool.keep_alive_time=3D"5000"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;oob_thread_pool.queue_enabled=3D"false"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;oob_thread_pool.queue_max_size=3D"100"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;oob_thread_pool.rejection_policy=3D"discard"/&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;FILE_=
PING
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;timeout=3D"2000"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;num_initial_members=3D"20"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;location=3D"/home/pg/p13/a6915654/"/&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;MERGE=
2 max_interval=3D"30000"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp;min_interval=3D"10000"/&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;FD_SO=
CK/&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;FD_AL=
L/&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;VERIF=
Y_SUSPECT timeout=3D"1500" &nbsp;/&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;BARRI=
ER/&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;pbcas=
t.NAKACK2 xmit_interval=3D"1000"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;xmit_table_num_rows=3D"100"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;xmit_table_msgs_per_row=3D"2=
000"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;xmit_table_max_compaction_ti=
me=3D"30000"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;max_msg_batch_size=3D"500"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;use_mcast_xmit=3D"false"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;discard_delivered_msgs=3D"tr=
ue"/&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;UNICA=
ST3 xmit_interval=3D"500"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp; &nbsp;xmit_table_num_rows=3D"100"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp; &nbsp;xmit_table_msgs_per_row=3D"2000"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp; &nbsp;xmit_table_max_compaction_time=3D"60000"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp; &nbsp;conn_expiry_timeout=3D"0"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp; &nbsp;max_msg_batch_size=3D"500"/&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;pbcas=
t.STABLE stability_delay=3D"1000" desired_avg_gossip=3D"50000"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; max_bytes=3D"4M"/&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &lt;pbca=
st.GMS print_local_addr=3D"true" join_timeout=3D"3000"
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp; &nbsp; &=
nbsp; &nbsp; &nbsp; &nbsp; &nbsp;view_bundling=3D"true"/&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;UFC/&=
gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;MFC/&=
gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;RSVP =
resend_interval=3D"2000" timeout=3D"10000"/&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;jzook=
eeper.Zab2Phases /&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;FRAG2=
 frag_size=3D"60K" &nbsp;/&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;&lt;pbcas=
t.STATE_TRANSFER /&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &lt;/config&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Thank you indeed.
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Ibrahim
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; The stack trace is as followi=
ng?
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Ibrahim EL-Sanosi PHD student=
 [hidden email]
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &lt;/user/SendEmail.jtp?type=
=3Dnode&amp;node=3D10920&amp;i=3D0&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; On Wednesday, December 23, 20=
15 7:22 AM, JGroups - Dev mailing
<br clear=3D"none">&gt; list [via
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; JGroups] &lt;[hidden email]
<br clear=3D"none">&gt; &lt;/user/SendEmail.jtp?type=3Dnode&amp;node=3D1092=
0&amp;i=3D1&gt;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; wrote:
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; What's the stack trace?
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; I hope you're not reusing the=
 message, as in:
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Message msg=3Dnew Message(nul=
l, "hello world');
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; for(int i=3D0; i &lt; 5; i++)
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;ch.send(m=
sg);
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; This is incorrect as the send=
 modifies the message. The correct code
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; would be:
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; for(int i=3D0; i &lt; 5; i++)=
 {
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; Message msg=3Dn=
ew Message(null, "hello world');
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp; &nbsp; &nbsp;ch.send(m=
sg);
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; }
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; On 22/12/15 22:39, Developmen=
t issues wrote:
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp;&gt; I have a cluster c=
onsist of 5 machines, 3 allocated for
<br clear=3D"none">&gt; services and
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; 2 for
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp;&gt; clients. I start t=
he cluster and build a channel without any
<br clear=3D"none">&gt; problem.
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Also
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp;&gt; clients manage to =
send a request to the servers using
<br clear=3D"none">&gt; &nbsp;&gt; channel.send(msg).
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp;&gt; However, when I us=
e channel.send(msg) again (in client side), it
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; gives me
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp;&gt; NullPointerExcepti=
on. Moreover, NullPointerException point to line
<br clear=3D"none">&gt; &nbsp;&gt; where
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp;&gt; channel.send(msg) =
is.
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp;&gt; Can anyone tell wh=
at does cause such problem?
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp;&gt; Thank you
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &nbsp;&gt; Ibrahim
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; --
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Bela Ban, JGroups lead (<a re=
l=3D"nofollow" shape=3D"rect" target=3D"_blank" href=3D"http://www.jgroups.=
org/" link=3D"external">http://www.jgroups.org</a><br clear=3D"none">&gt; &=
lt;<a rel=3D"nofollow" shape=3D"rect" target=3D"_blank" href=3D"http://www.=
jgroups.org/" link=3D"external">http://www.jgroups.org/</a>&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &lt;<a rel=3D"nofollow" shape=3D"rect" t=
arget=3D"_blank" href=3D"http://www.jgroups.org/" link=3D"external">http://=
www.jgroups.org/</a>&gt; &lt;<a rel=3D"nofollow" shape=3D"rect" target=3D"_=
blank" href=3D"http://www.jgroups.org/" link=3D"external">http://www.jgroup=
s.org/</a>&gt;)
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; ---------------------------------------------------=
---------------------------
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; _____________________________=
__________________
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Javagroups-development mailin=
g list
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; ---------------------------------------------------=
---------------------
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; If you reply to this email, y=
our message will be added to the
<br clear=3D"none">&gt; discussion
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; below:
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; <a rel=3D"nofollow" shape=3D"rect" target=3D"_blank=
" href=3D"http://jgroups.1086181.n5.nabble.com/What-does-cause-NullPointerE=
xception-tp10915p10918.html" link=3D"external">http://jgroups.1086181.n5.na=
bble.com/What-does-cause-NullPointerException-tp10915p10918.html</a><br cle=
ar=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; To unsubscribe from What does=
 cause NullPointerException?, click
<br clear=3D"none">&gt; here.
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; NAML
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &lt;<a rel=3D"nofollow" shape=3D"rect" target=3D"_b=
lank" href=3D"http://jgroups.1086181.n5.nabble.com/template/NamlServlet.jtp=
?macro=3Dmacro_viewer&amp;id=3Dinstant_html%21nabble%3Aemail.naml&amp;base=
=3Dnabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNam=
espace-nabble.view.web.template.NodeNamespace&amp;breadcrumbs=3Dnotify_subs=
cribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_ins=
tant_email%21nabble%3Aemail.naml" link=3D"external">http://jgroups.1086181.=
n5.nabble.com/template/NamlServlet.jtp?macro=3Dmacro_viewer&amp;id=3Dinstan=
t_html%21nabble%3Aemail.naml&amp;base=3Dnabble.naml.namespaces.BasicNamespa=
ce-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNa=
mespace&amp;breadcrumbs=3Dnotify_subscribers%21nabble%3Aemail.naml-instant_=
emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml</a>&g=
t;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; ---------------------------------------------------=
---------------------
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; View this message in context:=
 Re: What does cause
<br clear=3D"none">&gt; NullPointerException?
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &lt;<a rel=3D"nofollow" shape=3D"rect" target=3D"_b=
lank" href=3D"http://jgroups.1086181.n5.nabble.com/What-does-cause-NullPoin=
terException-tp10915p10920.html" link=3D"external">http://jgroups.1086181.n=
5.nabble.com/What-does-cause-NullPointerException-tp10915p10920.html</a>&gt=
;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Sent from the JGroups - Dev m=
ailing list archive
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; &lt;<a rel=3D"nofollow" shape=
=3D"rect" target=3D"_blank" href=3D"http://jgroups.1086181.n5.nabble.com/JG=
roups-Dev-f6604.html" link=3D"external">http://jgroups.1086181.n5.nabble.co=
m/JGroups-Dev-f6604.html</a>&gt; at
<br clear=3D"none">&gt; &nbsp;&gt; Nabble.com.
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; ---------------------------------------------------=
---------------------------
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; _____________________________=
__________________
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt; Javagroups-development mailin=
g list
<br clear=3D"none">&gt; &nbsp;&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; --
<br clear=3D"none">&gt; &nbsp;&gt; Bela Ban, JGroups lead (<a rel=3D"nofoll=
ow" shape=3D"rect" target=3D"_blank" href=3D"http://www.jgroups.org/" link=
=3D"external">http://www.jgroups.org</a><br clear=3D"none">&gt; &lt;<a rel=
=3D"nofollow" shape=3D"rect" target=3D"_blank" href=3D"http://www.jgroups.o=
rg/" link=3D"external">http://www.jgroups.org/</a>&gt; &lt;<a rel=3D"nofoll=
ow" shape=3D"rect" target=3D"_blank" href=3D"http://www.jgroups.org/" link=
=3D"external">http://www.jgroups.org/</a>&gt;)
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; ---------------------------------------------------=
---------------------------
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; ________________________________________=
_______
<br clear=3D"none">&gt; &nbsp;&gt; Javagroups-development mailing list
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; ----------------------------------------=
--------------------------------
<br clear=3D"none">&gt; &nbsp;&gt; If you reply to this email, your message=
 will be added to the discussion
<br clear=3D"none">&gt; &nbsp;&gt; below:
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; <a rel=3D"nofollow" shape=3D"rect" target=3D"_blank=
" href=3D"http://jgroups.1086181.n5.nabble.com/What-does-cause-NullPointerE=
xception-tp10915p10921.html" link=3D"external">http://jgroups.1086181.n5.na=
bble.com/What-does-cause-NullPointerException-tp10915p10921.html</a><br cle=
ar=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; To unsubscribe from What does cause Null=
PointerException?, click here.
<br clear=3D"none">&gt; &nbsp;&gt; NAML
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &lt;<a rel=3D"nofollow" shape=3D"rect" target=3D"_b=
lank" href=3D"http://jgroups.1086181.n5.nabble.com/template/NamlServlet.jtp=
?macro=3Dmacro_viewer&amp;id=3Dinstant_html%21nabble%3Aemail.naml&amp;base=
=3Dnabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNam=
espace-nabble.view.web.template.NodeNamespace&amp;breadcrumbs=3Dnotify_subs=
cribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_ins=
tant_email%21nabble%3Aemail.naml" link=3D"external">http://jgroups.1086181.=
n5.nabble.com/template/NamlServlet.jtp?macro=3Dmacro_viewer&amp;id=3Dinstan=
t_html%21nabble%3Aemail.naml&amp;base=3Dnabble.naml.namespaces.BasicNamespa=
ce-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNa=
mespace&amp;breadcrumbs=3Dnotify_subscribers%21nabble%3Aemail.naml-instant_=
emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml</a>&g=
t;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; ----------------------------------------=
--------------------------------
<br clear=3D"none">&gt; &nbsp;&gt; View this message in context: Re: What d=
oes cause NullPointerException?
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &lt;<a rel=3D"nofollow" shape=3D"rect" target=3D"_b=
lank" href=3D"http://jgroups.1086181.n5.nabble.com/What-does-cause-NullPoin=
terException-tp10915p10922.html" link=3D"external">http://jgroups.1086181.n=
5.nabble.com/What-does-cause-NullPointerException-tp10915p10922.html</a>&gt=
;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; &nbsp;&gt; Sent from the JGroups - Dev mailing list=
 archive
<br clear=3D"none">&gt; &nbsp;&gt; &lt;<a rel=3D"nofollow" shape=3D"rect" t=
arget=3D"_blank" href=3D"http://jgroups.1086181.n5.nabble.com/JGroups-Dev-f=
6604.html" link=3D"external">http://jgroups.1086181.n5.nabble.com/JGroups-D=
ev-f6604.html</a>&gt; at
<br clear=3D"none">&gt; Nabble.com.
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; ---------------------------------------------------=
---------------------------
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; &nbsp;&gt; ________________________________________=
_______
<br clear=3D"none">&gt; &nbsp;&gt; Javagroups-development mailing list
<br clear=3D"none">&gt; &nbsp;&gt;
<br clear=3D"none">&gt; --
<br clear=3D"none">&gt; Bela Ban, JGroups lead (<a rel=3D"nofollow" shape=
=3D"rect" target=3D"_blank" href=3D"http://www.jgroups.org/" link=3D"extern=
al">http://www.jgroups.org</a>&nbsp;&lt;<a rel=3D"nofollow" shape=3D"rect" =
target=3D"_blank" href=3D"http://www.jgroups.org/" link=3D"external">http:/=
/www.jgroups.org/</a>&gt;)
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; ---------------------------------------------------=
---------------------------
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; _______________________________________________
<br clear=3D"none">&gt; Javagroups-development mailing list
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; ---------------------------------------------------=
---------------------
<br clear=3D"none">&gt; If you reply to this email, your message will be ad=
ded to the discussion
<br clear=3D"none">&gt; below:
<br clear=3D"none">&gt; <a rel=3D"nofollow" shape=3D"rect" target=3D"_blank=
" href=3D"http://jgroups.1086181.n5.nabble.com/What-does-cause-NullPointerE=
xception-tp10915p10924.html" link=3D"external">http://jgroups.1086181.n5.na=
bble.com/What-does-cause-NullPointerException-tp10915p10924.html</a><br cle=
ar=3D"none">&gt;
<br clear=3D"none">&gt; To unsubscribe from What does cause NullPointerExce=
ption?, click here.
<br clear=3D"none">&gt; NAML
<br clear=3D"none">&gt; &lt;<a rel=3D"nofollow" shape=3D"rect" target=3D"_b=
lank" href=3D"http://jgroups.1086181.n5.nabble.com/template/NamlServlet.jtp=
?macro=3Dmacro_viewer&amp;id=3Dinstant_html%21nabble%3Aemail.naml&amp;base=
=3Dnabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNam=
espace-nabble.view.web.template.NodeNamespace&amp;breadcrumbs=3Dnotify_subs=
cribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_ins=
tant_email%21nabble%3Aemail.naml" link=3D"external">http://jgroups.1086181.=
n5.nabble.com/template/NamlServlet.jtp?macro=3Dmacro_viewer&amp;id=3Dinstan=
t_html%21nabble%3Aemail.naml&amp;base=3Dnabble.naml.namespaces.BasicNamespa=
ce-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNa=
mespace&amp;breadcrumbs=3Dnotify_subscribers%21nabble%3Aemail.naml-instant_=
emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml</a>&g=
t;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; ---------------------------------------------------=
---------------------
<br clear=3D"none">&gt; View this message in context: Re: What does cause N=
ullPointerException?
<br clear=3D"none">&gt; &lt;<a rel=3D"nofollow" shape=3D"rect" target=3D"_b=
lank" href=3D"http://jgroups.1086181.n5.nabble.com/What-does-cause-NullPoin=
terException-tp10915p10925.html" link=3D"external">http://jgroups.1086181.n=
5.nabble.com/What-does-cause-NullPointerException-tp10915p10925.html</a>&gt=
;
<br clear=3D"none">&gt; Sent from the JGroups - Dev mailing list archive
<br clear=3D"none">&gt; &lt;<a rel=3D"nofollow" shape=3D"rect" target=3D"_b=
lank" href=3D"http://jgroups.1086181.n5.nabble.com/JGroups-Dev-f6604.html" =
link=3D"external">http://jgroups.1086181.n5.nabble.com/JGroups-Dev-f6604.ht=
ml</a>&gt; at Nabble.com.
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; ---------------------------------------------------=
---------------------------
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt;
<br clear=3D"none">&gt; _______________________________________________
<br clear=3D"none">&gt; Javagroups-development mailing list
<br clear=3D"none">&gt;
</div></div>--=20
<br clear=3D"none">Bela Ban, JGroups lead (<a rel=3D"nofollow" shape=3D"rec=
t" target=3D"_blank" href=3D"http://www.jgroups.org/" link=3D"external">htt=
p://www.jgroups.org</a>)
<br clear=3D"none"><br clear=3D"none"><br clear=3D"none">------------------=
------------------------------------------------------------
<br clear=3D"none">_______________________________________________
<br clear=3D"none">Javagroups-development mailing list
<br clear=3D"none"><br clear=3D"none">

=09
=09
=09
=09<br clear=3D"none">
=09<br clear=3D"none">
=09<hr noshade=3D"color=3D&quot;#cccccc&quot;">
=09<div style=3D"color:#444;font:12px tahoma, geneva, helvetica, arial, san=
s-serif;">
=09=09<div style=3D"font-weight:bold;">If you reply to this email, your mes=
sage will be added to the discussion below:</div>
=09=09<a rel=3D"nofollow" shape=3D"rect" target=3D"_blank" href=3D"http://j=
groups.1086181.n5.nabble.com/What-does-cause-NullPointerException-tp10915p1=
0926.html" link=3D"external">http://jgroups.1086181.n5.nabble.com/What-does=
-cause-NullPointerException-tp10915p10926.html</a>
=09</div><div class=3D"yiv7378208276yqt3702062236" id=3D"yiv7378208276yqtfd=
50502">
=09<div style=3D"color:#666;font:11px tahoma, geneva, helvetica, arial, san=
s-serif;margin-top:.4em;line-height:1.5em;">
=09=09
=09=09To unsubscribe from What does cause NullPointerException?, <a rel=3D"=
nofollow" shape=3D"rect" target=3D"_blank" href=3D"" link=3D"external">clic=
k here</a>.<br clear=3D"none">
=09=09<a rel=3D"nofollow" shape=3D"rect" target=3D"_blank" href=3D"http://j=
groups.1086181.n5.nabble.com/template/NamlServlet.jtp?macro=3Dmacro_viewer&=
amp;id=3Dinstant_html%21nabble%3Aemail.naml&amp;base=3Dnabble.naml.namespac=
es.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.=
template.NodeNamespace&amp;breadcrumbs=3Dnotify_subscribers%21nabble%3Aemai=
l.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Ae=
mail.naml" style=3D"font:9px serif;" link=3D"external">NAML</a>
=09</div></div></div></div><br clear=3D"none"><br clear=3D"none"></div>  </=
div> </div>  </div></div><!--start-attachments--><div class=3D"small"><br/>=
<img src=3D"http://jgroups.1086181.n5.nabble.com/images/icon_attachment.gif=
" > <strong>Code.rar</strong> (9K) <a href=3D"http://jgroups.1086181.n5.nab=
ble.com/attachment/10927/0/Code.rar" target=3D"_top" rel=3D"nofollow" link=
=3D"external">Download Attachment</a></div><!--end-attachments-->

=09
=09
=09
<br/><hr align=3D"left" width=3D"300" />
View this message in context: <a href=3D"http://jgroups.1086181.n5.nabble.c=
om/What-does-cause-NullPointerException-tp10915p10927.html">Re: What does c=
ause NullPointerException?</a><br/>
Sent from the <a href=3D"http://jgroups.1086181.n5.nabble.com/JGroups-Dev-f=
6604.html">JGroups - Dev mailing list archive</a> at Nabble.com.<br/>
------=_Part_653579_2027020197.1451045023255--


--===============4363445656547565801==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

------------------------------------------------------------------------------

--===============4363445656547565801==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Javagroups-development mailing list


--===============4363445656547565801==--