Jetty 7 + MySQL Config
我一直在尝试为Jetty配置一个c3p0数据库连接池,但我一直得到一个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)
我是Jetty的新手,我想最终通过Quercus和JDBC连接获得phpMyAdmin和WordPress。 这是我的WEB-INF目录中的web.xml和jetty-web.xml文件。
docker-web.xml中:
jdbc/mysql jdbc:mysql://localhost:3306/mysql user pw
web.xml中:
Caucho Technology's PHP Implementation My DataSource Reference jdbc/mysql javax.sql.DataSource Container Quercus Servlet com.caucho.quercus.servlet.QuercusServlet script-encoding UTF-8 database jdbc/mysql ini-file WEB-INF/php.ini Quercus Servlet *.php index.php
我猜我错过了几个jar子什么的。 目前我已将以下jar放在WEB-INF / lib目录中:
c3p0-0.9.1.2.jar
公地DBCP-1.4.jar
commons-pool的-1.5.4.jar
MySQL的连接器的Java-5.1.12-bin.jar
我也尝试将这些jar放在JETTY-HOME / lib / ext中,但无济于事……有人请告诉我配置有什么问题。 我厌倦了挖掘Jetty蹩脚的文档。
从Jetty 7开始,Jetty已成为Eclipse Foundation的一个项目。 在Jetty 6迁移到Eclipse Jetty 7期间,采用了新的包结构(参见Jetty 7 Refactoring页面):
- 来自
org.mortbay.jetty.webapp
类现在位于org.eclipse.jetty.webapp
- 来自
org.mortbay.jetty.plus.naming
类现在位于org.eclipse.jetty.plus.jndi
所以尝试使用以下jetty-web.xml
(未测试):
jdbc/mysql jdbc:mysql://localhost:3306/mysql user pw
但是如果你不需要Jetty 7的花哨的东西,我的建议是坚持Jetty 6(更稳定,更多的文档,更多的互联网资源,更简单的等等,换句话说,更少的痛苦)。
我现在配置工作了。 我正在为Jetty 7发布更正后的jetty-web.xml。
jdbc/mysql com.mysql.jdbc.Driver jdbc:mysql://localhost:3306/mysql user pw
使用WEB-INF / lib中的以下jar
c3p0-0.9.1.2.jar
公地DBCP-1.4.jar
commons-pool的-1.5.4.jar
MySQL的连接器的Java-5.1.12-bin.jar
检查以确保OLD jetty-env.xml
不在您的类路径中 – 在jetty 6中, jetty-env.xml
开头: