We have a legacy Java web application which we deploy to a Windows Server 2012 machine using an executable file and need to increase its memory pool size, since we get a lot of Out of memory exceptions.
It creates its own folders on Program Files including tomcat bin folder and a Windows service named "Apache Tomcat servicename" which is basically Tomcat version 6 but when I try to edit its Java options through tomcat6w.exe it says that this service is not installed on the system.
Is there a way to change the tomcat service being used by the application to a tomcat service installed from http://tomcat.apache.org/
Or maybe edit the service.bat (or any other file?) when creating the executable to hardcode the memory pool size there?
There is a line in service.bat like below:
"%EXECUTABLE%" //US//%SERVICE_NAME% ++JvmOptions "-Djava.io.tmpdir=%CATALINA_BASE%\temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties" --JvmMs 128 --JvmMx 256
Your Tomcat will have two exe files, Tomcat6.exe and Tomcat6w.exe
Suppose your service name is 'MyService' as shown in 'Windows Services', now rename Tomcat6w.exe as MyServicew.exe (notice that there is a 'w' also in the file name).
Now double click this MyServicew.exe, and a intuitive UI is presented for you to Monkey around with the service arguments.
All the best!