Pessoal, venho aqui mais uma vez para pedir ajuda a vocês.
Estou usando Displaytag para paginar uma consulta. Está funcionando perfeitamente.
O problema é que a tabela em que consulto possui uma foreign key idDestino e a displaytag mostra o id e não o nome do destino (que está em outra tabela).
Gostaria de saber como que posso fazer para mostrar o nome do destino.
Já tentei inner join no sql e não consegui. Utilizo hibernate no meu projeto.
Por acaso tem algum jeito de buscar o nome do destino e mostrar ele no lugar do id?
Query query = session.createQuery("FROM Usuario ORDER BY nome ASC");
Ele me retorna certinho na displaytag mais se eu tento algo como
Query query = session.createSQLQuery("SELECT u.nome, d.nomeDestino FROM Usuario u inner join Destino d on u.idDestino = d.idDestino ORDER BY nome ASC");
<!-- ARQUIVO RESPONSÁVEL PELA CONEXÃO COM A TABELA Usuario DO BD -->
<hibernate-mapping package=“modelo”>
<class name=“Usuario” table=“Usuario”>
<!-- Identificador da classe -->
<id column=“idUsuario” name=“idUsuario” type=“integer”>
<generator class=“identity”></generator>
</id>
<!-- Propriedades da classe -->
<property name=“idDestino”/>
<property name=“nome”/>
<property name=“dataHora” type=“timestamp”/>
<property name=“previsaoFim” type=“timestamp”/>
<property name=“observacao” type=“text”>
</property>
</class>
</hibernate-mapping>[/code]
E eu já tentei trocar por order by u.nome mais também não surtiu efeito.
Se entendi bem, ele vem na hora de exibir os dados na tela.
Segue o erro completo, talvez pra você que entende de java faça a diferença (ainda não aprendi a interpretar o relatório de erros por completo).
Fev 03, 2012 1:25:27 PM org.apache.catalina.core.ApplicationDispatcher invoke
Grave: Servlet.service() for servlet jsp threw exception
java.lang.NoSuchMethodException: Unknown property 'nome'
at org.apache.commons.beanutils.PropertyUtilsBean.getSimpleProperty(PropertyUtilsBean.java:1122)
at org.apache.commons.beanutils.PropertyUtils.getSimpleProperty(PropertyUtils.java:408)
at org.displaytag.util.LookupUtil.getProperty(LookupUtil.java:271)
at org.displaytag.util.LookupUtil.getBeanProperty(LookupUtil.java:129)
at org.displaytag.model.Column.getValue(Column.java:124)
at org.displaytag.model.Column.createChoppedAndLinkedValue(Column.java:201)
at org.displaytag.model.Column.initialize(Column.java:178)
at org.displaytag.render.TableWriterTemplate.writeTableBody(TableWriterTemplate.java:313)
at org.displaytag.render.TableWriterTemplate.writeTable(TableWriterTemplate.java:138)
at org.displaytag.render.HtmlTableWriter.writeTable(HtmlTableWriter.java:734)
at org.displaytag.tags.TableTag.writeHTMLData(TableTag.java:1647)
at org.displaytag.tags.TableTag.doEndTag(TableTag.java:1300)
at org.apache.jsp.listar_jsp._jspx_meth_display_005ftable_005f0(listar_jsp.java:179)
at org.apache.jsp.listar_jsp._jspService(listar_jsp.java:109)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:968)
at org.apache.jsp.index_jsp._jspService(index_jsp.java:196)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at controle.ListarServlet.doService(ListarServlet.java:50)
at controle.ListarServlet.doGet(ListarServlet.java:27)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:709)
at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:680)
at org.apache.jsp.default_jsp._jspService(default_jsp.java:64)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)