Problemas com Hibernate - Parte 4

2 respostas
thiago.fernandes

Fala galera,

olha eu ai denovo!!!rsrs.

estou com um problema com a anotação @OneToOne. abaixo segue a explicação:

Classe usuario

@OneToOne
    @JoinColumn(name = "id")
    private UsuarioPermissao permissao;

Classe usuariopermissao

@OneToOne
    @ForeignKey (name="idUsuario")
    @JoinColumn(name = "idUsuario", nullable = false)
    @Fetch(FetchMode.JOIN)
    @Cascade(CascadeType.SAVE_UPDATE)
    private Usuario usuario;

quando tento exibir as permissões do usuário tenho a mensagem de erro abaixo:

org.apache.jasper.JasperException: An exception occurred processing JSP page /listaUsuarios.jsp at line 41

38:                             <c:when test="${!empty listaUsuarios}">
39:                                 <logic:iterate collection="${listaUsuarios}" id="usuario">
40:                                     <tr class="conteudo_bold" bgcolor="#ECECC7" align="center">
41:                                         <td align="Left"> ${usuario.permissao}</td>
42:                                         <td width="1%"><html:img src="/img/alterar.gif" border="0" /></td>
43:                                         <td width="1%"><html:img src="/img/apagar.gif" border="0" /></td>
44:                                     </tr>


Stacktrace:
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
	org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1078)
	org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:295)
	org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:396)
	org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:347)
	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:232)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
	org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)

root cause

javax.el.PropertyNotFoundException: Property 'permissao' not found on type com.appcf.dominio.Usuario
	javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:193)
	javax.el.BeanELResolver$BeanProperties.access$400(BeanELResolver.java:170)
	javax.el.BeanELResolver.property(BeanELResolver.java:279)
	javax.el.BeanELResolver.getValue(BeanELResolver.java:60)
	javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)
	org.apache.el.parser.AstValue.getValue(AstValue.java:123)
	org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
	org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:935)
	org.apache.jsp.listaUsuarios_jsp._jspService(listaUsuarios_jsp.java:163)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
	org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1078)
	org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:295)
	org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:396)
	org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:347)
	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:232)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
	org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)

não consigo entender o porque ele diz que a propriedade permissão não esta mapeada na classe de usuário…
alguem em uma luz?

att,
Thiago Fernandes

2 Respostas

bzy

Em:

@OneToOne @JoinColumn(name = "id") private UsuarioPermissao permissao;

não seria idUsuario ?

thiago.fernandes

ai ele manda essa msg de erro:

java.lang.Exception: could not execute query
	com.appcf.actions.logar.execute(logar.java:76)
	org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
	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:637)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
Criado 29 de setembro de 2010
Ultima resposta 29 de set. de 2010
Respostas 2
Participantes 2