Erro: "No suitable driver" TOMCAT/SQL

1 resposta
M

Oi Pessoal,

Estou tentando conectar um BD MySQL da seguinte forma:


<sql:setDataSource var=“db” url=“jdbc:mysql://localhost/tpsg”
driver=“com.mysql.jdbc.Driver” user=“root” password=“password”/>

<sql:transaction dataSource=“db”>

<sql:query var=“menus”>

SELECT * FROM menu_item order by id;

</sql:query>

</sql:transaction>

Mas o Tomcat mostra a seguinte mensagem de erro:

javax.servlet.jsp.JspTagException: Error getting connection: “No suitable driver”
org.apache.taglibs.standard.tag.common.sql.TransactionTagSupport.doStartTag(TransactionTagSupport.java:115)
org.apache.taglibs.standard.tag.el.sql.TransactionTag.doStartTag(TransactionTag.java:57)
org.apache.jsp.menu_jsp._jspx_meth_sql_005ftransaction_005f0(menu_jsp.java:173)
org.apache.jsp.menu_jsp._jspService(menu_jsp.java:111)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.struts.chain.commands.servlet.PerformForward.handleAsForward(PerformForward.java:113)
org.apache.struts.chain.commands.servlet.PerformForward.perform(PerformForward.java:96)
org.apache.struts.chain.commands.AbstractPerformForward.execute(AbstractPerformForward.java:54)
org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

Isso é interessante porque quando eu uso a mesma configuração com o Hibernate, ela funciona corretamente:


jdbc:mysql://localhost/tpsg
root
password
com.mysql.jdbc.Driver
org.hibernate.dialect.MySQLDialect

E quando eu uso outra BD (hsqldb) como abaixo, também funciona.

<sql:setDataSource var=“db” url=“jdbc:hsqldb:db/menu”
driver=“org.hsqldb.jdbcDriver” user=“sa” password=""/>

<sql:transaction dataSource=“db”>

<sql:query var=“menus”>

SELECT * FROM menu_item order by id;

</sql:query>

</sql:transaction>

Ou seja, só não funciona com a tag junto com MySQL.

Alguém já teve este tipo de problema e poderia me ajudar ??

Muito obrigado

[]'s

1 Resposta

L

no tomcat está mapeado o driver do mysql? ou na sua aplicação está?..o que me parece é que o tomcat não acha o driver para fazer a conexão

Criado 9 de julho de 2008
Ultima resposta 9 de jul. de 2008
Respostas 1
Participantes 2