Cuando generamos una aplicación web, utilizando JPA, y tenemos campos autoincrementables, debemos definir la estrategia de generación
@GeneratedValue(strategy=GenerationType.IDENTITY)
en el campo, antes de generar las paginas JSF a partir de las entidades o crear las clases controladoras.
Ejemplo:
public class Interes implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Basic(optional = false)
@Column(name = "id_interes")
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Integer idInteres;
y comentamos el campo id para que no se muestre en la pagina .xhtml
< !--
< h:outputLabel value="#{bundle.CreateInteresLabel_idInteres}" for="idInteres" />
< h:inputText id="idInteres" value="#{interesController.selected.idInteres}" title="#{bundle.CreateInteresTitle_idInteres}" required="false" requiredMessage="#{bundle.CreateInteresRequiredMessage_idInteres}"/>
-- >
@GeneratedValue(strategy=GenerationType.IDENTITY)
en el campo, antes de generar las paginas JSF a partir de las entidades o crear las clases controladoras.
Ejemplo:
public class Interes implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Basic(optional = false)
@Column(name = "id_interes")
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Integer idInteres;
y comentamos el campo id para que no se muestre en la pagina .xhtml
< !--
< h:outputLabel value="#{bundle.CreateInteresLabel_idInteres}" for="idInteres" />
< h:inputText id="idInteres" value="#{interesController.selected.idInteres}" title="#{bundle.CreateInteresTitle_idInteres}" required="false" requiredMessage="#{bundle.CreateInteresRequiredMessage_idInteres}"/>
-- >
Comments