Another question from Karl: Nuxeo IDE doesn’t deploy? It just waits and waits!

This is a great opportunity to dive a little bit deeper into the IDE internals and the SDK. Stephane, one of our dedicated support guys, tells us how it works.

Did you know that the SDK has its own configuration file, nuxeo-sdk.conf? It’s the one used by the IDE when you start the server from the Nuxeo perspective. It means that if you want to use Postgres, configure the mail server or choose different templates on the SDK server that run within the IDE, you need to modify nuxeo-sdk.conf. Keep in mind that you always have to select the SDK template.

java nuxeo.templates=default,sdk

Because this template does something that is very important: it adds a valve and changes Tomcat’s class loader. A Tomcat Valve act as a preprocessor for each request. In our case, it’s used to enable remote hot deploy from the IDE with the help of the specific NuxeoDevWebappClassLoader. This custom class loader basically adds a ‘local’ fallback class loader. When Tomcat looks for a class that doesn’t exist in the initial ClassLoader, it looks into the local one.

That’s it for today. See you on Monday!