Skip to main content
Announcements
A fresh, new look for the Data Integration & Quality forums and navigation! Read more about what's changed.
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

[resolved] java.lang.RuntimeException: An invalid XML character (Unicode: 0x1)

I need to store a unicode character in Talend that the target system uses as a separator value in its database.
It's 0x01/U+0001//start of header/^A.
I pasted the character directly into Talend and next time I ran it that job just came up blank (making me think I've lost all my progress!).
I checked the log and found this:
java.lang.RuntimeException: An invalid XML character (Unicode: 0x1) was found in the element content:"^A2^A"
Did some research and found that this character is supported in XML 1.1, but not 1.0 ( http://en.wikipedia.org/wiki/Valid_characters_in_XML).
If I manually change the XML version of the item file to 1.1, Talend once again opens the job as blank.
Is there any way to fix this? Work around it?
I'm going to try loading the character from a file on the fly to avoid storing it in Talend's xml file. Even it works it would be ugly, so I'm looking for better solutions.
Thanks!
Labels (4)
1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

Have you tried mapping a string literal in a tMap to your output component? Something like
output_row.SEP_STRING="\u0001"
This should keep the Talend problems away. Are you passing this value along to a database query?

View solution in original post

2 Replies
Anonymous
Not applicable
Author

Have you tried mapping a string literal in a tMap to your output component? Something like
output_row.SEP_STRING="\u0001"
This should keep the Talend problems away. Are you passing this value along to a database query?
Anonymous
Not applicable
Author

Have you tried mapping a string literal in a tMap to your output component? Something like
output_row.SEP_STRING="\u0001"
This should keep the Talend problems away. Are you passing this value along to a database query?

That did it!
Thanks.