Monday, March 16, 2009

Netsuite web service and ColdFusion 8

I recently posted updates to previous posts regarding problems with web service connections between ColdFusion MX 7 and Netsuite, but thought this matter warranted a post of its own. Perhaps you have experienced issues creating a web service connection with Netsuite, whether it's through the ColdFusion Administrator or through the CFINVOKE tag or CreateObject function. The fact of the matter is that Netsuite's extraordinarily complex and deeply nested WSDL, which references XSD within XSD and beyond, appears to give ColdFusion a headache, and it silently gives up on compiling the stub objects before the job completes (there are over 600 java stub class files generated for Netsuite's 2008_1 WSDL). I have now confirmed that this an issue in CF8 in addition to CFMX7. I get around this by compiling the stub classes from the command line and dumping them into a nice, portable jar file.

I will readily admit that it is possible I am missing something in this problem. There could very well be a timeout issue with ColdFusion compiling the stub classes, but it doesn't throw an error. And while you can easily adjust the timeout for WSDL2Java from the command line, I am not aware of a way to increase the timeout in the ColdFusion Administrator. If anyone else is aware of a way to do this, I'd love to hear from you in the comments or an email. If I get an answer, I'll be certain to post it here.