Liferay as Windows Service

Far partire il bundle di lifery come servizio non è stata una cosa semplice. Ho provato diverse opzioni per fare partire lo startup.bat ma senza nessun risultato. Mi sa che per i servizi bisogna usare per forza un exe, volevo usare lo startup perchè con quello funzionava tutto.

Le due guide di riferimento sono per versione tomcat6 e la prima che si è guardata generica che vale per tomcat5

http://www.liferay.com/community/wiki/-/wiki/Main/Tomcat+6+as+a+Windows+Service
http://www.liferay.com/community/wiki/-/wiki/Main/Starting+Liferay+as+a+Windows+Service

Per prima cosa va settato il file setenv.bat va preparato con catalina home e java home facendo attenzione agli / che devono essere stile posix linux anche se siamo su windows quindi invertire dopo lanciarlo e verificare l'output così si capisce se funziona. Purtroppo il file definitivo è rimasto sulla macchina di Taranto e non l'ho copiato. Spero di riuscirci quando mi collegherò in remoto.

Per funzionare come servizio dentro la directory bin di tomcat devono essere presenti i due tomcat exe (tomcat6.exe e tomcat6w.exe) uno è il tomcat vero e proprio l'altro avvia una interfaccia dove si inseriscono dei parametri di configurazione. I parametri di configurazione riportati nella guida sono questi

-XX:MaxPermSize=512m
-Dfile.encoding=UTF8
-Duser.timezone=GMT
-Djava.security.auth.login.config="%CATALINA_HOME%/conf/jaas.config"
-Dorg.apache.catalina.loader.WebappClassLoader.ENABLE_CLEAR_REFERENCES=false

Non tutti si possono inseire perchè per esempio nelle versioni di tomcat che ho usato il file jaas.config non era presente e non ho trovato come una versione da editare per capire come funzionava. Quindi quella riga è stata soppressa. Quando si apre l'interfaccia di tomcat6w.exe dove si inseriscono le java options in basso si trovano anche i parametri

Inizia memory pool:
Maximum memory pool:
Threat stack size:

I primi due dovrebbero (non ne sono sicuro perchè ho sempre fatto una configurazione più specifica e non così generale) riferirsi ai valori dello heap totali di inizializzazione. Nel nostro caso dato che usavano un'architettura software a 32 bit (pessimi questi che ci hanno dato win2008 a 32 bit) la dimensione massima sembra che non possa essere > 1024 MB. Il valore del thread non so cos'è.

Dopo cambiare in service.bat cambiare i tomcat5.exe con i tomcat6.exe altrimenti lui dice che non ha trovato il tomcat e che la variabile catalina_home è sbagliata ma invece e che lui cerca i tomcat5, infine eseguire

service.bat install tomcat6

sperando che non dia errori smile

Avviando il servizio con il service di windows controllare dentro la cartella log di tomcat se tutto è andato a posto e che non ci siano troppe eccezioni.

Salvo diversa indicazione, il contenuto di questa pagina è sotto licenza Creative Commons Attribution-ShareAlike 3.0 License