tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sameer Acharya <acharya_...@yahoo.com>
Subject Re: Problem with Displaying Result of a MySQL Join in Tomcat
Date Mon, 04 Aug 2008 05:22:31 GMT
Error seems to originate from the MySQL JDBC driver, weird if you say it was working earlier.

Can you write a simple Java class to use the same driver to execute the same query and run
it with same JDK version under which your Tomcat is running, see if its working or still throwing
the error.

Might be your JDBC driver is older.
-Sameer


--- On Mon, 8/4/08, Len Popp <len.popp@gmail.com> wrote:

> From: Len Popp <len.popp@gmail.com>
> Subject: Re: Problem with Displaying Result of a MySQL Join in Tomcat
> To: "Tomcat Users List" <users@tomcat.apache.org>
> Date: Monday, August 4, 2008, 7:39 AM
> That error looks like a communication problem between Tomcat
> & MySQL,
> but I don't know why it would only happen when
> accessing certain
> columns. Perhaps someone who knows more about JDBC &
> MySQL can explain
> what it means.
> -- 
> Len
> 
> 
> 
> On Sun, Aug 3, 2008 at 13:21, Glyn Thomas
> <glynthomas@comcast.net> wrote:
> > Len,
> > Thanks for your comments and interest.
> >
> > I hadn't thought to check the Tomcat log because
> the majority of the query appeared to execute, but there is
> an error being put into the log, see below.  Note, this is
> with a slight variation on the query that I added in my
> earlier post, but has the same symptoms.
> >
> > Aug 3, 2008 1:10:57 PM
> org.apache.catalina.core.StandardWrapperValve invoke
> > SEVERE: Servlet.service() for servlet jsp threw
> exception
> > java.net.SocketException: Software caused connection
> abort: recv failed
> >        at
> java.net.SocketInputStream.socketRead0(Native Method)
> >        at java.net.SocketInputStream.read(Unknown
> Source)
> >        at
> com.mysql.jdbc.util.ReadAheadInputStream.fill(ReadAheadInputStream.java:113)
> >        at
> com.mysql.jdbc.util.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:160)
> >        at
> com.mysql.jdbc.util.ReadAheadInputStream.read(ReadAheadInputStream.java:188)
> >        at
> com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:2428)
> >        at
> com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2882)
> >        at
> com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2871)
> >        at
> com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3414)
> >        at
> com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1936)
> >        at
> com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2060)
> >        at
> com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2542)
> >        at
> com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1734)
> >        at
> com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1885)
> >        at
> org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:93)
> >        at
> org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.doEndTag(QueryTagSupport.java:215)
> >        at
> org.apache.jsp.index_jsp._jspService(index_jsp.java:371)
> >        at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
> >        at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> >        at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
> >        at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
> >        at
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
> >        at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> >        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> >        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> >        at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> >        at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
> >        at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> >        at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
> >        at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
> >        at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
> >        at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
> >        at
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
> >        at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
> >        at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
> >        at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
> >        at java.lang.Thread.run(Unknown Source)
> >
> > I ran the query in  MySQL Command Line Client on both
> XP and Vista and they return identical results.
> >
> > Thanks
> > Glyn
> >
> > -----Original Message-----
> > From: Len Popp [mailto:len.popp@gmail.com]
> > Sent: Sunday, August 03, 2008 11:31 AM
> > To: Tomcat Users List
> > Subject: Re: Problem with Displaying Result of a MySQL
> Join in Tomcat
> >
> > There might be a simpler solution than migrating to a
> completely
> > different OS. :-)
> >
> > What exactly do you mean by "don't get
> retrieved"? Does it throw an
> > exception? Is there an error message in Tomcat's
> log?
> >
> > When you execute the query in MySQL, do you get
> exactly the same
> > results as on the old system? In particular, are the
> column names what
> > you expect?
> > --
> > Len
> >
> >
> >
> > On Sat, Aug 2, 2008 at 20:02, Glyn Thomas
> <glynthomas@comcast.net> wrote:
> >> I am in the process of converting a Tomcat front
> end for a MySQL database
> >> from
> >>
> >> Windows XP to Windows Vista.
> >>
> >>
> >>
> >> The XP version used MySQL Version 5.0.22, Tomcat
> 5.5.20, JRE 1.5.0 release
> >>
> >> 12 with Tomcat JDK 4 Compatibility Pack, and
> J/Connector 5.0.6.
> >>
> >>
> >>
> >> The Vista version is using MySQL Version 5.0.51a,
> Tomcat 5.5.26, JRE
> >>
> >> 1.6.0_05, and J/Connector 5.1.6.
> >>
> >>
> >>
> >> I am unable to display any parts of a result set
> that are retrieved from
> >>
> >> JOINed tables in the Vista version - this works
> fine in the XP version.  I
> >>
> >> already tried converting the queries to use JOIN
> syntax instead of WHERE
> >>
> >> syntax, without improvement.
> >>
> >>
> >>
> >> For example, this query works correctly in the
> MySQL command line:
> >>
> >>
> >>
> >> SELECT
> >>
> >>
> i.ImageID,i.DateDay,i.DateMonth,i.DateYear,i.Location1,i.Location2,i.Scanned
> >>
> >> YN,i.MediaID,c.Description as 'Country',
> s.SubjectID, s.SubjectTypeID,
> >>
> >> i.CountryID,i.PhotographerID, i.VolumeNumber FROM
> image_tbl i JOIN
> >>
> >> lu_country_tbl c ON (i.countryid=c.countryid) JOIN
> xrf_image_subject_tbl si
> >>
> >> ON (si.Imageid=i.imageid) JOIN subject_tbl s ON
> (si.Subjectid=s.subjectid)
> >>
> >> WHERE (i.imageid=1234);
> >>
> >>
> >>
> >> In JSP, I retrieve the results of this query into
> an rsImages variable, and
> >>
> >> then iterate through the rows using:
> >>
> >>
> >>
> >> <c:forEach var="row"
> items="${rsImage.rows}">
> >>
> >>
> >>
> >> Rows that retrieve directly from the image_tbl
> work correctly e.g.
> >>
> >> ${row.ImageID} will display the image ID.
> >>
> >>
> >>
> >> However, elements from the joined tables, such as
> ${row.Country} and
> >>
> >> ${row.SubjectID} don't get retrieved.
> >>
> >>
> >>
> >> Any ideas?
> >>
> >>
> >>
> >> Thanks,
> >>
> >> Glyn Thomas
> >>
> >>
> >>
> >>
> >>
> >>
> >
> >
> ---------------------------------------------------------------------
> > To start a new topic, e-mail: users@tomcat.apache.org
> > To unsubscribe, e-mail:
> users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail:
> users-help@tomcat.apache.org
> >
> >
> >
> ---------------------------------------------------------------------
> > To start a new topic, e-mail: users@tomcat.apache.org
> > To unsubscribe, e-mail:
> users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail:
> users-help@tomcat.apache.org
> >
> >
> 
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail:
> users-help@tomcat.apache.org


      

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message