Hello:
My
basic configuration is:
Jetty
7.0.1+MySQL 5.1+ c3p0-0.9.1.2(all xml configuration files and source code to
call connection are posted blow)
And start
Jetty with:
1, java -jar
start.jar
But when running it,I got following error
message,and them question is:
1,should I start jetty with jettyplus and
how to do it,is it like this command:
java -DOPTIONS=plus -jar start.jar
I hava read this post:
http://jetty.mortbay.org/jetty5/plus/index.html
But,apparently,this post is for old jetty realse,and too simply.
2,should I drop c3p0-0.9.1.2.jar into to directory
..\WEB-INF\lib,if yes,I got this error message
2009-12-23
09:50:56.906:WARN::Failed startup of context
WebAppContext@2eef15@2eef15/war,file:/E:/Software/Jetty/je
jetty-hightide-7.0.1.v20091125/webapps/war/
java.io.EOFException: Unexpected end of ZLIB input stream
at
java.util.zip.InflaterInputStream.fill(Unknown Source)
at
java.util.zip.InflaterInputStream.read(Unknown Source)
at
java.util.zip.ZipInputStream.read(Unknown Source)
at
java.util.jar.JarInputStream.read(Unknown Source)
at
java.util.zip.ZipInputStream.closeEntry(Unknown Source)
at
java.util.zip.ZipInputStream.getNextEntry(Unknown Source)
at
java.util.jar.JarInputStream.getNextEntry(Unknown Source)
at
java.util.jar.JarInputStream.getNextJarEntry(Unknown Source)
at
org.eclipse.jetty.webapp.JarScanner.matched(JarScanner.java:153)
at
org.eclipse.jetty.util.PatternMatcher.matchPatterns(PatternMatcher.java:82)
at
org.eclipse.jetty.util.PatternMatcher.match(PatternMatcher.java:64)
at
org.eclipse.jetty.webapp.JarScanner.scan(JarScanner.java:75)
at
org.eclipse.jetty.webapp.MetaInfConfiguration.preConfigure(MetaInfConfiguration.java:76)
at
org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:347)
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(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at
java.lang.reflect.Method.invoke(Unknown Source)
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)
Can you guys tell me
what’s worry with these configurations,thank you.
Web.xml is:
---------------------------------------------------------------------------
<web-app>
<!-- Servlets -->
<servlet>
<servlet-name>greetServlet</servlet-name>
<servlet-class>com.ts.crm.connectpool.server.GreetingServiceImpl</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>greetServlet</servlet-name>
<url-pattern>/connetionpool/greet</url-pattern>
</servlet-mapping>
<!-- Default page to serve
-->
<welcome-file-list>
<welcome-file>ConnetionPool.html</welcome-file>
</welcome-file-list>
<resource-ref>
<description>datasource</description>
<res-ref-name>jdbc/mysql</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
Jetty-env.xml is
------------------------------------------------------------------------------------------
<New id="mysql"
class="org.eclipse.jetty.plus.jndi.Resource">
<Arg></Arg>
<Arg>java:comp/env/jdbc/mysql</Arg>
<Arg>
<New class="com.mchange.v2.c3p0.ComboPooledDataSource">
<Set name="driverClass">com.mysql.jdbc.Driver</Set>
<Set name="jdbcUrl">jdbc:mysql://localhost:3306/tscrm</Set>
<Set name="user">root</Set>
<Set name="password">1234567</Set>
</New>
</Arg>
</New>
Java cod to use connection pool is
-----------------------------------------------------------------
String name="failed";
try
{
InitialContext ctx = new InitialContext();
DataSource ds = (DataSource) ctx
.lookup("java:comp/env/jdbc/mysql");
Connection conn = null;
Statement stmt = null;
try
{
conn = ds.getConnection();
stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM User");
while (rs.next())
{
name=rs.getString("name");
}
stmt.close();
stmt = null;
conn.close();
conn = null;
} finally
{
if (stmt != null)
{
try
{
stmt.close();
} catch (SQLException
sqlex)
{
//
ignore -- as we can't do anything about it here
}
stmt = null;
}
if (conn != null)
{
try
{
conn.close();
} catch (SQLException
sqlex)
{
//
ignore -- as we can't do anything about it here
}
conn = null;
}
}
} catch (Exception e)
{
e.printStackTrace();
}
-------------------------------------------------------------------------------------------------------------------------------------------------
javax.naming.NameNotFoundException; remaining name
'env/jdbc/mysql'
at
org.eclipse.jetty.jndi.NamingContext.lookup(NamingContext.java:632)
at
org.eclipse.jetty.jndi.NamingContext.lookup(NamingContext.java:663)
at
org.eclipse.jetty.jndi.NamingContext.lookup(NamingContext.java:678)
at
org.eclipse.jetty.jndi.java.javaRootURLContext.lookup(javaRootURLContext.java:110)
at
javax.naming.InitialContext.lookup(Unknown Source)
at
com.ts.crm.connectpool.server.GreetingServiceImpl.greetServer(GreetingServiceImpl.java:29)
at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)
at
java.lang.reflect.Method.invoke(Unknown Source)
at
com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:562)
at
com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:188)
at
com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:224)
at
com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at
org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:530)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:427)
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:457)
at
org.eclipse.jetty.server.session.SessionHandler.handle(SessionHandler.java:182)
at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:933)
at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:362)
at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:867)
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:245)
at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:113)
at
org.eclipse.jetty.server.Server.handle(Server.java:334)
at
org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:559)
at
org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:1007)
at
org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:747)
at
org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:209)
at
org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:406)
at
org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:462)
at
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:436)
at
java.lang.Thread.run(Unknown Source)