[
https://issues.apache.org/jira/browse/OPENJPA-2274?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Guillaume Chauvet closed OPENJPA-2274.
--------------------------------------
Resolution: Not A Problem
http://stackoverflow.com/questions/4204868/jpa-doesnt-support-interfaces-well-implications
> 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 was sent by Atlassian JIRA
(v6.1#6144)