Skip to content

Conversation

JinPengTan
Copy link

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant