jstl path变量不能与外键一起使用

0pizxfdo  于 2021-07-13  发布在  Java
关注(0)|答案(0)|浏览(247)

这是我的.jsp表单:

  1. <form:form class="form-material validate-form" modelAttribute="Usuario" action="${pageContext.request.contextPath}/FormActionMyProfile" method="POST" id="userForm">
  2. <form:select path="perfil.id" class="form-control input100" id="usuario_id_perfil" name="usuario_id_perfil">
  3. <form:option value=""> Seleccione un perfil...</form:option>
  4. <c:forEach items="${ListadoPerfiles}" var="Perfil">
  5. <form:option value="${Perfil.id}" selected="${Perfil.id == Usuario.perfil.id ? 'selected' : ''}"> ${Perfil.nombre}</form:option>
  6. </c:forEach>
  7. </form:select>
  8. </form:form>

这是我的user.class:

  1. @Entity
  2. @Table(name="usuario")
  3. public class Usuario implements Serializable
  4. ...
  5. @JoinColumn(name = "id_perfil")
  6. @OneToOne(fetch = FetchType.EAGER)
  7. private Perfil perfil;
  8. ...
  9. public Perfil getPerfil() { return perfil; }
  10. public void setPerfil(Perfil perfil) { this.perfil = perfil; }

这是我的个人资料。班级:

  1. package Models;
  2. import java.io.Serializable;
  3. import javax.persistence.Column;
  4. import javax.persistence.Entity;
  5. import javax.persistence.GeneratedValue;
  6. import javax.persistence.GenerationType;
  7. import javax.persistence.Id;
  8. import javax.persistence.Table;
  9. @Entity
  10. @Table(name="perfil")
  11. public class Perfil implements Serializable {
  12. @Id
  13. @Column(name="id")
  14. @GeneratedValue(strategy=GenerationType.IDENTITY)
  15. private int id;
  16. @Column(name="nombre")
  17. private String nombre;
  18. @Column(name="descripcion")
  19. private String descripcion;
  20. @Column(name="activo")
  21. private int activo;
  22. public int getId() { return id; }
  23. public void setId(int id) { this.id = id; }
  24. public String getNombre() { return nombre; }
  25. public void setNombre(String nombre) { this.nombre = nombre; }
  26. public String getDescripcion() { return descripcion; }
  27. public void setDescripcion(String descripcion) { this.descripcion = descripcion; }
  28. public int getActivo() { return activo; }
  29. public void setActivo(int activo) { this.activo = activo; }
  30. @Override
  31. public String toString() {
  32. return "Id=" + id + ", " + "Nombre:" + nombre + ", " + "Descripción:" + descripcion + ", " + "Activo:" + activo;
  33. }
  34. }

我的apachetomcat输出日志为空。
问题是.jsp中的select是外键,当我重新加载.jsp时,它是完全空白的。
当我使用 path="perfil.nombre" 行得通,但我需要 path="perfil.id" 作为int外键。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题