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

Announcements
Want to see what's currently in public preview? We've pulled it all together in one place. Check it out here
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!