Re: Marking servlet ... as unavailable
Hi Joe, the problem is, that the UnavailableException is buggy in some tomcat versions. If thrown, tomcat will set the servlet as unavailable but won't print the exception message. Use the newest tomcat-version. Or change all UnavailableException to ServletException, so you will see the exception message. But in this case don't forget that tomcat won't set the servlet as unavailable. regards, Philipp I could be wrong, but it appeared that when the Servlet was flagged as unavailable, that THAT would cause a series of other problems which the stackTrace() showed, not what actually caused it to be flagged as unavailable. If you're right, that it was flagged outside of Tomcat, than there isn't anything more to show about the problem, but this: Mar 4, 2007 12:11:22 PM org.apache.catalina.core.ApplicationContext log INFO: Marking servlet ClientWMIClassesServlet as unavailable seemed to say that catalina flagged it, at least that's what I thought.. I tried switching from compiling with jikes to going back to javac, deleting and reinstalling Java and several other things. It wasn't an easy thing to "fix". Whatever it didn't like is commented out, and I still have to resolve that. Thanks, Joe Siebenmann -- Your logs stated: SEVERE: Allocate exception for servlet ClientWMIClassesServlet java.lang.VerifyError: (class: com/jps/NetMgt/ClientWMIClassesServlet, method: doGet signature: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V) Incompatible argument to function at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2357) at java.lang.Class.getConstructor0(Class.java:2671) at java.lang.Class.newInstance0(Class.java:321) at java.lang.Class.newInstance(Class.java:303) I am not sure what additionnal informations you would like tomcat to provide. This error occured while creating an instance of servlet. This exception comes from the inside of java.lang over which tomcat has no control. Apart from the exception message it showed you in stdout, tomcat has no more informations to provide you with. Side note, Subclasses of |LinkageError| indicate that a class has some dependency on another class; however, the latter class has incompatibly changed after the compilation of the former class. It could be in your case your compiler got crazy, your .class got truncated or altered during transfert. Probably just a clean and rebuild is enough to solve it. Mar 4, 2007 12:11:22 PM org.apache.catalina.core.ApplicationContext log INFO: Marking servlet ClientWMIClassesServlet as unavailable Mar 4, 2007 12:11:22 PM org.apache.catalina.core.ApplicationDispatcher invoke SEVERE: Allocate exception for servlet ClientWMIClassesServlet java.lang.VerifyError: (class: com/jps/NetMgt/ClientWMIClassesServlet, method: doGet signature: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V) Incompatible argument to function at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2357) at java.lang.Class.getConstructor0(Class.java:2671) at java.lang.Class.newInstance0(Class.java:321) at java.lang.Class.newInstance(Class.java:303) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1055) at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:757) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:641) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301) at com.jps.NetMgt.ClientWMIServlet.doGet(Unknown Source) at com.jps.NetMgt.ClientWMIServlet.doPost(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
Re: Marking servlet [] as unavailable, again...
On Sunday 25 March 2007 02:44, Martin Gainty wrote: > Simon- > > something is happening to interfere with the successful completion of > init() method of your Servlet such as cannot find classes such as > 'uk.co.weft.exceptionhandler.BugzillaExceptionHandler' > or one of the init-param in web.xml could be incorrectly spelled or > not there put in log.debug or System,out.println() statements every > other statement in your init method so you can see each line being > executed in your init() Was the right answer, thanks! -- Simon Brooke:: [EMAIL PROTECTED] :: http://www.weft.co.uk/ Simon Brooke trading as The Web Engineering Factory and Toolworks. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Marking servlet [] as unavailable, again...
Simon- something is happening to interfere with the successful completion of init() method of your Servlet such as cannot find classes such as 'uk.co.weft.exceptionhandler.BugzillaExceptionHandler' or one of the init-param in web.xml could be incorrectly spelled or not there put in log.debug or System,out.println() statements every other statement in your init method so you can see each line being executed in your init() HTH, M-- --- This e-mail message (including attachments, if any) is intended for the use of the individual or entity to which it is addressed and may contain information that is privileged, proprietary , confidential and exempt from disclosure. If you are not the intended recipient, you are notified that any dissemination, distribution or copying of this communication is strictly prohibited. --- Le présent message électronique (y compris les pièces qui y sont annexées, le cas échéant) s'adresse au destinataire indiqué et peut contenir des renseignements de caractère privé ou confidentiel. Si vous n'êtes pas le destinataire de ce document, nous vous signalons qu'il est strictement interdit de le diffuser, de le distribuer ou de le reproduire. - Original Message - From: "Simon Brooke" <[EMAIL PROTECTED]> To: Sent: Saturday, March 24, 2007 11:28 AM Subject: Marking servlet [] as unavailable, again... > Yes, I've read through previous threads on this subject; I haven't found > anything which helps me. > > Recently I've had a spate of unexplained 'Marking servlet [] as > unavailable' issues on my development server. It is a development > server, and so, of course, all the servlets on it are pretty much in > development; but the tomcat version is Debian's packaging of tomcat5, > package version 5.0.30-12, and has been installed 'out of the box' with > the only special configuration I've done to set > > JAVA_HOME=/opt/ibm-java2-i386-50 > TOMCAT5_SECURITY=no > > in /etc/default/tomcat5. No change has been made to the install since > 2006-05-15, and the 'Marking ... as unavailable' issue has only started > recently. > > what I'm getting in the localhost log is just: > > 2007-03-24 14:36:51 StandardContext[/pres]Marking servlet news as > unavailable > > What I'm getting in the catalina log is nothing relevant at all. My > webapp starts: > > 24-Mar-2007 14:36:27 org.apache.catalina.core.StandardHostDeployer > install > INFO: Installing web application at context path /pres from URL > file:/var/lib/tomcat5/webapps/pres > > Then my servlet starts to initialise itself: > > 24-Mar-2007 14:36:29 org.apache.catalina.startup.Catalina start > INFO: Server startup in 9479 ms > Will parse category article from pathinfo > Looking for class 'uk.co.weft.exceptionhandler.BugzillaExceptionHandler' > Looking for class 'uk.co.weft.pres.server.PrimitiveGenerator' > > And then - nothing at all. > > Nothing whatever is printed to catalina.out. > > I should say this does not affect the majority of my servlets; the > majority of the servlets in this webapp work perfectly. It's a minority > of servlets that are affected, and I suspect that the problem may be > dependency on Xerces; but without more diagnostics it's hard to be > certain. > > What I need to know is how to configure Tomcat so that it will print an > exception dump somewhere when it is marking things as unavailable. > > Thanks > > Simon > > -- > Simon Brooke :: [EMAIL PROTECTED] :: http://www.weft.co.uk/ > > Simon Brooke trading as The Web Engineering Factory and Toolworks. > > - > To start a new topic, e-mail: users@tomcat.apache.org > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >
Re: Marking servlet ... as unavailable
I could be wrong, but it appeared that when the Servlet was flagged as unavailable, that THAT would cause a series of other problems which the stackTrace() showed, not what actually caused it to be flagged as unavailable. If you're right, that it was flagged outside of Tomcat, than there isn't anything more to show about the problem, but this: Mar 4, 2007 12:11:22 PM org.apache.catalina.core.ApplicationContext log INFO: Marking servlet ClientWMIClassesServlet as unavailable seemed to say that catalina flagged it, at least that's what I thought.. I tried switching from compiling with jikes to going back to javac, deleting and reinstalling Java and several other things. It wasn't an easy thing to "fix". Whatever it didn't like is commented out, and I still have to resolve that. Thanks, Joe Siebenmann -- Your logs stated: SEVERE: Allocate exception for servlet ClientWMIClassesServlet java.lang.VerifyError: (class: com/jps/NetMgt/ClientWMIClassesServlet, method: doGet signature: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V) Incompatible argument to function at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2357) at java.lang.Class.getConstructor0(Class.java:2671) at java.lang.Class.newInstance0(Class.java:321) at java.lang.Class.newInstance(Class.java:303) I am not sure what additionnal informations you would like tomcat to provide. This error occured while creating an instance of servlet. This exception comes from the inside of java.lang over which tomcat has no control. Apart from the exception message it showed you in stdout, tomcat has no more informations to provide you with. Side note, Subclasses of |LinkageError| indicate that a class has some dependency on another class; however, the latter class has incompatibly changed after the compilation of the former class. It could be in your case your compiler got crazy, your .class got truncated or altered during transfert. Probably just a clean and rebuild is enough to solve it. Mar 4, 2007 12:11:22 PM org.apache.catalina.core.ApplicationContext log INFO: Marking servlet ClientWMIClassesServlet as unavailable Mar 4, 2007 12:11:22 PM org.apache.catalina.core.ApplicationDispatcher invoke SEVERE: Allocate exception for servlet ClientWMIClassesServlet java.lang.VerifyError: (class: com/jps/NetMgt/ClientWMIClassesServlet, method: doGet signature: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V) Incompatible argument to function at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2357) at java.lang.Class.getConstructor0(Class.java:2671) at java.lang.Class.newInstance0(Class.java:321) at java.lang.Class.newInstance(Class.java:303) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1055) at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:757) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:641) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301) at com.jps.NetMgt.ClientWMIServlet.doGet(Unknown Source) at com.jps.NetMgt.ClientWMIServlet.doPost(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at o
Re: Marking servlet ... as unavailable
En l'instant précis du 04/03/07 22:27, Joe Siebenmann s'exprimait en ces termes: > > It would be nice if there was some better information available > as to what it "didn't like" for it to flag it as "unavailable". > Nothing of any value was in any of the log files. > You logs stated: SEVERE: Allocate exception for servlet ClientWMIClassesServlet java.lang.VerifyError: (class: com/jps/NetMgt/ClientWMIClassesServlet, method: doGet signature: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V) Incompatible argument to function at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2357) at java.lang.Class.getConstructor0(Class.java:2671) at java.lang.Class.newInstance0(Class.java:321) at java.lang.Class.newInstance(Class.java:303) I am not sure what additionnal informations you would like tomcat to provide. This error occured while creating an instance of servlet. This exception comes from the inside of java.lang over which tomcat has no control. Apart from the exception message it showed you in stdout, tomcat has no more informations to provide you with. Side note, Subclasses of |LinkageError| indicate that a class has some dependency on another class; however, the latter class has incompatibly changed after the compilation of the former class. It could be in your case your compiler got crazy, your .class got truncated or altered during transfert. Probably just a clean and rebuild is enough to solve it. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Marking servlet ... as unavailable
Hi All, I was at least able to get the Servlet that was "unavailable" to finally show up. This has been one of the most frustrating things I've come across.. :-\ I figured that something was happening in the Servlet before the Servlet that was being flagged as "unavailable", so I commented out most of the code in that Servlet, and stripped it down to a bare minimum. The Servlet that was formally "unavailable" finally showed up. :-) So at least I can keep on developing, and later I'll have to go back and slowly add back piece by piece until it hits whatever it "didn't like" to flag it as "unavailable". It would be nice if there was some better information available as to what it "didn't like" for it to flag it as "unavailable". Nothing of any value was in any of the log files. Thanks, Joe Siebenmann --- On Sun 03/04, Joe Siebenmann < [EMAIL PROTECTED] > wrote: From: Joe Siebenmann [mailto: [EMAIL PROTECTED] To: users@tomcat.apache.org Date: Sun, 4 Mar 2007 09:58:49 -0500 (EST) Subject: Marking servlet ... as unavailable Hi All,I've hit this problem and my development has come to ascreeching halt. :-\I'm using Tomcat 5.5.17 with a JDK/JRE of 1.5.0_11on a Windows XP Pro SP2 system.In my Servlets I use:RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/servlet/BlahServlet");if ( dispatcher != null )dispatcher.forward(req, res);to "transfer control" from one Servlet to the next, and afterseveral of these it finally gets this Exception when it getsto the doGet() of the next Servlet:Mar 4, 2007 9:19:04 AM org.apache.catalina.core.ApplicationContext logINFO: Marking servlet ClientWMIClassesServlet as unavailableMar 4, 2007 9:19:04 AM org.apache.catalina.core.ApplicationDispatcher invokeSEVERE: Allocate exception for servlet ClientWMIClassesServletjava.lang.VerifyError: (class: com/jps/NetMgt/ClientWMIClassesServlet, method: doGet signature: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V) Incompatible argument to function at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2357) at java.lang.Class.getConstructor0(Class.java:2671) at java.lang.Class.newInstance0(Class.java:321) at java.lang.Class.newInstance(Class.java:303) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1055) at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:757) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:641) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301) at com.jps.NetMgt.ClientWMIServlet.doGet(Unknown Source)at com.jps.NetMgt.ClientWMIServlet.doPost(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:595)There aren't any typos, and I've already deleted every JDK and JREon my system and only reinstalled JDK 1.5.0_11, so that therewould be no possible problems of the "compile JVM" being differentthan the JVM Tomcat was running, or any CLASSPATH issues, butI keep getting the Exception. I've also carefully gone oversetclasspath.bat, catalina.bat and service.bat files making surethe paths to Java and JRE, and the CLASSPATHs are correct.I also made sure that the final "RequestDispatcher dispatcher"Object, was valid before I did the forward(). Why is