Foros del Web » Programación para mayores de 30 ;) » Java »

Problema al persistir un objeto

Estas en el tema de Problema al persistir un objeto en el foro de Java en Foros del Web. Buenas, estoy trabajando con Netbeans 7.1 y al principio de crear mi aplicacion creé un nuevo esquema en la base de datos "sample" que viene ...
  #1 (permalink)  
Antiguo 08/06/2013, 04:51
 
Fecha de Ingreso: diciembre-2008
Mensajes: 116
Antigüedad: 15 años, 3 meses
Puntos: 0
Problema al persistir un objeto

Buenas, estoy trabajando con Netbeans 7.1 y al principio de crear mi aplicacion creé un nuevo esquema en la base de datos "sample" que viene con glassfish. El esquema se llama TIENDA, y lo tengo como esquema por defecto (boton derecho, Set as Default Schema). Dentro del esquema tengo varias tablas, entre ellas USUARIO, con varios campos, entre ellos DIRECCION1.

Bien, pues me he creado un formulario con los campos de mi Entity Usuario.java, para hacer una prueba de registro, y me salta este error:
Código:
Caused by: Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: java.sql.SQLSyntaxErrorException: 'DIRECCION1' no es una columna en la tabla o VTI 'APP.USUARIO'.
Error Code: -1
Como se puede ver, está intentando persistir en el esquema "APP", cuando yo lo que quiero es usar mi esquema. Inserto varios trozos de codigo para que se entienda mejor:
Código Java:
Ver original
  1. public class LoginManagedBean {
  2.   @EJB
  3.   private UsuarioBeanLocal usuarioBean;
  4.   private Usuario usuario;
  5.   public String signup() {
  6.     Usuario flag = usuarioBean.insert(usuario);
  7.     if (flag == null) {
  8.       return "ERROR";
  9.     } else {
  10.       return "OK";
  11.     }
  12.   }
  13. }
Código Java:
Ver original
  1. @Stateless
  2. public class UsuarioBean implements UsuarioBeanLocal {
  3.   @PersistenceContext(unitName = "TiendaOnline-ejbPU")
  4.   private EntityManager em;
  5.   @Override
  6.   public Usuario insert(Usuario usuario) {
  7.     return update(usuario);
  8.   }
  9.  
  10.   @Override
  11.   public Usuario update(Usuario usuario) {
  12.     return em.merge(usuario);
  13.   }
Código Java:
Ver original
  1. <h:form>
  2.         <h1><h:outputText value="Create/Edit"/></h1>
  3.         <h:panelGrid columns="3">
  4.           <h:outputLabel value="Email:" for="email" />
  5.           <h:inputText id="email" value="#{loginManagedBean.usuario.email}" title="Email" required="true" requiredMessage="The Email field is required."/>
  6.           <h:message for="email" style="color:red" />
  7.           <h:outputLabel value="Password:" for="password" />
  8.           <h:inputText id="password" value="#{loginManagedBean.usuario.password}" title="Password" required="true" requiredMessage="The Password field is required."/>
  9.           <h:message for="password" style="color:red" />
  10.           <h:outputLabel value="Nombre:" for="nombre" />
  11.           <h:inputText id="nombre" value="#{loginManagedBean.usuario.nombre}" title="Nombre" required="true" requiredMessage="The Nombre field is required."/>
  12.           <h:message for="nombre" style="color:red" />
  13.           <h:outputLabel value="Apellidos:" for="apellidos" />
  14.           <h:inputText id="apellidos" value="#{loginManagedBean.usuario.apellidos}" title="Apellidos" required="true" requiredMessage="The Apellidos field is required."/>
  15.           <h:message for="apellidos" style="color:red" />
  16.           <h:outputLabel value="Direccion1:" for="direccion1" />
  17.           <h:inputText id="direccion1" value="#{loginManagedBean.usuario.direccion1}" title="Direccion1" />
  18.           <h:message for="direccion1" style="color:red" />
  19.           <h:outputLabel value="Direccion2:" for="direccion2" />
  20.           <h:inputText id="direccion2" value="#{loginManagedBean.usuario.direccion2}" title="Direccion2" />
  21.           <h:message for="direccion2" style="color:red" />
  22.           <h:outputLabel value="Sexo:" for="sexo" />
  23.           <h:inputText id="sexo" value="#{loginManagedBean.usuario.sexo}" title="Sexo" required="true" requiredMessage="The Sexo field is required."/>
  24.           <h:message for="sexo" style="color:red" />
  25.           <h:outputLabel value="Activo:" for="activo" />
  26.           <h:inputText id="activo" value="#{loginManagedBean.usuario.activo}" title="Activo" required="true" requiredMessage="The Activo field is required."/>
  27.           <h:message for="activo" style="color:red" />
  28.           <h:outputLabel value="FechaRegistro:" for="fechaRegistro" />
  29.           <h:inputText id="fechaRegistro" value="#{loginManagedBean.usuario.fechaRegistro}" title="FechaRegistro" required="true" requiredMessage="The FechaRegistro field is required.">
  30.             <f:convertDateTime pattern="MM/dd/yyyy HH:mm:ss" />
  31.           </h:inputText>
  32.           <h:message for="fechaRegistro" style="color:red" />
  33.           <h:outputLabel value="FechaBaja:" for="fechaBaja" />
  34.           <h:inputText id="fechaBaja" value="#{loginManagedBean.usuario.fechaBaja}" title="FechaBaja" >
  35.             <f:convertDateTime pattern="MM/dd/yyyy HH:mm:ss" />
  36.           </h:inputText>
  37.           <h:message for="fechaBaja" style="color:red" />
  38.           <h:commandButton value="Enviar" action="#{loginManagedBean.signup}" />
  39.         </h:panelGrid>
  40.       </h:form>

Etiquetas: esquema, jpa, netbeans, schema
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:38.