[QFJ-789] Fully support alternate encodings (charsets) Created: 09/Jun/14  Updated: 24/Nov/18

Status: Open
Project: QuickFIX/J
Component/s: None
Affects Version/s: 1.6.0
Fix Version/s: None

Type: Bug Priority: Default
Reporter: amichair Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None

Issue Links:
Duplicate
is duplicated by QFJ-956 Checksum validation of incoming messa... Closed
Relates
is related to QFJ-684 Support for binary data (BytesField) ... Closed
is related to QFJ-38 FIX Message support double-byte charset. Closed
is related to QFJ-382 Foreign Language Support - Multibyte ... Closed

 Description   

QuickFIX/J currently has limited support for alternate encodings (charsets). While it is 'good enough' for some cases, it still has drawbacks - it is limited to charsets that are a superset of ASCII (in particular, double-byte encodings are not supported), the encoding can only be set globally via CharsetSupport and applies to all fields (which can generate non-compliant messages), the engine still uses Strings for the most part with some awkward and inefficient handling to make it properly support encoded bytes, etc.

It would be better to have proper encoding support all around - with ASCII used for all standard fields, the MessageEncoding field used per-message to specify the encoding used in its Encoded* fields (e.g. EncodedText), using bytes array (or ByteBuffer) instead of Strings for more efficient and direct manipulation, supporting arbitrary charsets (not only ASCII supersets), etc.

Suggestions, additional related requirements and protocol-compliance corrections are welcome.


Generated at Sat May 04 14:00:22 UTC 2024 using JIRA 7.5.2#75007-sha1:9f5725bb824792b3230a5d8716f0c13e296a3cae.