Erro JSP

Boa noite!

Eu estou enfrentando o seguinte problema:

Eu quero listar os dados de um questionário em uma página JSP. Pra isso, eu estou usando o método getString da classe ResultSet. O código da classe DAO é o seguinte:

[code]
public ResultSet obterQuestoes(String questionario) {
ResultSet resultado = null;
Statement stmt = null;
String sSQL = “”;

    try {
        conectarBD();

        sSQL = "SELECT a.titulo, b.enunciado, c.peso FROM questionario a, questao b, ";
        sSQL = sSQL + "questionario_questao c WHERE a.id = c.questionario_id ";
        sSQL = sSQL + "AND b.id = c.questao_id AND a.id = ";
        sSQL = sSQL + questionario;

        stmt = CONEXAO.createStatement();
        resultado = stmt.executeQuery(sSQL);

        return resultado;
    } catch (SQLException e) {
        System.out.println(e.getStackTrace());
    }
   return null;
}[/code]

E esse é a página JSP de onde eu quero listar os dados:

<%
<%
    QuestionarioDAO qDAO = new QuestionarioDAO();
    String[] questionarios;
    questionarios = request.getParameterValues("chk_escolha");

    if (questionarios != null) {
        for (int i = 0; i < questionarios.length; i++)
        {
            ResultSet resultado = qDAO.obterQuestoes(questionarios[i]);
            out.println(resultado.getString(1));
            resultado.close();
            resultado = null;
        }
    }
%>
%>[/code]

E esse é o erro que aparece quando tento listar os dados:[code]
org.apache.jasper.JasperException: Exception in JSP: /visualizar_exportar_questionario.jsp:20

17:         {
18:             ResultSet resultado = qDAO.obterQuestoes(questionarios[i]);
19:             //out.println("<h3> Nome do question&aacute;rio: "+resultado.getString(0)+"</h3><br>");
20:             out.println(resultado.getString(1));
21:             resultado.close();
22:             resultado = null;
23:         }


Stacktrace:
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:451)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:355)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

root cause

javax.servlet.ServletException
	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:841)
	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:774)
	org.apache.jsp.visualizar_005fexportar_005fquestionario_jsp._jspService(visualizar_005fexportar_005fquestionario_jsp.java:79)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

root cause

java.sql.SQLException
	com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
	com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
	com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
	com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:815)
	com.mysql.jdbc.ResultSetImpl.getStringInternal(ResultSetImpl.java:5528)
	com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5448)
	org.apache.jsp.visualizar_005fexportar_005fquestionario_jsp._jspService(visualizar_005fexportar_005fquestionario_jsp.java:65)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

note The full stack trace of the root cause is available in the Apache Tomcat/5.5.28 logs.

Os dados estão sendo sendo passados corretamente para a página.

Espero que alguém possa me ajudar.

Abraços.

Está dando erro no seu SQL.

Olá amigo,

como dito acima o erro é no seu SQL, provavelmente esse campo id da tabela questionario é do tipo Integer, e vc está comparando ele com uma String, a forma correta de fazer seria:

sSQL.append(“AND b.id = c.questao_id AND a.id = ?”);

stmt.setInteger(“0”, Integer.valueOf(questionario));

Para seu código ficar mais legível utilize StringBuffer, ao invés de String, e utilize o método append para concatenar a consulta SQL, depois no método execute converta para String com o método toString();

Espero ter ajudado.