You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openjpa.apache.org by "Guillaume Chauvet (JIRA)" <ji...@apache.org> on 2012/10/05 12:12:02 UTC
[jira] [Created] (OPENJPA-2274) Annotations & interface methods
Guillaume Chauvet created OPENJPA-2274:
------------------------------------------
Summary: Annotations & interface methods
Key: OPENJPA-2274
URL: https://issues.apache.org/jira/browse/OPENJPA-2274
Project: OpenJPA
Issue Type: Improvement
Reporter: Guillaume Chauvet
Dear OpenJPA team,
I tested a peculiar use of annotations on methods declared into an interface :
public interface EntityHeader {
public long getId();
}
public interface EntityHistorizable<E extends EntityHeader> {
/* .... other methods ....*/
@PostLoad
public void postLoad();
@PrePersist
public void prePersist();
}
public class Task implements Serializable, EntityHistorizable<Task>, EntityHeader {
/* .... Implementations .... */
@Override
public void postLoad() {
System.out.println("postLoad");
}
@Override
public void prePersist() {
System.out.println("prePersist");
}
}
When I perform a persist/find operation on the "Task" entity, OpenJPA don't execute postLoad/prePersist methods because annotations are applied in the interface. I don't know if it's a good practice, but it will be useful in the case who want to provide a "pattern" interface, for example.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira