Return-Path: X-Original-To: apmail-tomcat-users-archive@www.apache.org Delivered-To: apmail-tomcat-users-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 5586C4C57 for ; Fri, 10 Jun 2011 08:39:13 +0000 (UTC) Received: (qmail 64312 invoked by uid 500); 10 Jun 2011 08:39:09 -0000 Delivered-To: apmail-tomcat-users-archive@tomcat.apache.org Received: (qmail 64250 invoked by uid 500); 10 Jun 2011 08:39:09 -0000 Mailing-List: contact users-help@tomcat.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Tomcat Users List" Delivered-To: mailing list users@tomcat.apache.org Received: (qmail 64237 invoked by uid 99); 10 Jun 2011 08:39:09 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 10 Jun 2011 08:39:09 +0000 X-ASF-Spam-Status: No, hits=2.2 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of pguillot@genigraph.fr designates 213.186.62.10 as permitted sender) Received: from [213.186.62.10] (HELO 31.mail-out.ovh.net) (213.186.62.10) by apache.org (qpsmtpd/0.29) with SMTP; Fri, 10 Jun 2011 08:39:02 +0000 Received: (qmail 21569 invoked by uid 503); 10 Jun 2011 09:38:44 -0000 Received: from b9.ovh.net (HELO mail171.ha.ovh.net) (213.186.33.59) by 31.mail-out.ovh.net with SMTP; 10 Jun 2011 09:38:43 -0000 Received: from b0.ovh.net (HELO queueout) (213.186.33.50) by b0.ovh.net with SMTP; 10 Jun 2011 10:38:38 +0200 Received: from lcy44-1-82-229-124-224.fbx.proxad.net (HELO Galathee7) (pguillot@genigraph.fr@82.229.124.224) by ns0.ovh.net with SMTP; 10 Jun 2011 10:38:26 +0200 From: "Patrick Guillot - Genigraph" To: "Tomcat Users List" References: In-Reply-To: Subject: RE: Classpath issue *only* when starting tomcat 6 as a service Date: Fri, 10 Jun 2011 10:38:20 +0200 Organization: Genigraph Message-ID: <003601cc2749$c20512b0$460f3810$@genigraph.fr> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_NextPart_000_0037_01CC275A.859339E0" X-Mailer: Microsoft Outlook 14.0 Thread-Index: AcwnQKrLIdK0MSahSEOZOPpZv4s+9QACPtGg Content-Language: fr X-Ovh-Tracer-Id: 15565003263908039649 X-Ovh-Remote: 82.229.124.224 (lcy44-1-82-229-124-224.fbx.proxad.net) X-Ovh-Local: 213.186.33.20 (ns0.ovh.net) X-Spam-Check: DONE|U 0.5/N ------=_NextPart_000_0037_01CC275A.859339E0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi everybody, =20 I=92m driving mad with a classpath issue :=20 =20 My environment :=20 - Tomcat 6.0.29 - Windows Server 2008 R2 Standard 64 bits - JDK 1.5.0_22 =20 My webapp is using Waffle (Windows Authentication Framework) (http://waffle.codeplex.com/) to benefit from transparent = authentication. =20 It is working just fine when tomcat is started in console mode. But = console mode is not suitable for production use. Therefore, I set-up Tomcat 6 as a service (http://tomcat.apache.org/tomcat-6.0-doc/windows-service-howto.html). =20 In this mode, tomcat does not start properly and I get a classpath error = : java.lang.NoClassDefFoundError: org/apache/catalina/authenticator/AuthenticatorBase If not using Waffle, the service mode is working fine as well. AuthenticatorBase is used by Waffle. =20 I found that this class is located =93catalina.jar=94. =93Catalina.jar=94 is located in D:\tomcat\lib\ (catalina.home\lib). So, I do have the right jar and it contains the right class (which again = is found by tomcat when started in console mode). =20 My guess was I had a service configuration error : I checked everything = and can=92t find any error =96 which does not mean there is no error ! ;-) Here is the service configuration logged by tomcat :=20 =20 Jvm Option[0] -Djava.class.path=3DD:\tomcat\bin\tomcat-juli.jar;D:\tomcat\bin\bootstrap= .jar; D:\tomcat\lib\annotations-api.jar;D:\tomcat\lib\catalina-ant.jar;D:\tomca= t\l ib\catalina-ha.jar;D:\tomcat\lib\catalina-tribes.jar;D:\tomcat\lib\catali= na. jar;D:\tomcat\lib\el-api.jar;D:\tomcat\lib\jasper-el.jar;D:\tomcat\lib\ja= spe r-jdt.jar;D:\tomcat\lib\jasper.jar;D:\tomcat\lib\jsp-api.jar;D:\tomcat\li= b\s ervlet-api.jar;D:\tomcat\lib\tomcat-coyote.jar;D:\tomcat\lib\tomcat-dbcp.= jar ;D:\tomcat\lib\tomcat-i18n-es.jar;D:\tomcat\lib\tomcat-i18n-fr.jar;D:\tom= cat \lib\tomcat-i18n-ja.jar;D:\tomcat\lib\jna.jar;D:\tomcat\lib\platform.jar;= D:\ tomcat\lib\waffle-jna.jar;D:\tomcat\lib\commons-logging-1.1.1.jar Jvm Option[1] -Dcatalina.home=3DD:\tomcat Jvm Option[2] -Dcatalina.base=3DD:\tomcat\instances\06_crlj Jvm Option[3] -Djava.endorsed.dirs=3DD:\tomcat\endorsed Jvm Option[4] -Djava.io.tmpdir=3DD:\tomcat\instances\06_crlj\temp Jvm Option[5] -Djava.util.logging.manager=3Dorg.apache.juli.ClassLoaderLogManager Jvm Option[6] -Djava.util.logging.config.file=3DD:\tomcat\instances\06_crlj\conf\loggin= g.pro perties Jvm Option[7] -XX:MaxPermSize=3D256M Jvm Option[8] -Djava.class.path=3DD:\tomcat\bin\tomcat-juli.jar;D:\tomcat\bin\bootstrap= .jar; D:\tomcat\lib\annotations-api.jar;D:\tomcat\lib\catalina-ant.jar;D:\tomca= t\l ib\catalina-ha.jar;D:\tomcat\lib\catalina-tribes.jar;D:\tomcat\lib\catali= na. jar;D:\tomcat\lib\el-api.jar;D:\tomcat\lib\jasper-el.jar;D:\tomcat\lib\ja= spe r-jdt.jar;D:\tomcat\lib\jasper.jar;D:\tomcat\lib\jsp-api.jar;D:\tomcat\li= b\s ervlet-api.jar;D:\tomcat\lib\tomcat-coyote.jar;D:\tomcat\lib\tomcat-dbcp.= jar ;D:\tomcat\lib\tomcat-i18n-es.jar;D:\tomcat\lib\tomcat-i18n-fr.jar;D:\tom= cat \lib\tomcat-i18n-ja.jar;D:\tomcat\lib\jna.jar;D:\tomcat\lib\platform.jar;= D:\ tomcat\lib\waffle-jna.jar;D:\tomcat\lib\commons-logging-1.1.1.jar Jvm Option[9] vfprintf Jvm Option[10] -Xms256m Jvm Option[11] -Xmx512m =20 As you can see : java.class.path do include =93catalina.jar=94. =20 I tried copying around catalina.jar and waffle libs around (lib dirs., endorsed dirs., etc.), but no luck. =20 Thanks in advance for any help you can provide. =20 Kin regards, =20 Patrick Guillot Genigraph pguillot@genigraph.fr =20 Full stack trace ------------------ INFO: D=E9ploiement du descripteur de configuration waffle-mixed.xml 10 juin 2011 09:24:35 org.apache.tomcat.util.digester.Digester = startElement GRAVE: Begin event threw error java.lang.NoClassDefFoundError: org/apache/catalina/authenticator/AuthenticatorBase at java.lang.ClassLoader.findBootstrapClass(Native = Method) at java.lang.ClassLoader.findBootstrapClass0(ClassLoader.java:892) at java.lang.ClassLoader.loadClass(ClassLoader.java:302) at java.lang.ClassLoader.loadClass(ClassLoader.java:300) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at org.apache.tomcat.util.digester.ObjectCreateRule.begin(ObjectCreateRule.j= ava :205) at = org.apache.tomcat.util.digester.Rule.begin(Rule.java:153) at org.apache.tomcat.util.digester.Digester.startElement(Digester.java:1356)= at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement= (Ab stractSAXParser.java:533) at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.empt= yEl ement(AbstractXMLDocumentParser.java:220) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.sc= anS tartElement(XMLDocumentFragmentScannerImpl.java:872) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$Fr= agm entContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1693) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.sc= anD ocument(XMLDocumentFragmentScannerImpl.java:368) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11= Con figuration.java:834) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11= Con figuration.java:764) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java= :14 8) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Abstra= ctS AXParser.java:1242) at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1642) at org.apache.catalina.startup.ContextConfig.processContextConfig(ContextCon= fig .java:793) at org.apache.catalina.startup.ContextConfig.contextConfig(ContextConfig.jav= a:7 36) at org.apache.catalina.startup.ContextConfig.init(ContextConfig.java:1018) at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.ja= va: 279) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSup= por t.java:119) at org.apache.catalina.core.StandardContext.init(StandardContext.java:5602) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4378)= at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.jav= a:7 91) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546) at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:6= 37) at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:= 563 ) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:498) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321= ) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSup= por t.java:119) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) at org.apache.catalina.core.StandardHost.start(StandardHost.java:785) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445) at org.apache.catalina.core.StandardService.start(StandardService.java:519) at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) at org.apache.catalina.startup.Catalina.start(Catalina.java:581) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java= :39 ) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorI= mpl .java:25) at java.lang.reflect.Method.invoke(Method.java:592) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) ------=_NextPart_000_0037_01CC275A.859339E0--