Tomcat WebDAV access via httpd/jk
Hi guys, I have run in to a little problem with accessing a webdav enabled app on tomcat. I run Tomcat 5.5 with Apache2+jk in front of it, but fail to get working connection when authenticating. I have configured tomcat and app exactly as my installation on a local test server where I access tomcat directly without routing it through Apache2 With Win XP web folders it does that annoying domain prefix thing With Dreamweaver it seems to work, but is extrmly slow and reports a lot of network errors Any suggestions ? - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
changing the storage location for webdav app
I want to modify the default webdav app in Tomcat 5.5 to storing information in a folder outside the webapps hierachy. How do I do that ? Henrik - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
NullPointerException attempting to deploy a WAR with context.xml in META-INF on Tomcat 5.5
I have a quite persistent problem attempting to use the ManagerServlet deployment tasks. On Tomcat 5.5.28+Java5 with Host config autoDeploy=false I use the deploy task to upload my war file. It fails and thereafter on every startup Tomcat throws a NullPointerException in HostConfig.deployDescriptor line 572 while parsing the renamed context.xml I put in the war. context.xml is as follows: context path=/blingon-portal docBase=blingon-portal.war reloadable=true /context I have also tried a version with only the path attribute present with the same result. What have I done wrong ? Henrik - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5 classloading blues
Everything ran great. I got Tapestry examples working fine. And then based on working web apps, I moved some of the Tapestry jars into shared/lib. All of a sudden the classloader couldn't find ServletInputStream. That's a bit bizarre Exactly my point. I know that if you have multiple servlet-api.jars in the class path you get that sort of error, so I verified about a hundred times that I hadn't, and then decided to get some better logging output to figure out what went wrong. Then I realised that I needed to install commons logging and log4j to get proper logging, so I put them in commons as described. Now I get a NoClassDefFound on LogFactory instead. Did you put commons-logging.jar (*not* commons-logging-api.jar) along with logj4-jar in common/lib? And did you make sure you webapp doesn't contain another copy of commons-logging.jar in WEB-INF/lib? Yes I moved commons-logging-1.0.4.jar into the commons/lib along with log4j-1.2.8, and renamed to WEB-INF/lib to no-lib (Shouldnt be needing anything really) 1) The logging guide advises to put the jars in commons, why not put them in server/lib and in the invidual WEB-INF/lib to get per webapp log files and no risk of classloading issues ? First, this assumes that the server applies child-first classloading behavior which is recommended by the servlet spec, but not mandated. Tomcat implements this, and I actually like that it does, but most other servers I know of either don't provide for it or provide it as a non-default option. This means that putting your logging jars in WEB-INF/lib does not guarantee per-webapp log files unless you stick to Tomcat. This can be better accomplished by using a repository selector in Log4j (especially when Log4j-1.3 is released as it makes usage of such selectors much easier). http://wiki.apache.org/logging-log4j/AppContainerLogging Well, I just wondered why the Tomcat docs were not at least explaining such considerations. Others have warned against the repository selector until 1.3 comes out. And I'm sure that I am not the only one who would want seperate logging facilities working painlessly in their current environment. Thanks for the input, Henrik - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Tomcat 5.5 classloading blues
Still remembering earlier bruises setting up Tomcat I try to run as plain vanilla as possible. Fedora Core 3, Tomcat 5.5.4 Java 5 installed with rpm's Everything ran great. I got Tapestry examples working fine. And then based on working web apps, I moved some of the Tapestry jars into shared/lib. All of a sudden the classloader couldn't find ServletInputStream. Then I realised that I needed to install commons logging and log4j to get proper logging, so I put them in commons as described. Now I get a NoClassDefFound on LogFactory instead. 1) The logging guide advises to put the jars in commons, why not put them in server/lib and in the invidual WEB-INF/lib to get per webapp log files and no risk of classloading issues ? 2) Am I just stupid to attempt to use shared/lib rather than just sticking everything in the war file ? 3) Where can I find a list of the jar's present in server/lib commons/lib shared/lib in a fresh install ? 4) Is JMX tools to manage Tomcat the way forward ? Thanks for any comments, Henrik - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Servlet Filter modifying RequestURL
I am trying to use a Filter for a bit of URL rewriting. Although the request.getRequestURL() documentation states that changing the content of the returned StringBuffer is an intended us, it doesn't seem to have much effect. The DefaultServlet is still chosen to create a response. The context path is /sports. The following does not seem to do the trick, what am I doing wrong. If I need to use a HttpServletRequestWrapper, will I have to overrid all path getters ? Henrik HttpServletRequest req = (HttpServletRequest)_req; String uri = req.getRequestURI(); StringBuffer urlBuffer = req.getRequestURL(); if (uri.equals(/sports) || uri.equals(/sports/)) { urlBuffer.setLength(0); urlBuffer.append(/sports/welcome); } chain.doFilter(req,res);
Logger.getConfigurationFileName()
With all the flexibility in cofiguring the logging facility, I wonder if there is some way to discover how current properties were loaded. I imagine that getting the absolute path of for instance the log4j.properties file would be tricky; How about the name of the ClassLoader and the relative path ? Henrik - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Logger.getConfigurationFileName()
: org.apache.commons.logging.LogConfigurationException: Class org.apache.commons.logging.impl.Log4JLogger does not implement Log at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryI mpl.java:416) at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.ja va:525) ... 27 more Caused by: org.apache.commons.logging.LogConfigurationException: Class org.apache.commons.logging.impl.Log4JLogger does not implement Log at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryI mpl.java:412) ... 28 more - Original Message - From: Tim Funk [EMAIL PROTECTED] To: Tomcat Users List [EMAIL PROTECTED] Sent: Sunday, September 28, 2003 8:14 PM Subject: Re: Logger.getConfigurationFileName() If using log4j, log4j automagically looks for log4j.properties in the classloader with no package prefix. So if log4j is in $TOMCAT_HOME/lib, you can configure it via log4j.properties in $TOMCAT_HOME/classes. -Tim Henrik Vendelbo wrote: With all the flexibility in cofiguring the logging facility, I wonder if there is some way to discover how current properties were loaded. I imagine that getting the absolute path of for instance the log4j.properties file would be tricky; How about the name of the ClassLoader and the relative path ? Henrik - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat as a service
The information is fairly limited on how to get things to work with Tomcat running as a service. What I have learnt so far is : 1) CATALINA_OPTS environment variable allows you to pass options to the JVM 2) The Jakarta Commons project hosts the Daemon that does the work of running Tomcat as a service http://jakarta.apache.org/commons/daemon I have yet to look into, 1) Automating start/stop with Ant in conjunciton with recompiling webapps (Alternately reloading the webapps, although Tomcat doesnt seem to survive webapp exceptions very well) 2) Making the Daemon show up in Apache Monitor (part of httpd) 3) Configuring Tomcat with service parameters (or ini file) instead of CATALINA_OPTS Henrik - Original Message - From: Robert Mark Bram [EMAIL PROTECTED] To: Tomcat Users List [EMAIL PROTECTED] Sent: Tuesday, September 23, 2003 2:21 PM Subject: RE: Tomcat as a service Hi Yoav Shapira, 3) If I don't have Tomcat as a service, how can I get it running as a service? 4) Where is all of this documented? I did a google search limited to jakarta.apache.org and then I did a text search on my document Tomcat 4.1\webapps\tomcat-docs directory for Tomcat as a service and found nothing that answered these questions. http://jakarta.apache.org/tomcat/faq/ OK .. I checked this already. Tomcat FAQ | Windows | Setting up TomCat 4.1.12 to run as an NT Service http://www.mattkelli.com/tech/tomcat/ntservice.htm -- page is gone Unless you are referring to the Tomcat Service Manager, but I was hoping to find something from Jakarta to do this.. Please forgive me but I fail to find anything else there that talks about Tomcat as a service.. :( Rob :) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Stop Tomcat Remotely
What about Java Management Extensions (JMX) and MBeans. Perhaps they will do it for you ? - Original Message - From: Filip Hanik [EMAIL PROTECTED] To: Tomcat Users List [EMAIL PROTECTED] Sent: Wednesday, September 24, 2003 10:28 PM Subject: Re: Stop Tomcat Remotely I was under the impression, and this has maybe already been answered, that because of security issues, 8005 only accepts connections from the same host Filip - Original Message - From: Allen Hadden [EMAIL PROTECTED] To: Tomcat Users List [EMAIL PROTECTED] Sent: Wednesday, September 24, 2003 1:49 PM Subject: RE: Stop Tomcat Remotely If it's running as a Windows service, do this: (note that these instructions are for Windows 2000): 1. Right click on My Computer and select Manage. The Computer Management window opens. 2. Right click on Computer Management and select the Connect to another computer... 3. Select the computer running the Tomcat service. 4. Go to Services and Applications Services. Find your service and stop it. Of course, there are Windows permission issues involved, but you presumably have the appropriate permissions to do this. Hope this helps. Allen -Original Message- From: srinath narasimhan [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 24, 2003 4:33 PM To: Tomcat Users List Subject: RE: Stop Tomcat Remotely I tried that, one 8005 is not even open ( I don't know if this is because tomcat runs as a windows service ) The documentation says that that can be done only from the local computer. -Original Message- From: Shapira, Yoav [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 24, 2003 15:20 To: Tomcat Users List Subject: RE: Stop Tomcat Remotely Howdy, And what happens if you telnet to the host where tomcat is running, to the port specified as the server port (not the connectors) in tomcat's server.xml, and type SHUTDOWN? Yoav Shapira Millennium ChemInformatics -Original Message- From: srinath narasimhan [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 24, 2003 3:14 PM To: Tomcat Users List Subject: RE: Stop Tomcat Remotely Well sometimes you have no choice or its not in your hands to decide. I know it can be done in unix. It can be done in windows as well if you enable telnet or using WMI scripts ( those involve other security rights issues same as in unix). What I was expecting is somehow make a socket ( telnet ) connection to a port on which the tomcat server is listening ( not 8080 ) and send a command. Thanks. -Original Message- From: Greg Ward [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 24, 2003 14:52 To: Tomcat Users List Subject: Re: Stop Tomcat Remotely On 24 September 2003, srinath narasimhan said: Is there any way to stop tomcat from remote computer ? Tomcat is run as windows service. Well, how do you normally run commands remotely with Windows? If the server is a Unix box, you could do this: ssh [EMAIL PROTECTED] $CATALINA_HOME/bin/catalina.sh stop or even this: ssh [EMAIL PROTECTED] echo SHUTDOWN | nc localhost 8005 If Windows doesn't have a way to execute commands remotely, what on earth are you doing using it as a server OS? Greg - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] This e-mail, including any attachments, is a confidential business communication, and may contain information that is confidential, proprietary and/or privileged. This e-mail is intended only for the individual(s) to whom it is addressed, and may not be saved, copied, printed, disclosed or used by anyone else. If you are not the(an) intended recipient, please immediately delete this e-mail from your computer system and notify the sender. Thank you. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL
Re: cannot log from a load-on-startup servlet in init()
class threw an exception. Going down a little further we find the Caused by error that claims Log4JLogger does not implement Log. This is almost certainly due to having more than one copy of the Log4J classes visible in the class loader hierarchy. Craig Thank you soo much. I was really getting dizzy from hunting around for that for the previous 11 hours :( 2003-09-28 18:44:02 StandardWrapper[/dspc:DspcAxisServlet]: Marking servlet DspcAxisServlet as unavailable 2003-09-28 18:44:02 StandardContext[/dspc]: Servlet /dspc threw load() exception javax.servlet.ServletException: Error instantiating servlet class net.dspc.server.AxisServletPlus at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:9 1 2) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:823) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java : 3421) at org.apache.catalina.core.StandardContext.start(StandardContext.java:3609) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188) at org.apache.catalina.core.StandardHost.start(StandardHost.java:738) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:347) at org.apache.catalina.core.StandardService.start(StandardService.java:497) at org.apache.catalina.core.StandardServer.start(StandardServer.java:2190) at org.apache.catalina.startup.CatalinaService.start(CatalinaService.java:273) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:3 9 ) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImp l .java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.catalina.startup.BootstrapService.start(BootstrapService.java:24 5 ) at org.apache.catalina.startup.BootstrapService.main(BootstrapService.java:307 ) - Root Cause - java.lang.ExceptionInInitializerError at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcce s sorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstru c torAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:274) at java.lang.Class.newInstance0(Class.java:308) at java.lang.Class.newInstance(Class.java:261) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:9 0 3) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:823) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java : 3421) at org.apache.catalina.core.StandardContext.start(StandardContext.java:3609) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188) at org.apache.catalina.core.StandardHost.start(StandardHost.java:738) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:347) at org.apache.catalina.core.StandardService.start(StandardService.java:497) at org.apache.catalina.core.StandardServer.start(StandardServer.java:2190) at org.apache.catalina.startup.CatalinaService.start(CatalinaService.java:273) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:3 9 ) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImp l .java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.catalina.startup.BootstrapService.start(BootstrapService.java:24 5 ) at org.apache.catalina.startup.BootstrapService.main(BootstrapService.java:307 ) Caused by: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: Class org.apache.commons.logging.impl.Log4JLogger does not implement Log at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.j a va:532) at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.j a va:272) at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:414) at org.apache.axis.components.logger.LogFactory.getLog(LogFactory.java:76) at org.apache.axis.transport.http.AxisServletBase.clinit(AxisServletBase.jav a :94) ... 23 more Caused by: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: Class org.apache.commons.logging.impl.Log4JLogger does not implement Log at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactory I mpl.java:416) at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.j a va:525) ... 27 more Caused by:
web.xml validator
Do someone know a URL for a site that will validate a web.xml file against the webapp DTD ? Apparently there is an error in this webapp block, but damned if I can find it :( web-app display-namedspc Management/display-name description SOAP interface to dspc Management on the originating server. Also supports a simple availability html servlet. /description servlet servlet-nameSystemHealthServlet/servlet-name display-nameSystem Health servlet for dspc monitor/display-name servlet-classnet.dspc.server.SystemHealthServlet/servlet-class /servlet servlet servlet-nameDspcAxisServlet/servlet-name display-nameApache-Axis Servlet for dspc/display-name servlet-classnet.dspc.server.AxisServletPlus/servlet-class load-on-startup50/load-on-startup !-- init-param param-nameaxis.ServerConfigFile/param-name param-valuec:/dev/dspc/dspcservice/WEB-INF/server-config.wsdd/param-value /init-param init-param param-namelog4j-init-file/param-name param-valuec:/dev/dspc/dspcservice/WEB-INF/log4j.properties/param-value /init-param -- /servlet servlet servlet-nameAdminServlet/servlet-name display-nameAxis Admin Servlet/display-name servlet-classorg.apache.axis.transport.http.AdminServlet/servlet-class load-on-startup100/load-on-startup /servlet servlet servlet-nameSOAPMonitorService/servlet-name display-nameSOAPMonitorService/display-name servlet-classorg.apache.axis.monitor.SOAPMonitorService/servlet-class init-param param-nameSOAPMonitorPort/param-name param-value8071/param-value /init-param load-on-startup100/load-on-startup /servlet servlet-mapping servlet-nameSystemHealthServlet/servlet-name url-pattern/health/url-pattern /servlet-mapping servlet-mapping servlet-nameDspcAxisServlet/servlet-name url-pattern/servlet/AxisServlet/url-pattern /servlet-mapping servlet-mapping servlet-nameDspcAxisServlet/servlet-name url-pattern*.jws/url-pattern /servlet-mapping servlet-mapping servlet-nameDspcAxisServlet/servlet-name url-pattern/services/*/url-pattern /servlet-mapping servlet-mapping servlet-nameSOAPMonitorService/servlet-name url-pattern/SOAPMonitor/url-pattern /servlet-mapping servlet-mapping servlet-nameAdminServlet/servlet-name url-pattern/servlet/AdminServlet/url-pattern /servlet-mapping !-- currently the W3C havent settled on a media type for WSDL; http://www.w3.org/TR/2003/WD-wsdl12-20030303/#ietf-draft for now we go with the basic 'it's XML' response -- mime-mapping extensionwsdl/extension mime-typetext/xml/mime-type /mime-mapping mime-mapping extensionxsd/extension mime-typetext/xml/mime-type /mime-mapping session-config session-timeout30/session-timeout /session-config welcome-file-list welcome-fileindex.jsp/welcome-file welcome-fileindex.html/welcome-file welcome-fileindex.htm/welcome-file /welcome-file-list /web-app - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cannot log from a load-on-startup servlet in init()
I am running Axis under Tomcat. Both are the latest versions. I chose to use the log4j that is already in the Tomcat directory. When the Axis servlet loads, I get the following. Where does the issue lie ? 2003-09-28 18:44:02 StandardWrapper[/dspc:DspcAxisServlet]: Marking servlet DspcAxisServlet as unavailable 2003-09-28 18:44:02 StandardContext[/dspc]: Servlet /dspc threw load() exception javax.servlet.ServletException: Error instantiating servlet class net.dspc.server.AxisServletPlus at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:91 2) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:823) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java: 3421) at org.apache.catalina.core.StandardContext.start(StandardContext.java:3609) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188) at org.apache.catalina.core.StandardHost.start(StandardHost.java:738) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:347) at org.apache.catalina.core.StandardService.start(StandardService.java:497) at org.apache.catalina.core.StandardServer.start(StandardServer.java:2190) at org.apache.catalina.startup.CatalinaService.start(CatalinaService.java:273) 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.BootstrapService.start(BootstrapService.java:245 ) at org.apache.catalina.startup.BootstrapService.main(BootstrapService.java:307) - Root Cause - java.lang.ExceptionInInitializerError at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcces sorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstruc torAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:274) at java.lang.Class.newInstance0(Class.java:308) at java.lang.Class.newInstance(Class.java:261) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:90 3) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:823) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java: 3421) at org.apache.catalina.core.StandardContext.start(StandardContext.java:3609) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188) at org.apache.catalina.core.StandardHost.start(StandardHost.java:738) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:347) at org.apache.catalina.core.StandardService.start(StandardService.java:497) at org.apache.catalina.core.StandardServer.start(StandardServer.java:2190) at org.apache.catalina.startup.CatalinaService.start(CatalinaService.java:273) 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.BootstrapService.start(BootstrapService.java:245 ) at org.apache.catalina.startup.BootstrapService.main(BootstrapService.java:307) Caused by: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: Class org.apache.commons.logging.impl.Log4JLogger does not implement Log at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.ja va:532) at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.ja va:272) at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:414) at org.apache.axis.components.logger.LogFactory.getLog(LogFactory.java:76) at org.apache.axis.transport.http.AxisServletBase.clinit(AxisServletBase.java :94) ... 23 more Caused by: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: Class org.apache.commons.logging.impl.Log4JLogger does not implement Log at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryI mpl.java:416) at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.ja va:525) ... 27 more Caused by: org.apache.commons.logging.LogConfigurationException: Class org.apache.commons.logging.impl.Log4JLogger does not implement Log at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryI mpl.java:412) ... 28 more - To
Servlet.destroy but not init called when context is reloaded
BusinessBluprints letterI have to admit that I am quite baffled. Hopefully someone can point me in the right direction, so I can find out what is going wrong. My overall setup is a Servlet front calling a WebService backend. The whole thing runs on the same Tomcat server under Win2k. I have combined Tomcat and Axis according to descriptions, and have been using it for a while without any problems. So it probably isnt in the Axis department I should look. If I restart the Tomcat service and make one request to the servlet it correctly calls the webservice, receives a reply, and formats it into a nice HTML reply. I can go on making that exact same HTTP request and I will get the same HTML result, with no apparent failures in the logs. Now, if I make a slightly different servlet request (that would normally succeed) the context is reloaded calling destroy() but not init() on the servlet, which subsequently fails because I rely on init being called before doGet(..). To make matters even more confusing, it makes no difference if I reload the Tomcat service. On the next request the context will be reloaded and call destroy() but no init(). Looking at the log this weird behaviour seems to start after init() threw an exception. I did restart the Tomcat service, but the somehow the server kept malfunctioning from this point onwards. Can the init() somehow be disabled, so it wont be called on future reloads ? Is this 1) an issue with garbage collection order 2) some JRE problem, that persists across Tomcat reloads 3) Potentially a Tomcat bug 4) Me being stupid ? looking at the log, there might be a 5th possibility relating to Axis being being busy starting, resulting in a socket timeout that leaves the communication in an unstable state, does that sound plausible ? Rather than waste your time by pasting a 1000 lines from the logfile. My question is simply : what is the most likely cause of my problem ? Environment : Tomcat 4.1.27 Axis 1.1 J2SDK 1.4.2 Thanks for your time, Henrik Vendelbo - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]