Running Multiple IDE Instances

Following the instructions on the Wiki it is possible to launch the Servoy IDE with completely different configurations from the same installation directory. This is nice, but it doesn’t work to have multiple instances running at the same time because the network port used by Webclient (Tomcat) will conflict. To workaround this I followed the instructions here to pass in the Tomcat port number on the command line and it worked, except for one small detail. When launching webclient from the IDE it thinks the Tomcat port is 0 instead of the actual port number I passed in. Does anyone know a way around this? Should I open a case for this (I know this is something that not many people are likely to care about)?

It would be nice if Servoy would make the Tomcat port number configurable via servoy.properties instead of having to edit the server.xml file which would also solve this issue.

Thanks,
Corey

Corey,

Servoy tries to parse the port number from the /path/to/servoy/application_server/server/conf/server.xml file.
What does your Connector section look like?

Rob

In this case, the server.xml file looks like this:

<Connector port="${tomcat.http.port}" maxHttpHeaderSize="8192"
           maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
           enableLookups="false" redirectPort="8443" acceptCount="100"
           connectionTimeout="20000" disableUploadTimeout="true" />

You replace the hard-coded port number with the Ant-style variable substitution syntax that Tomcat supports to specify the system property added to the command line.

Corey

Corey,

Servoy does not lookup the value, it just tries to read a number from the server.xml file.
When you hardcode the number in that file it should work.

Rob

Yes, I know. That’s what precipitated my original post: could Servoy support this syntax or else provide an alternative way to specify the port in a similar manner to how we can specify alternate servoy.properties files today? As I noted in my original message, this would allow me to run two Servoy sessions from the same installation directory simultaneously without them conflicting. If I hard-code the port in server.xml, as far as I know there’s no way to specify different server.xml files the way we can with servoy.properties.

Thanks,
Corey

Corey,

Servoy reads the server.xml file from the ${servoy.application_server.dir}/server/conf/server.xml file.
The only variable in this is the servoy.application_server.dir setting.

If you make a copy of the application_server directory you can start 2 developer instances simultaneously from the same install by specififying a different -Dservoy.application_server.dir=… for each startup.

This way you share half of the instal files (the eclipse/developer part).
Alternatively you can simply copy the complete install to another directory, there is no dependency on the actual installed directory.

Rob

Ok, it’s probably simpler just to copy the whole installation in that case. :? Any chance of this changing in a future release?