Newsgroup: it.comp.java
Titolo: Problemi Applicazione J2EE Tomcat su Windows 2003 Server

Ciao, qualcuno ha mai deployato una applicazione J2EE che usa tomcat su 
un windows 2003 server?
Ho un problema piuttosto complesso da spiegare. Per il momento posso 
solo dire che il mio portal engine che funziona su linux/windows xp su 
un server windows 2003 server a volte va a volte non va (semplicemente 
non mi restituisce le pagine che chiedo, a meno di ricaricarle).
La macchina č un biprocessore, temo si tratti di problemi di concorrenza.
Qualcuno ha qualche esperienza? Grazie mille, non so proprio da dove 
inziare.









semplicemente non mi restituisce le pagine che chiedo, a meno di ricaricarle
Potresti provare a spiegarti meglio ? :)

 
Grazie, appena ho più info, le posto.

Altre info dai log.
Nel log della mia applicazione ho con jdk1.4.2_09 e tomcat 5.0.28 quanto 
sotto (che non ho con jdk1.4.1 e tomcat 4.1)
[Wed Nov 09 16:45:52 CET 2005] -- ERROR --
	Exception:  java.lang.NullPointerException
	Stack Trace follows:
	java.lang.NullPointerException
(omissis stack interno della mia applicazione, per diversi metodi, a 
differenza che si legga il contenuto da db o filesystem sulla stessa 
macchina)
cmq sembra che ogni volta qualche metodo con questa accoppiata 
jdk/tomcat riceva un null e dia NullPointerException in maniera
impredicibile, infatti basta ricaricare la pagina da browser che non si ha
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
	at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
	at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
	at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at 
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
	at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
	at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
	at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
	at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
	at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
	at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
	at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
	at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
	at 
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
	at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
	at java.lang.Thread.run(Thread.java:534)
Sul log di tomcat stdout.log invece non ho nulla di strano/errore come 
si vede sotto.
9-nov-2005 15.57.20 org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
9-nov-2005 15.57.20 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1797 ms
9-nov-2005 15.57.21 org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
9-nov-2005 15.57.21 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/5.0.28
9-nov-2005 15.57.21 org.apache.catalina.core.StandardHost start
INFO: XML validation disabled
9-nov-2005 15.57.21 org.apache.catalina.core.StandardHost getDeployer
INFO: Create Host deployer for direct deployment ( non-jmx )
9-nov-2005 15.57.21 org.apache.catalina.core.StandardHostDeployer install
INFO: Processing Context configuration file URL file:C:\Program 
Files\Apache Software Foundation\Tomcat 
5.0\conf\Catalina\localhost\admin.xml
9-nov-2005 15.57.24 org.apache.struts.util.PropertyMessageResources <init>
INFO: Initializing, config='org.apache.struts.util.LocalStrings', 
returnNull=true
9-nov-2005 15.57.24 org.apache.struts.util.PropertyMessageResources <init>
INFO: Initializing, config='org.apache.struts.action.ActionResources', 
returnNull=true
9-nov-2005 15.57.24 org.apache.struts.util.PropertyMessageResources <init>
INFO: Initializing, 
config='org.apache.webapp.admin.ApplicationResources', returnNull=true
9-nov-2005 15.57.26 org.apache.catalina.core.StandardHostDeployer install
INFO: Processing Context configuration file URL file:C:\Program 
Files\Apache Software Foundation\Tomcat 
5.0\conf\Catalina\localhost\balancer.xml
9-nov-2005 15.57.26 org.apache.catalina.core.StandardHostDeployer install
INFO: Processing Context configuration file URL file:C:\Program 
Files\Apache Software Foundation\Tomcat 
5.0\conf\Catalina\localhost\manager.xml
9-nov-2005 15.57.26 org.apache.catalina.core.StandardHostDeployer install
INFO: Installing web application at context path /jsp-examples from URL 
file:C:\Program Files\Apache Software Foundation\Tomcat 
5.0\webapps\jsp-examples
9-nov-2005 15.57.27 org.apache.catalina.core.StandardHostDeployer install
INFO: Installing web application at context path  from URL 
file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\ROOT
9-nov-2005 15.57.27 org.apache.catalina.core.StandardHostDeployer install
INFO: Installing web application at context path /servlets-examples from 
URL file:C:\Program Files\Apache Software Foundation\Tomcat 
5.0\webapps\servlets-examples
9-nov-2005 15.57.27 org.apache.catalina.core.StandardHostDeployer install
INFO: Installing web application at context path /tomcat-docs from URL 
file:C:\Program Files\Apache Software Foundation\Tomcat 
5.0\webapps\tomcat-docs
9-nov-2005 15.57.27 org.apache.catalina.core.StandardHostDeployer install
INFO: Installing web application at context path /webdav from URL 
file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\webdav
9-nov-2005 15.57.27 org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
9-nov-2005 15.57.28 org.apache.jk.common.ChannelSocket init
INFO: JK2: ajp13 listening on /
0.0.0.0:8009
9-nov-2005 15.57.28 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/16  config=C:\Program Files\Apache Software 
Foundation\Tomcat 5.0\conf\jk2.properties
9-nov-2005 15.57.28 org.apache.catalina.startup.Catalina start
INFO: Server startup in 7141 ms
9-nov-2005 15.58.47 org.apache.coyote.http11.Http11Protocol pause
INFO: Pausing Coyote HTTP/1.1 on http-8080
Dimenticavo di dire che tomcat gira come servizio ed è installato come 
tale (cosa che non uso mai,sopratutto perchè faccio deploy su linux)
e in locale per lo svilupo sotto windows xp uso tomcat come 
appl.standalone lanciandola con startup.bat.
Nel fine di log localhost_log.2005-11-09.txt che genera sempre tomcat 
(mi riferisco sempre ovviamente al tomcat 5.0.28)
2005-11-09 17:14:10 StandardContext[/jsp-examples]ContextListener: 
contextInitialized()
2005-11-09 17:14:10 StandardContext[/jsp-examples]SessionListener: 
contextInitialized()
2005-11-09 17:14:10 StandardContext[/servlets-examples]ContextListener: 
contextInitialized()
2005-11-09 17:14:10 StandardContext[/servlets-examples]SessionListener: 
contextInitialized()
2005-11-09 17:33:08 StandardContext[/balancer]Exception starting filter 
BalancerFilter
java.lang.NoClassDefFoundError: org/apache/commons/digester/Digester
	at 
