Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

JAXB and Arabic encoding

4 réponses
Avatar
bmachkour
Hello,

I'm using JAXB to export/import data from/to a DB through XML files.
Everything is working well. I would like also to be able to edit
the file using an editor, typically XMLSpy. The problem is that
within the XML the arabic text is encoded with strings such as
"& #1578;& #1575;& #1585"... and using the editor, arabic does not
appear, only the sequence of ascii strings i just mentioned. I edit
manually and replace with arabic charater, then they show up in
XMLSpy. I guess it's an encoding problem at marshalling ?

I've tried anything I can at the marshalling step using :

> Marshaller m = jc.createMarshaller();
> m.setProperty( Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE );
> m.setProperty( Marshaller.JAXB_ENCODING, "ISO-8859-6" );
> m.marshal(xmldata, new FileOutputStream(xmlfile));

still the same thing. tries UTF-8, CP1256, Windows-1256, ...

Is there a way to have arabic charaters directly showing up in
the XML ?

Thank you for any help

Brahim.

4 réponses

Avatar
Mark Thornton
Brahim Machkour wrote:

Hello,

I'm using JAXB to export/import data from/to a DB through XML files.
Everything is working well. I would like also to be able to edit
the file using an editor, typically XMLSpy. The problem is that
within the XML the arabic text is encoded with strings such as
"& #1578;& #1575;& #1585"... and using the editor, arabic does not
appear, only the sequence of ascii strings i just mentioned. I edit
manually and replace with arabic charater, then they show up in
XMLSpy. I guess it's an encoding problem at marshalling ?

I've tried anything I can at the marshalling step using :


Marshaller m = jc.createMarshaller();
m.setProperty( Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE );
m.setProperty( Marshaller.JAXB_ENCODING, "ISO-8859-6" );
m.marshal(xmldata, new FileOutputStream(xmlfile));



still the same thing. tries UTF-8, CP1256, Windows-1256, ...

Is there a way to have arabic charaters directly showing up in
the XML ?

Thank you for any help

Brahim.


You have to use a 'transcoder' which knows what characters can be
represented directly in the selected encoding. Many transcoders will
take the easy way out and just put everything not in ASCII as a
character reference. Note that prior to the addition of the Charset
classes in 1.4 it was tedious to determine if a given character set
supported a character.

Mark Thornton


Avatar
Alan J. Flavell
On Sat, Jul 26, Roedy Green inscribed on the eternal scroll:

If they did, it would not be XML any more. XML is designed to make
handling un-American characters difficult.


Bloody trolls.

Avatar
Jon A. Cruz
Roedy Green wrote:
On 25 Jul 2003 01:25:54 -0700, (Brahim Machkour)
wrote or quoted :


Is there a way to have arabic charaters directly showing up in
the XML ?



If they did, it would not be XML any more. XML is designed to make
handling un-American characters difficult.



Not at all.

The one thing an XML parser must support to claim it is an XML parser is
Unicode.

Just Use UTF-8 on the XML file and view it in Notepad. You can even have
Arabic identifiers.


Avatar
captainpaf
"Brahim Machkour" a écrit dans le message de news:

Hello,

I'm using JAXB to export/import data from/to a DB through XML files.
Everything is working well. I would like also to be able to edit
the file using an editor, typically XMLSpy. The problem is that
within the XML the arabic text is encoded with strings such as
"& #1578;& #1575;& #1585"... and using the editor, arabic does not
appear, only the sequence of ascii strings i just mentioned. I edit
manually and replace with arabic charater, then they show up in
XMLSpy. I guess it's an encoding problem at marshalling ?

I've tried anything I can at the marshalling step using :

Marshaller m = jc.createMarshaller();
m.setProperty( Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE );
m.setProperty( Marshaller.JAXB_ENCODING, "ISO-8859-6" );
m.marshal(xmldata, new FileOutputStream(xmlfile));


still the same thing. tries UTF-8, CP1256, Windows-1256, ...

Is there a way to have arabic charaters directly showing up in
the XML ?

Thank you for any help

Brahim.


il n'y a pas assez de forum en anglais ??