Jetée 7 + MySQL Config [java.lang.ClassNotFoundException: org.mortbay.la jetée.webapp.WebAppContext]
J'ai essayé d'obtenir un c3p0 db pool de connexion configuré pour Jetty, mais je reçois une ClassNotFoundException:
2010-03-14 19:32:12.028:WARN::Failed startup of context WebAppContext@fccada@fccada/phpMyAdmin,file:/usr/local/jetty/webapps/phpMyAdmin/,file:/usr/local/jetty/webapps/phpMyAdmin/
java.lang.ClassNotFoundException: org.mortbay.jetty.webapp.WebAppContext
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:313)
at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:266)
at org.eclipse.jetty.util.Loader.loadClass(Loader.java:90)
at org.eclipse.jetty.xml.XmlConfiguration.nodeClass(XmlConfiguration.java:224)
at org.eclipse.jetty.xml.XmlConfiguration.configure(XmlConfiguration.java:187)
at org.eclipse.jetty.webapp.JettyWebXmlConfiguration.configure(JettyWebXmlConfiguration.java:77)
at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:975)
at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:586)
at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:349)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:165)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:162)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:165)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:92)
at org.eclipse.jetty.server.Server.doStart(Server.java:228)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:990)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:955)
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:597)
at org.eclipse.jetty.start.Main.invokeMain(Main.java:394)
at org.eclipse.jetty.start.Main.start(Main.java:546)
at org.eclipse.jetty.start.Main.parseCommandLine(Main.java:208)
at org.eclipse.jetty.start.Main.main(Main.java:75)
Je suis nouveau à la Jetée et je veux en fin de compte obtenir phpMyAdmin et WordPress à exécuter par le biais de Quercus et d'une connexion JDBC. Voici mon web.xml et jetty-web.xml fichiers dans mon répertoire WEB-INF.
jetty-web.xml:
<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
<Configure class="org.mortbay.jetty.webapp.WebAppContext">
<New id="mysql" class="org.mortbay.jetty.plus.naming.Resource">
<Arg>jdbc/mysql</Arg>
<Arg>
<New class="com.mchange.v2.c3p0.ComboPooledDataSource">
<Set name="Url">jdbc:mysql://localhost:3306/mysql</Set>
<Set name="User">user</Set>
<Set name="Password">pw</Set>
</New>
</Arg>
</New>
</Configure>
web.xml:
<?xml version="1.0"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
<web-app>
<description>Caucho Technology's PHP Implementation</description>
<resource-ref>
<description>My DataSource Reference</description>
<res-ref-name>jdbc/mysql</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<servlet>
<servlet-name>Quercus Servlet</servlet-name>
<servlet-class>com.caucho.quercus.servlet.QuercusServlet</servlet-class>
<!--
Specifies the encoding Quercus should use to read in PHP scripts.
-->
<init-param>
<param-name>script-encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<!--
Tells Quercus to use the following JDBC database and to ignore the
arguments of mysql_connect().
-->
<init-param>
<param-name>database</param-name>
<param-value>jdbc/mysql</param-value>
</init-param>
<init-param>
<param-name>ini-file</param-name>
<param-value>WEB-INF/php.ini</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Quercus Servlet</servlet-name>
<url-pattern>*.php</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.php</welcome-file>
</welcome-file-list>
</web-app>
Je devine que je vais manquer un peu de pots ou de quelque chose. Actuellement, j'ai mis la suite de pots dans mon WEB-INF/lib:
c3p0-0.9.1.2.jar
communes-dbcp-1.4.jar
communes-pool-1.5.4.jar
mysql-connector-java-5.1.12-bin.jar
J'ai aussi essayé de mettre ces pots dans la JETÉE-HOME/lib/ext, mais en vain... Quelqu'un s'il vous plaît dites-moi quel est le problème avec ma configuration. Je suis malade de creuser par le biais de la Jetée de la merde de la documentation.
OriginalL'auteur Scott Chang | 2010-03-16
Vous devez vous connecter pour publier un commentaire.
De départ avec Jetty 7, la Jetée est devenu un projet de la Fondation Eclipse. Lors de la migration de la Jetée de 6 à Eclipse Jetée 7, une nouvelle structure de paquet a été adopté (voir la La Jetée De 7 Refactoring page):
org.mortbay.jetty.webapp
sont maintenant enorg.eclipse.jetty.webapp
org.mortbay.jetty.plus.naming
sont maintenant enorg.eclipse.jetty.plus.jndi
Donc essayer avec le suivant
jetty-web.xml
(pas testé):Mais si vous n'avez pas besoin de choses de fantaisie à partir de la Jetée de 7, ma suggestion serait de coller avec de la Jetée 6 (plus stable, plus de documentation, de plus de ressources sur Internet, moins compliqué, etc, en d'autres termes, moins de douleur).
OriginalL'auteur Pascal Thivent
J'ai eu la configuration de travailler maintenant. Je poste le corrigé jetty-web.xml pour Jetty 7.
Suivantes avec les pots dans WEB-INF/lib
OriginalL'auteur Scott Chang
assurez-vous que la VIEUX
jetty-env.xml
n'est pas dans votre classpath -Dans la jetée 6 la
jetty-env.xml
commence par ceci:OriginalL'auteur Vladimir Sutskever