[Java lista] NetBeans + Tomcat + Log4J
István Viczián
viczian.istvan at gmail.com
2009. Nov. 12., Cs, 16:34:08 CET
Üdv,
Van egy JAX-WS handler-em, Tomcat web alkalmazásban, amiben Log4J-vel
naplózom a bejövő és kimenő XML-eket. Az egészet NetBeans-ben
futtatom.
Amennyiben kivétel keletkezik, akkor a Handler handleFault metódusa fut le.
Azonban a LOGGER.debug utasítás hatására a Tomcat nem fogad több
kapcsolatot, sem HTTP hívást, sem JMX-et, de admin-t. Gyakorlatilag
teljesen meghal, csak kilőni lehet.
Sikerült kideríteni, hogy a
org.apache.tomcat.util.log.SystemLogHandler.write(SystemLogHandler.java:166)
hív
java.io.FileOutputStream.writeBytes(Native Method)
és itt pihen.
Közben tart egy lock-ot egy java.io.OutputStreamWriter példányra.
Az összes többi kérés viszont e miatt a lock miatt blokkolódik.
A NetBeans Name: Apache Tomcat 6.0.18 ServerLog - Thread szála viszont a
org.netbeans.modules.tomcat5.util.ServerLog.run(ServerLog.java:167)
sorban egy
java.io.FileInputStream.readBytes(Native Method)
hívásban pihen.
Elvileg két külön JVM.
Az egyik nem tud írni, a másik képtelen olvasni. Mit lehet ilyenkor
tenni? Merre lehet tovább vizsgálódni?
Egy ilyent találtam, de itt sincs megoldás:
http://www.opensubscriber.com/message/users@tomcat.apache.org/4364035.html
A bajom az, hogy
Viczi
További információk a(z) Javalist levelezőlistáról