Avatar billede mikmakmuk Nybegynder
13. januar 2009 - 10:13 Der er 4 kommentarer

Fejl første gang en side bliver kaldt

Hej Experter,

Jeg får nedenstående fejl første gang jeg kalder en jsp side. Trykker jeg F5 så virker det fint igen. Det eneste siden gør er at kontakte en database og printe et resultset ud.

org.apache.jasper.JasperException: javax.servlet.ServletException: javax.servlet.jsp.JspException:
select Id from test
: The last packet successfully received from the server was75934 milliseconds ago.The last packet sent successfully to the server was 75934 milliseconds ago, which  is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:522)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:398)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)


root cause

javax.servlet.ServletException: javax.servlet.jsp.JspException:
select Id from test
: The last packet successfully received from the server was75934 milliseconds ago.The last packet sent successfully to the server was 75934 milliseconds ago, which  is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:848)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)
    org.apache.jsp.testdb_jsp._jspService(testdb_jsp.java:86)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)


root cause

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was75934 milliseconds ago.The last packet sent successfully to the server was 75934 milliseconds ago, which  is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.
    sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
    com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
    com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3270)
    com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1932)
    com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2101)
    com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2554)
    com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1761)
    com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1912)
    org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:93)
    org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.doEndTag(QueryTagSupport.java:215)
    org.apache.jsp.testdb_jsp._jspx_meth_sql_005fquery_005f0(testdb_jsp.java:127)
    org.apache.jsp.testdb_jsp._jspService(testdb_jsp.java:63)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)


root cause

java.net.SocketException: Broken pipe
    java.net.SocketOutputStream.socketWrite0(Native Method)
    java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
    java.net.SocketOutputStream.write(SocketOutputStream.java:136)
    java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
    java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
    com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3251)
    com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1932)
    com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2101)
    com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2554)
    com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1761)
    com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1912)
    org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:93)
    org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.doEndTag(QueryTagSupport.java:215)
    org.apache.jsp.testdb_jsp._jspx_meth_sql_005fquery_005f0(testdb_jsp.java:127)
    org.apache.jsp.testdb_jsp._jspService(testdb_jsp.java:63)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
Avatar billede mikmakmuk Nybegynder
13. januar 2009 - 10:17 #1
Min resource ser således ud:

<Resource name="jdbc/ladida" auth="Container" type="javax.sql.DataSource"
              maxActive="100" maxIdle="30" maxWait="10000"
              username="BLA" password="PASSWORD" driverClassName="com.mysql.jdbc.Driver"
              url="jdbc:mysql://localhost:3306/outbound?autoReconnect=true"/>
Avatar billede mikmakmuk Nybegynder
13. januar 2009 - 10:18 #2
min web.xml:

<resource-ref>
      <description>DB Connection</description>
      <res-ref-name>jdbc/ladida</res-ref-name>
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
  </resource-ref>
Avatar billede mikmakmuk Nybegynder
13. januar 2009 - 10:20 #3
min jsp:

<sql:query var="rs" dataSource="jdbc/ladida">
select Id from test
</sql:query>
Avatar billede arne_v Ekspert
02. februar 2009 - 04:22 #4
prøv og drop ?autoReconnect=true og til din resource tilføj en validation query som
beskrevet i http://dev.mysql.com/doc/refman/5.1/en/connector-j-usagenotes-j2ee.html#connector-j-usagenotes-tomcat
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester