Pero necesito algo similar para actualizar: algún @Pre/PostUpdate no JPA.
Entiendo que las retrollamadas propias de JPA no las puedo utilizar en éste caso.
El valor que necesito guardar no se visualiza ni puede visualizarse en la vista, por lo que necesito recuperar ese dato tanto al crear la entidad y/o al actualizar si fuera el caso.
No quisiera definir una acción personalizada para guardar la entidad porque sería únicamente para actualizar un dato de la entidad al momento de guardar y necesito tener consistencia y simplicidad debido a que son muchas entidades con el mismo requerimiento.
Alguna idea?.
Atte.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hola Chungyen. Gracias por responder.
Si le agrego @PreUpdate me arroja el error:
Jul 16, 2024 8:19:38 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
ERROR: This connection has been closed.
error FindVendorPriceList org.hibernate.exception.JDBCConnectionException: could not prepare statement
false
Jul 16, 2024 8:19:38 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
WARN: SQL Error: 0, SQLState: 08003
Jul 16, 2024 8:19:38 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
ERROR: This connection has been closed.
error FindVendorPriceList org.hibernate.exception.JDBCConnectionException: could not prepare statement
que entiendo es debido a utilizar VendorPriceList vendorPriceList = VendorPriceList.findVendorPriceList(getProduct().getId(),getBusinessPartner().getId(), getDeliveryAdress().getId()); que tiene un getManager() dentro.
Atte.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
En ese caso lo que se me ocurre es que en el @PreUpdate hagas un XPersistence.createManager(), crear una transacción y luego cerrar la transacción y el manager, es importante cerrarlos.
Tenemos los dos métodos no JPA para antes de crear y antes de borrar, pero un PreUpdate no JPA, no tenemos. Ya que JPA en el manager no tiene un método para actualizar, así que no había donde sobreescribir el método.
Saludos.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Saludos cordiales.
XavaPro 6.6.1
Con la anotación @PreCreate puedo hacer esto para cuando se persiste la entidad por primera vez:
Pero necesito algo similar para actualizar: algún @Pre/PostUpdate no JPA.
Entiendo que las retrollamadas propias de JPA no las puedo utilizar en éste caso.
El valor que necesito guardar no se visualiza ni puede visualizarse en la vista, por lo que necesito recuperar ese dato tanto al crear la entidad y/o al actualizar si fuera el caso.
No quisiera definir una acción personalizada para guardar la entidad porque sería únicamente para actualizar un dato de la entidad al momento de guardar y necesito tener consistencia y simplicidad debido a que son muchas entidades con el mismo requerimiento.
Alguna idea?.
Atte.
Hola Gregorio,
No entendi bien, no te sirve @PreUpdate para lo que necesitas? no hace falta mostrar la propiedad en la vista para que se haga efecto PreUpdate.
Saludos.
Hola Chungyen. Gracias por responder.
Si le agrego @PreUpdate me arroja el error:
que entiendo es debido a utilizar VendorPriceList vendorPriceList = VendorPriceList.findVendorPriceList(getProduct().getId(),getBusinessPartner().getId(), getDeliveryAdress().getId()); que tiene un getManager() dentro.
Atte.
Hola Gregorio,
En ese caso lo que se me ocurre es que en el @PreUpdate hagas un XPersistence.createManager(), crear una transacción y luego cerrar la transacción y el manager, es importante cerrarlos.
Tenemos los dos métodos no JPA para antes de crear y antes de borrar, pero un PreUpdate no JPA, no tenemos. Ya que JPA en el manager no tiene un método para actualizar, así que no había donde sobreescribir el método.
Saludos.