2013-05-13 22 views
0

我有这样一个类:EntityListeners不叫

@Entity 
@Customizer(value=UsuarioCustomizer.class) 
@Indexes({ 
    @Index(name="idx_login_senha",columnNames={"usuario","senha"}) 
}) 
@EntityListeners({Hashr.class}) 
public class Usuario implements Serializable{ 
    private static final long serialVersionUID = 1L; 
    // Fields 

,这里是Hashr

public class Hashr { 

    @PrePersist 
    @PreUpdate 
    public void doHash(Object o){ 
      // print info 
    } 
} 

但它发生,这种方法不会被调用...任何想法?我忘了什么吗?

回答

1

这应该被调用。最好启用日志记录并查看是否记录了任何错误。

确保您已重新编译/部署您的代码。

你运行什么环境?确保您在persistence.xml类中列出侦听器类。

+0

persistence.xml上的任何特殊标记列出我的侦听器类? – 2013-05-14 13:34:22

+0

这是带有“最好”日志级别的输出:http://pastebin.com/dHrN2RK3一切看起来都很好,但不会调用听众 – 2013-05-14 16:51:52

+1

似乎没有任何更改持续存在。尝试持久化一个新对象并显示日志,并在可能的情况下包含预先部署期间发生的日志记录,因为它会显示处理的内容。 – Chris 2013-05-14 17:49:32