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