> The message request was not accepted as it missed the message length
> and BITMAP
> info. Can you suggest while sending a request ISO 8583 message to the
> server
> how to generate the message length and BITMAP info using JPOS and
> include it in
> the request message to get a response back from server?
JPOS takes care of this for you, you just need to select, configure and
use the right Channel.
Which Channel are you using, what does the manual of the interface you
are connecting too describe the message format - length format and any
header?
--
Mark
>
> Now we need to convert it to ISO 8583 message.
>
> we are using a manual programm to convert the above mentioned message
> to the following format
Can you describe the code and how it creates the pIncomingMessage?
>
> <isomsg direction="incoming">
> <field id="0" value="2804"/>
> <field id="11" value="213568"/>
> <field id="42" value="0595099"/>
> </isomsg>
Are you converting the xml to another xml format, or is this the result
of a ISOMsg.dump ?
>
> Now using socket connection we are sending this request message to a
> simulated server .
>
> but it is missing the message length and BITMAP.
The Channel will add the length and the server might be stripping it
off, is any data arriving at the server?
>
> the code is given below:
>
> ISOMsg pISOMsgRes = null;
>
> ISOChannel channel=null;
> channel = new CSChannel(SIMULATION_SERVER_ADDRESS,
> SIMULATION_SERVER__HOSTPORT, new ISOPackagerImpl().getInstance());
> channel.connect();
>
What Packager are you using please?
>
>
> ISOMsg pOutgoingMsg = (ISOMsg) pIncomingMessage.clone();
> channel.send(pOutgoingMsg);
> pISOMsgRes = channel.receive(); // this line gives EOF exception
>
What is the Server seeing and doing?
Does the server use the same Channel, is it jPOS too?
Please share the exact Exception text, the server is closing your
connection, so it doesn't like what it receives?
--
Mark
On 13/10/2011 11:51, shankhadeep wrote:Ok.
> we are using CSChannel .
>Is this the actual message or a representation of it?
> we have one incoming message like below
>
>
> <input>
> <data>
> <card uid="0" value="2804"/>
> </data>
> <data>
> <card uid="11" value="213568"/>
> </data>
> <data>
> <card uid="42" value="0595099"/>
> </data>
> </input>
>
>YES
> Now we need to convert it to ISO 8583 message.Can you describe the code and how it creates the pIncomingMessage?
>
> we are using a manual programm to convert the above mentioned message
> to the following format
Are you converting the xml to another xml format, or is this the result
>
> <isomsg direction="incoming">
> <field id="0" value="2804"/>
> <field id="11" value="213568"/>
> <field id="42" value="0595099"/>
> </isomsg>
of a ISOMsg.dump ?
>The Channel will add the length and the server might be stripping it
> Now using socket connection we are sending this request message to a
> simulated server .
>
> but it is missing the message length and BITMAP.
off, is any data arriving at the server?
>What Packager are you using please?
> the code is given below:
>
> ISOMsg pISOMsgRes = null;
>
> ISOChannel channel=null;
> channel = new CSChannel(SIMULATION_SERVER_ADDRESS,
> SIMULATION_SERVER__HOSTPORT, new ISOPackagerImpl().getInstance());
> channel.connect();
>
What is the Server seeing and doing?
>
>
> ISOMsg pOutgoingMsg = (ISOMsg) pIncomingMessage.clone();
> channel.send(pOutgoingMsg);
> pISOMsgRes = channel.receive(); // this line gives EOF exception
>
Does the server use the same Channel, is it jPOS too?
Please share the exact Exception text, the server is closing your
connection, so it doesn't like what it receives?
--
Mark
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage.
Please support jPOS, contact: sa...@jpos.org
You received this message because you are subscribed to the "jPOS Users" group.
Please see http://jpos.org/wiki/JPOS_Mailing_List_Readme_first
To post to this group, send email to jpos-...@googlegroups.com
To unsubscribe, send email to jpos-users+...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/jpos-users
On 14/10/2011 11:43, Shankhadeep wrote:
>> Now using socket connection we are sending this request message to a
>> > > simulated server .
>> > >
>> > > but it is missing the message length and BITMAP.
>> The Channel will add the length and the server might be stripping it
>> off, is any data arriving at the server?
>>
>> yes . but without message length and BITMAP.
I would like to check you are using a Packager on your ISOMSg and what
the Packager config (which .xml config file?) contains.
Does it have a bitmap field defined at all - although a bitmap would
naturally be only for ISO8583 forms rather than xml representations of them?
Also, please note that unless you add a field holding the length into
the message, the length added by the Channel is not available nor is it
really of any interest once you have the xml form.
I wonder if you really should be sending a 'real' ISO8583 format message
onto the server?
--
Mark
--
Mark
--
Mark
-chhil
1. Add a Logger to the Packager and the Channel so that you can see what
lengths are being picked out of the network (Channel) and what data is
going into what fields (Packager).
2. Compare the output produced to the Logger step by step against the
specification for the interface you are dealing with. The message length
or one of the fields - not necessarily the last one processed - will
have an incorrect length definition.
This *guess* is based upon the fact that you are running out of data
(hitting EOF) but that the Channel did not consider the length too long.
The Channel might actually have 'seen' a length that was much shorter
than it really is, but this feels unlikely.
What you should have done is pick the Channel and Packager by referring
to the interface specification; I appreciate this can be quite boring
and perhaps confusing, but I find it is the best and quickest way in the
long run.
BTW, if you are in control of both sides of this exchange, then you have
a mis-alignment of the Channel or Packager being used on each side - as
Chhil says they must be identical and likely are not.
I wasn't going to comment, but feel the need to, if only to save you in
the future...
> This is very critical and urgent for us.
I have to disagree, if this was either critical or urgent, you would be
paying for support. Asking for urgent assistance on a mailing list just
won't work, but we are a nice helpful bunch.
This is only my opinion of course, so take it or leave it as you see fit.
:-)
--
Mark
thanks for your response @Alejandro..what will you suggest i do???..because, trying to use jpos on an Android device which has a lower version of Operating System isn't really working well..so, I am trying to use another means...in getting my work done
--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
Join us in IRC at http://webchat.freenode.net/?channels=jpos
You received this message because you are subscribed to the "jPOS Users" group.
Please see http://jpos.org/wiki/JPOS_Mailing_List_Readme_first
To post to this group, send email to jpos-...@googlegroups.com
To unsubscribe, send email to jpos-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/jpos-users
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/40dbde2e-4a13-4818-89e8-434964c85665%40googlegroups.com.
--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
Join us in IRC at http://webchat.freenode.net/?channels=jpos
You received this message because you are subscribed to the "jPOS Users" group.
Please see http://jpos.org/wiki/JPOS_Mailing_List_Readme_first
To post to this group, send email to jpos-...@googlegroups.com
To unsubscribe, send email to jpos-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/jpos-users
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.
Why don't you use JSON or XML in your Android application and use for example the XMLChannel/XMLPackager on the jPOS side? (there's a JSONPackager too, currently disable due to library conflicts, but easy to re-enable).
On Tue, Aug 9, 2016 at 12:39 PM, Israel Meshileya <odunmes...@gmail.com> wrote:
On Tuesday, 9 August 2016 16:31:22 UTC+1, Israel Meshileya wrote:thanks for your response @Alejandro..what will you suggest i do???..because, trying to use jpos on an Android device which has a lower version of Operating System isn't really working well..so, I am trying to use another means...in getting my work done
On Monday, 8 August 2016 16:42:09 UTC+1, Alejandro Revilla wrote:Looks like a channel mismatch issue. 30 38 is very likely the first two bytes of a "0800" message.
--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
Join us in IRC at http://webchat.freenode.net/?channels=jpos
You received this message because you are subscribed to the "jPOS Users" group.
Please see http://jpos.org/wiki/JPOS_Mailing_List_Readme_first
To post to this group, send email to jpos-...@googlegroups.com
To unsubscribe, send email to jpos-users+...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/jpos-users
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.
When you say jpos packager you must be using the jpos channel too which pretends the correct length.
When you use your non jpos packager the length is not prepended so the server takes the first 2 bytes from your iso message data as the length and is waiting for those many bytes and since those many bytes are available it's still waiting for more bytes on the wire.
In your non jpos way the server sees the 0800....
It sees the first 0 as 30 and the second 8 as 38, that makes it 3038.
Now it will collect 3038 bytes, if they aren't there it will wait for them to arrive.
_chhil
--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
Join us in IRC at http://webchat.freenode.net/?channels=jpos
You received this message because you are subscribed to the "jPOS Users" group.
Please see http://jpos.org/wiki/JPOS_Mailing_List_Readme_first
To post to this group, send email to jpos-...@googlegroups.com
To unsubscribe, send email to jpos-users+...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/jpos-users
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/f65305fc-7d96-4087-8305-0cdfd4644877%40googlegroups.com.
public static String networkTransport(String isoMessage) throws UnknownHostException, IOException {
Socket connection = new Socket("192.168.3.118", 1010);
BufferedOutputStream bos = new BufferedOutputStream(connection.getOutputStream());
OutputStreamWriter osw = new
OutputStreamWriter(bos);
int len = isoMessage.length(); // get the length of the data
// SInce your packager name says Postilion, I think this will work.
osw.write(len >> 8); // send the length bytes in 2 bytes. this is the byte 1
osw.write(len);// send the length bytes in 2 bytes. this is the byte 2
osw.write(isoMessage);
osw.flush();
// Here you need to do the reverse. Get the first 2 bytes of the length
// then read those many bytes. You don't want to simply read 4096.
// TCP is streaming data, your 4096 can read more than one response. So determine the length from the first 2
// bytes and then read that much more data from the stream
// That is HOMEWORK exercise for you to do.
byte[] arrOutut = new byte[4096];
int count = connection.getInputStream().read(arrOutut, 0, 4096);
String clientRequest = "";
for (int outputCount = 0
; outputCount < count; outputCount++) {
char response = (char) arrOutut[outputCount];
clientRequest = clientRequest + response;
}
connection.close();
return clientRequest;
}
--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
Join us in IRC at http://webchat.freenode.net/?channels=jpos
You received this message because you are subscribed to the "jPOS Users" group.
Please see http://jpos.org/wiki/JPOS_Mailing_List_Readme_first
To post to this group, send email to jpos-...@googlegroups.com
To unsubscribe, send email to jpos-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/jpos-users
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/8cb97119-27f1-423e-b53a-67a4ba5a0251%40googlegroups.com.
To unsubscribe, send email to jpos-users+...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/jpos-users
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.
To unsubscribe, send email to jpos-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/jpos-users
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/186df1bf-9de4-46c4-a155-3969da9a009a%40googlegroups.com.
To unsubscribe, send email to jpos-users+...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/jpos-users
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.
Weighing in, but running pure ISO on Android sounds like a really bad idea - it certainly wouldn't pass PCI nor protect cardholder data, for the very reasons the group created P2PE.
You might get a technically working solution but vulnerable card data.
(Caveat, general statement based on experiences, unaware which specific device is being used)
Thor
To unsubscribe, send email to jpos-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/jpos-users
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/baf9f799-0a76-4c93-bf20-a3449d5f285b%40googlegroups.com.
We are sending an ISO 8583 message and we found the following:
005828040020010000C00000000000213568831SPON000101 0595001
Message breakdown:
0058: message length
mti:2804
bitmap:0020010000C00000
field[11]:[000000213568]
field[24]:[831]
field[41]:[SPON000101 ]
field[42]:[0595001]
Yellow: length of message
Green: the actual message
And the response returned to
006928140220000002C0000009300133060000002135680000SPON000101
0595001
Message breakdown:
0069: message length
mti:2804
bitmap:0220000002C00000
field[11]:[000000213568]
field[39]:[0000]
field[41]:[SPON000101 ]
field[42]:[0595001]
The message request was not accepted as it missed the message length
and BITMAP
info. Can you suggest while sending a request ISO 8583 message to the
server
how to generate the message length and BITMAP info using JPOS and
include it in
the request message to get a response back from server?