Evento NullPointerException

20 views
Skip to first unread message

Leyfer Madariaga

unread,
Apr 14, 2025, 10:43:36 AMApr 14
to iDempiere-es
Buenos dias grupo, cordial saludo a todos.

Estoy realizando un evento simple que pueda verificar por LOG cuando se realiza algun cambio en la ventana "Tercero" , sin embargo, siempre me aparece el mismo error : 
10:37:39.172-----------> MBPartner.save: Validation failed - java.lang.NullPointerException<br> [1795]

Estuve depurando el código, sin embargo, no logro ver el error, les facilito el código :
/**
 * Delegado de eventos para el modelo de Socio de Negocio (Business Partner)
 * Implementa manejadores para diferentes eventos del ciclo de vida del modelo
 */
@EventTopicDelegate
@ModelEventTopic(modelClass = MBPartner.class)
public class BPartnerEventDelegate extends ModelEventDelegate<MBPartner> {

    public BPartnerEventDelegate(MBPartner po, Event event) {
        super(po, event);
    }
   
    /**
     * Se ejecuta antes de cambiar un socio de negocio existente
     */
    @BeforeChange
    public void onBeforeChange() {
        System.out.println("EVENTO: Antes de cambiar el socio de negocio: " + getModel().getName());
        System.out.println("ID: " + getModel().getC_BPartner_ID());
        // Aquí puedes implementar validaciones o lógica de negocio
    }
   
    /**
     * Se ejecuta después de cambiar un socio de negocio existente
     */
    @AfterChange
    public void onAfterChange() {
        System.out.println("EVENTO: Después de cambiar el socio de negocio: " + getModel().getName());
        System.out.println("ID: " + getModel().getC_BPartner_ID());
        // Aquí puedes implementar lógica post-cambio
    }
   
    /**
     * Se ejecuta antes de crear un nuevo socio de negocio
     */
    @BeforeNew
    public void onBeforeNew() {
        System.out.println("EVENTO: Antes de crear un nuevo socio de negocio");
        // Aquí puedes implementar validaciones o valores por defecto
    }
   
    /**
     * Se ejecuta después de crear un nuevo socio de negocio
     */
    @AfterNew
    public void onAfterNew() {
        System.out.println("EVENTO: Después de crear un nuevo socio de negocio: " + getModel().getName());
        System.out.println("ID: " + getModel().getC_BPartner_ID());
        // Aquí puedes implementar lógica post-creación
    }
   
    /**
     * Se ejecuta antes de eliminar un socio de negocio
     */
    @BeforeDelete
    public void onBeforeDelete() {
        System.out.println("EVENTO: Antes de eliminar el socio de negocio: " + getModel().getName());
        System.out.println("ID: " + getModel().getC_BPartner_ID());
        // Aquí puedes implementar validaciones antes de eliminar
    }
   
    /**
     * Se ejecuta después de eliminar un socio de negocio
     */
    @AfterDelete
    public void onAfterDelete() {
        System.out.println("EVENTO: Después de eliminar el socio de negocio");
        // Aquí puedes implementar lógica post-eliminación
    }
   
    /**
     * Se ejecuta después de que la transacción de creación se ha completado
     */
    @PostCreate
    public void onPostCreate() {
        System.out.println("EVENTO: Post-creación del socio de negocio: " + getModel().getName());
        System.out.println("ID: " + getModel().getC_BPartner_ID());
        // Aquí puedes implementar lógica después de que la transacción se ha completado
    }
   
    /**
     * Se ejecuta después de que la transacción de actualización se ha completado
     */
    @PostUpdate
    public void onPostUpdate() {
        System.out.println("EVENTO: Post-actualización del socio de negocio: " + getModel().getName());
        System.out.println("ID: " + getModel().getC_BPartner_ID());
        // Aquí puedes implementar lógica después de que la transacción se ha completado
    }
   
    /**
     * Se ejecuta después de que la transacción de eliminación se ha completado
     */
    @PostDelete
    public void onPostDelete() {
        System.out.println("EVENTO: Post-eliminación del socio de negocio");
        // Aquí puedes implementar lógica después de que la transacción se ha completado
    }
}
Reply all
Reply to author
Forward
0 new messages