org.apache.webapp.balancer.RulesParser.createDigester(RulesParser.java:65)
	at org.apache.webapp.balancer.RulesParser.<init>(RulesParser.java:43)
	at org.apache.webapp.balancer.BalancerFilter.init(BalancerFilter.java:79)
	at 
org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:225)
	at 
org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:308)
	at 
org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:79)
	at 
org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3698)
	at 
org.apache.catalina.core.StandardContext.start(StandardContext.java:4349)
	at 
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)
	at 
org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:277)
	at org.apache.catalina.core.StandardHost.install(StandardHost.java:832)
	at 
org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:701)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:432)
	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:983)
	at 
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:349)
	at 
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1091)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:789)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478)
	at org.apache.catalina.core.StandardService.start(StandardService.java:480)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:2313)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:556)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:324)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:287)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425)
2005-11-09 17:33:08 StandardContext[/jsp-examples]ContextListener: 
contextInitialized()
2005-11-09 17:33:08 StandardContext[/jsp-examples]SessionListener: 
contextInitialized()
2005-11-09 17:33:08 StandardContext[/servlets-examples]ContextListener: 
contextInitialized()
2005-11-09 17:33:08 StandardContext[/servlets-examples]SessionListener: 
contextInitialized()
2005-11-09 17:33:10 StandardContext[/servlets-examples]ContextListener: 
attributeReplaced('org.apache.catalina.WELCOME_FILES', 
'[Ljava.lang.String;@15c929a')
2005-11-09 17:33:10 StandardContext[/servlets-examples]ContextListener: 
attributeReplaced('org.apache.catalina.WELCOME_FILES', 
'[Ljava.lang.String;@9cd8db')
2005-11-09 17:33:10 StandardContext[/servlets-examples]ContextListener: 
attributeReplaced('org.apache.catalina.WELCOME_FILES', 
'[Ljava.lang.String;@1612190')
2005-11-09 17:33:10 StandardContext[/servlets-examples]SessionListener: 
contextDestroyed()
2005-11-09 17:33:10 StandardContext[/servlets-examples]ContextListener: 
contextDestroyed()
2005-11-09 17:33:10 StandardContext[/jsp-examples]ContextListener: 
attributeReplaced('org.apache.catalina.WELCOME_FILES', 
'[Ljava.lang.String;@c736e4')
2005-11-09 17:33:10 StandardContext[/jsp-examples]ContextListener: 
attributeReplaced('org.apache.catalina.WELCOME_FILES', 
'[Ljava.lang.String;@e4e358')
2005-11-09 17:33:10 StandardContext[/jsp-examples]ContextListener: 
attributeReplaced('org.apache.catalina.WELCOME_FILES', 
'[Ljava.lang.String;@109dc35')
2005-11-09 17:33:10 StandardContext[/jsp-examples]SessionListener: 
contextDestroyed()
2005-11-09 17:33:10 StandardContext[/jsp-examples]ContextListener: 
contextDestroyed()
2005-11-09 17:48:42 StandardContext[/servlets-examples]ContextListener: 
attributeReplaced('org.apache.catalina.WELCOME_FILES', 
'[Ljava.lang.String;@14fa679')
2005-11-09 17:48:42 StandardContext[/servlets-examples]ContextListener: 
attributeReplaced('org.apache.catalina.WELCOME_FILES', 
'[Ljava.lang.String;@3a6d47')
2005-11-09 17:48:42 StandardContext[/servlets-examples]ContextListener: 
attributeReplaced('org.apache.catalina.WELCOME_FILES', 
'[Ljava.lang.String;@1dc506e')
2005-11-09 17:48:42 StandardContext[/servlets-examples]SessionListener: 
contextDestroyed()
2005-11-09 17:48:42 StandardContext[/servlets-examples]ContextListener: 
contextDestroyed()
2005-11-09 17:48:42 StandardContext[/jsp-examples]ContextListener: 
attributeReplaced('org.apache.catalina.WELCOME_FILES', 
'[Ljava.lang.String;@30dce')
2005-11-09 17:48:42 StandardContext[/jsp-examples]ContextListener: 
attributeReplaced('org.apache.catalina.WELCOME_FILES', 
'[Ljava.lang.String;@7f5fcd')
2005-11-09 17:48:42 StandardContext[/jsp-examples]ContextListener: 
attributeReplaced('org.apache.catalina.WELCOME_FILES', 
'[Ljava.lang.String;@6aa080')
2005-11-09 17:48:42 StandardContext[/jsp-examples]SessionListener: 
contextDestroyed()
2005-11-09 17:48:42 StandardContext[/jsp-examples]ContextListener: 
contextDestroyed()
Nel file jakarta_service_20051109.log invece sembra di nuovo tutto ok
[2005-11-09 15:14:47] [info] Service Tomcat5 name Apache Tomcat
[2005-11-09 15:14:47] [info] Service Tomcat5 installed
[2005-11-09 15:14:47] [info] Procrun finished.
[2005-11-09 15:19:14] [info] Updating service...
[2005-11-09 15:19:14] [info] Service Tomcat5 updated
[2005-11-09 15:19:14] [info] Update service finished.
[2005-11-09 15:19:14] [info] Procrun finished.
[2005-11-09 15:19:14] [info] Updating service...
[2005-11-09 15:19:15] [info] Service Tomcat5 updated
[2005-11-09 15:19:15] [info] Update service finished.
[2005-11-09 15:19:15] [info] Procrun finished.
[2005-11-09 15:37:03] [info] Running Service...
[2005-11-09 15:37:03] [info] Starting service...
[2005-11-09 15:37:05] [info] Service started.
[2005-11-09 15:37:06] [info] Run service finished.
[2005-11-09 15:37:06] [info] Procrun finished.
[2005-11-09 15:40:07] [info] Running Service...
[2005-11-09 15:40:07] [info] Starting service...
[2005-11-09 15:40:08] [info] Service started.
[2005-11-09 15:43:08] [info] Service STOP signaled
[2005-11-09 15:43:08] [info] Stopoping service...
[2005-11-09 15:43:09] [info] Service stopped.
[2005-11-09 15:43:09] [info] Run service finished.
[2005-11-09 15:43:09] [info] Procrun finished.
[2005-11-09 15:45:05] [info] Running Service...
[2005-11-09 15:45:05] [info] Starting service...
[2005-11-09 15:45:06] [info] Service started.
[2005-11-09 15:49:40] [info] Service STOP signaled
[2005-11-09 15:49:40] [info] Stopoping service...
[2005-11-09 15:49:41] [info] Service stopped.
[2005-11-09 15:49:41] [info] Run service finished.
[2005-11-09 15:49:41] [info] Procrun finished.
[2005-11-09 15:50:31] [info] Running Service...
[2005-11-09 15:50:31] [info] Starting service...
[2005-11-09 15:50:32] [info] Service started.
[2005-11-09 15:56:35] [info] Service STOP signaled
[2005-11-09 15:56:35] [info] Stopoping service...
[2005-11-09 15:56:36] [info] Service stopped.
[2005-11-09 15:56:36] [info] Run service finished.
[2005-11-09 15:56:36] [info] Procrun finished.
[2005-11-09 15:57:18] [info] Running Service...
[2005-11-09 15:57:18] [info] Starting service...
[2005-11-09 15:57:19] [info] Service started.
[2005-11-09 15:58:47] [info] Service STOP signaled
[2005-11-09 15:58:47] [info] Stopoping service...
[2005-11-09 15:58:48] [info] Service stopped.
[2005-11-09 15:58:48] [info] Run service finished.
[2005-11-09 15:58:48] [info] Procrun finished.

