a strang problem about Resin database connection pool
I am a beginner,hope somebody can help me.
my web site occured a strange problem after I used the Resin database connection pool instead of
connecting directly
the error message as follows:java.lang.IllegalArgumentException: Request cannot benull
at javax.servlet.ServletRequestWrapper.<init>(ServletRequestWrapper.java:100)
at javax.servlet.http.HttpServletRequestWrapper.<init>(HttpServletRequestWrapper.java:92)
at com.caucho.server.connection.RequestAdapter.<init>(RequestAdapter.java:96)
at com.caucho.server.webapp.DispatchRequest.<init>(DispatchRequest.java:97)
at com.caucho.server.webapp.IncludeDispatchRequest.<init>(IncludeDispatchRequest.java:77)
at com.caucho.server.webapp.IncludeDispatchRequest.createDispatch(IncludeDispatchRequest.java:87)
at com.caucho.server.webapp.RequestDispatcherImpl.include(RequestDispatcherImpl.java:389)
at com.caucho.server.webapp.RequestDispatcherImpl.include(RequestDispatcherImpl.java:345)
at com.caucho.jsp.PageContextImpl.include(PageContextImpl.java:807)
at _jsp._intro__jsp._jspService(/intro.jsp:60)
at com.caucho.jsp.JavaPage.service(JavaPage.java:75)
at com.caucho.jsp.Page.pageservice(Page.java:571)
at com.caucho.server.dispatch.PageFilterChain.doFilter(PageFilterChain.java:155)
at com.caucho.server.cache.CacheFilterChain.doFilter(CacheFilterChain.java:211)
at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:177)
at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:221)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:263)
at com.caucho.server.port.TcpConnection.run(TcpConnection.java:331)
at com.caucho.util.ThreadPool.runTasks(ThreadPool.java:464)
at com.caucho.util.ThreadPool.run(ThreadPool.java:408)
at java.lang.Thread.run(Thread.java:595)
[2003 byte] By [
aleelx] at [2007-9-30 19:26:20]

<!--
- Resin 3.0 configuration file.
-->
<resin xmlns="http://caucho.com/ns/resin"
xmlns:resin="http://caucho.com/ns/resin/core">
<!--
- Logging configuration for the JDK logging API.
-->
<log name='' level='info' path='stdout:' timestamp='[%H:%M:%S.%s] '/>
<log name='com.caucho.java' level='config' path='stdout:'
timestamp='[%H:%M:%S.%s] '/>
<log name='com.caucho.loader' level='config' path='stdout:'
timestamp='[%H:%M:%S.%s] '/>
<!--
- For production sites, change dependency-check-interval to something
- like 600s, so it only checks for updates every 10 minutes.
-->
<dependency-check-interval>2s</dependency-check-interval>
<!--
- You can change the compiler to "javac" or jikes.
- The default is "internal" only because it's the most
- likely to be available.
-->
<javac compiler="internal" args=""/>
<!-- Security providers.
- <security-provider>
- com.sun.net.ssl.internal.ssl.Provider
- </security-provider>
-->
<!--
- If starting bin/resin as root on Unix, specify the user name
- and group name for the web server user.
-
- <user-name>resin</user-name>
- <group-name>resin</group-name>
-->
<!--
- Configures threads shared among all HTTP and SRUN ports.
-->
<thread-pool>
<!-- Maximum number of threads. -->
<thread-max>128</thread-max>
<!-- Minimum number of spare connection threads. -->
<spare-thread-min>25</spare-thread-min>
</thread-pool>
<!--
- Configures the minimum free memory allowed before Resin
- will force a restart.
-->
<min-free-memory>1M</min-free-memory>
<server>
<!-- adds all .jar files under the resin/lib directory -->
<class-loader>
<tree-loader path="$resin-home/lib"/>
</class-loader>
<!-- Configures the keepalive -->
<keepalive-max>500</keepalive-max>
<keepalive-timeout>120s</keepalive-timeout>
<!-- The http port -->
<http server-id="" host="*" port="8080"/>
<!--
- SSL port configuration:
-
- <http port="8443">
- <openssl>
- <certificate-file>keys/gryffindor.crt</certificate-file>
- <certificate-key-file>keys/gryffindor.key</certificate-key-file>
- <password>test123</password>
- </openssl>
- </http>
-->
<!--
- The local cluster, used for load balancing and distributed
- backup.
-->
<cluster>
<srun server-id="" host="127.0.0.1" port="6802" index="1"/>
</cluster>
<!--
- Enables/disables exceptions when the browser closes a connection.
-->
<ignore-client-disconnect>true</ignore-client-disconnect>
<!--
- Enables the cache
-->
<cache path="cache" memory-size="10M"/>
<!--
- Enables periodic checking of the server status.
-
- With JDK 1.5, this will ask the JDK to check for deadlocks.
- All servers can add <url>s to be checked.
-->
<ping>
<!-- <url>http://localhost:8080/test-ping.jsp</url> -->
</ping>
<!--
- Defaults applied to each web-app.
-->
<web-app-default>
<!--
- Sets timeout values for cacheable pages, e.g. static pages.
-->
<cache-mapping url-pattern="/" expires="5s"/>
<cache-mapping url-pattern="*.gif" expires="60s"/>
<cache-mapping url-pattern="*.jpg" expires="60s"/>
<!--
- Servlet to use for directory display.
-->
<servlet servlet-name="directory"
servlet-class="com.caucho.servlets.DirectoryServlet"/>
</web-app-default>
<!--DataSource jndi configuration-->
<database>
<jndi-name>jdbc/artunion</jndi-name>
<driver type="org.gjt.mm.mysql.Driver">
<url>jdbc:mysql://localhost:3306/union</url>
<user>as</user>
<password>as</password>
</driver>
<prepared-statement-cache-size>8</prepared-statement-cache-size>
<max-connections>20</max-connections>
<max-idle-time>30s</max-idle-time>
</database>
<!--
- Default host configuration applied to all virtual hosts.
-->
<host-default>
<class-loader>
<compiling-loader path='webapps/WEB-INF/classes'/>
<library-loader path='webapps/WEB-INF/lib'/>
</class-loader>
<!--
- With another web server, like Apache, this can be commented out
- because the web server will log this information.
-->
<access-log path='logs/access.log'
format='%h %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i"'
rollover-period='1W'/>
<!-- creates the webapps directory for .war expansion -->
<web-app-deploy path='webapps'/>
<!-- creates the deploy directory for .ear expansion -->
<ear-deploy path='deploy'>
<ear-default>
<!-- Configure this for the ejb server
-
- <ejb-server>
- <config-directory>WEB-INF</config-directory>
- <data-source>jdbc/test</data-source>
- </ejb-server>
-->
</ear-default>
</ear-deploy>
<!-- creates the deploy directory for .rar expansion -->
<resource-deploy path='deploy'/>
<!-- creates a second deploy directory for .war expansion -->
<web-app-deploy path='deploy'/>
</host-default>
<!-- includes the web-app-default for default web-app behavior -->
<resin:import path="${resinHome}/conf/app-default.xml"/>
<!-- configures the default host, matching any host name -->
<host id=''>
<document-directory>D:/artunion</document-directory>
<!-- configures the root web-app -->
<web-app id='/'>
<!-- adds xsl to the search path -->
<class-loader>
<simple-loader path="$host-root/xsl"/>
</class-loader>
<servlet-mapping url-pattern="/servlet/*" servlet-name="invoker"/>
</web-app>
</host>
</server>
</resin>
Thank you!