Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Write Table now available in Qlik Cloud Analytics: Read Blog
cancel
Showing results for 
Search instead for 
Did you mean: 
nate2
Contributor
Contributor

tAdvancedFileOutputXML Java exception: IllegalArgumentException

I am getting the following exception when I try and use the tAdvancedFileOutputXML component:

 

Exception in component tAdvancedFileOutputXML_5 (sketch_stock_transfer_xml)

java.lang.IllegalArgumentException: Illegal character in local name: 'soapenv:Envelope'.

at org.dom4j.QName.validateNCName(QName.java:346)

at org.dom4j.QName.<init>(QName.java:153)

at org.dom4j.tree.QNameCache.createQName(QNameCache.java:245)

at org.dom4j.tree.QNameCache.get(QNameCache.java:115)

at org.dom4j.DocumentFactory.createQName(DocumentFactory.java:191)

at org.dom4j.DocumentHelper.createQName(DocumentHelper.java:97)

at infohub.sketch_stock_transfer_xml_0_9.sketch_stock_transfer_xml.tDBInput_3Process(sketch_stock_transfer_xml.java:2211)

at infohub.sketch_stock_transfer_xml_0_9.sketch_stock_transfer_xml.runJobInTOS(sketch_stock_transfer_xml.java:2897)

at infohub.sketch_stock_transfer_xml_0_9.sketch_stock_transfer_xml.main(sketch_stock_transfer_xml.java:2746)

 

0695b00000HADw6AAH.jpg

The exception appears to be a result of having a colon ":" character in the XML namespace.

 

0695b00000HADwfAAH.jpg

Out of curiosity, when I remove the colon from the name space, the same Java exception no longer occurs (although a different exception happens):

 

0695b00000HADxiAAH.jpg

 

0695b00000HADxsAAH.jpg

In the past year I have used this same XML component with the same XML namespace and did not encounter the Java exception.

 

I am using TOS 7.3.1 on OS X and have tried Java 14.0.2, 15.0.2 and 16.0.2 and get the same Java exception. I have also tried TOS on Windows 10 and get the same Java exception, so I'm fairly certain the issue is not limited to a specific operating environment.

 

If anyone encountered a similar Java exception and determined a workaround I would be interested in hearing. Thank you.

Labels (3)
8 Replies
Anonymous
Not applicable

Hello,

Java 14.0.2, 15.0.2 and 16.0.2 are not list in the compatible Java environments table.

Please have a look at this online documentation about: TalendHelpCenter: Compatible Java Environments

Best regards

Sabrina

 

nate2
Contributor
Contributor
Author

@Xiaodi Shi​ 

Thank you for the pointer. I did not think to check the compatible Java environments table.

 

I have installed/configured Java 11 but still get the same error. In the job below I have added a statement to print the Java version:

0695b00000HAI57AAH.jpgI have made sure the JDK compiler compliance level is set to 11 (as instructed in the documentation you kindly referenced):

0695b00000HAI3QAAX.jpgHere is output from the command line with more details of the Java installation:

0695b00000HAI3uAAH.jpgDo you happen to know whether there might be some other settings I should check?

Anonymous
Not applicable

Hello,

Does this issue also repro on tFileOutputMSXML component?

Could you please try to select the option in the tAdvancedFileOutputXml component : Advanced settings > Generation mode > "Fast with low memory consumption" to see if it is OK with you?

Best regards

Sabrina

nate2
Contributor
Contributor
Author

Hello @Xiaodi Shi​ ,

 

I tried to change the setting you suggested but was unable to find the memory consumption option. (Screenshot below.) Is there an alternative setting I can try?

0695b00000HATEKAA5.jpg

Anonymous
Not applicable

Hello,

Please have a look at my screenshot for details.

0695b00000HAftPAAT.pngBest regards

Sabrina

nate2
Contributor
Contributor
Author

@Xiaodi Shi​ ​ ,

 

thank you for sharing the screenshot of the Advanced settings. (I now realize the screenshot I previously shared was incorrectly showing the job Advanced settings and not the component Advanced settings.)

 

Please see the attached screenshot of how I see the component's Advanced settings. For some reason I do not see the "Generation mode" option on the current instance of the component. However, when I created a new instance of the component, the "Generation mode" option appeared. (See second screenshot.) I was able to successfully generated XML files as expected. Thank you!

 

I am guessing there must have been an upgrade to the component sometime between the previous TOS version I was using and 7.3.1. If you happen to know whether the "Generate mode" option is a newer feature I would be interested in hearing.

 

Thanks again.

 

"Before"

0695b00000HBECzAAP.jpg 

"After"

0695b00000HBGPqAAP.jpg

Anonymous
Not applicable

@Nate Jensen​ , This option has been added since v2.3.2, this was a very old version. Find more information in this JIRA issue.

 

Regards

Shong

nate2
Contributor
Contributor
Author

@Shicong Hong​ ,

 

Thank you for your reply and the link to the JIRA issue.

 

I have been using the tFileOutputMSXML component successfully (without the "generation mode" option) since an earlier version of TOS 7. I'm not sure how/why the Java exception started showing up at this point in time, but that is okay--I just note my experience on this thread in-case other TOS users have the same issue and see this ticket.

 

Thank you and @Xiaodi Shi​ for your expert insights. Most appreciated!