della JVM da settare?)
Direi di no... mi sono dimenticato di dirti che generalmente i server
win 2003 che uso sono biprocessori ma non ho mai dovuto cambiare
nessuna impostazione della VM... a parte che non mi risulta ne
esistano....
Mi rendo conto di non averti dato molte indicazioni utili, ma forse
qualche spunto per investigare ce l'hai....
Buona fortuna :)

 
Temo che con il tempo a disposizione (24h deadline?...vedremo) posso 
solo sperare che magari con una versione diversa di jdk tipo la 1.4.2_10 
che è uscita ora, o un tomcat più vecchio, le cose vadano.
Il problema è che la macchina è di produzione e non posso lavorare come 
voglio..quindi mi devo provare le cose alla poverelle, in casa su un xp 
p4 oppure se me lo danno un windows 2003 server su un WMWare..tu come 
approcceresti il problema?
Poi cerco di non disturbarti più, sei stato gentilissimo.
grazie ancora.

Dimenticavo, la pagina che mi arriva è vuota bianca nel senso che ho 
solo i tag <html>e body mentre ovviamente il contenuto che (dati, parole 
ecc) che dovrei generare non arriva in quanto c'è quel null pointer.

approcceresti il problema?
La grossa difficoltà che vedo nella tua situazione è quella di
riuscire a riprodurre il pbm.
Infatti IMHO se anche ti installi una macchina Win 2003 con VMWare e
installi lo stesso software di base (JVM, Tomcat, etc)
non riesci a riprodurre le stesse condizioni 'applicative', gli stessi
utenti che lavorano in concorrenza etc...
IMHO l'unico modo per uscirne è lavorare sulla macchina di produzione
(cercando ovviamente di limitare i danni agli utenti finali)
qui vedo due possibili scenari:
1) se tu sei convinto che il pbm sia legato a JVM e Tomcat, allora
prova ad usare la stesse versioni che usi tu in sviluppo e magari anche
a lanciare tomcat non come servizio ma come applicazione separata...
2) cerca invece di capire seguendo il flusso del codice come è
possibile che in quel punto dell'applicazione ti venga generata la
NullPointerException, ovvero perchè una variabile che dovrebbe essere
valorizzata non lo è. Credo che tu abbia a disposizione tutti i
sorgenti del caso compresi quelli di Tomcat e dei vari framework che
usi.
PS: dalle tracce che hai postato non ho capito niente di più :(

Grazie, spero di poterti scrivere presto che ho "domato il drago" ;-)