jPOS icon indicating copy to clipboard operation
jPOS copied to clipboard

Fix channel name split issue in JPOS 3

Open JinPengTan opened this issue 9 months ago • 0 comments

In JPOS 2, the channel name format is {IP:port}, but in JPOS 3, it changes to {LocalPort} {IP:Port} (with a space between them). However, QServer splits the channel name based only on spaces, which causes unexpected behavior.

StringTokenizer tok = new StringTokenizer(channelNames, " ");
channelName = new String[tok.countTokens()];

Example: Given the value of getISOChannelNames() returned by JPOS 3 is 10011 127.0.0.1:12345 10012 127.0.0.1:12346 10013 127.0.0.1:12346 Going thru the StringTokenizer, it will become this channelName[0] = 10011 channelName[1] = 127.0.0.1:12345 channelName[2] = 10012 channelName[3] = 127.0.0.1:12346 Attached a photo during debugging image

image

Fix the issue by providing a new regex. Attach a photo of regrex checker image

Add !sb.isEmpty() to the condition. Without it, getChannelNames() will start with an empty space. image

JinPengTan avatar Jan 09 '25 15:01 JinPengTan