Hi,

I'm using 5.1.0.5, good to know about the annotations for services. I modified my code so the Interfaces are using the @CommitAfter annotation for the desired methods. Also made those methods public (I wanted protected because the DAO class isn't supposed to be directly accessed except by extending classes). Still nothing changed though, it's not committing anything.

It might be useful for me to explain a bit of how it all works:

DAO interface has the @CommitAfter methods
DAOImpl implements this and is an Abstract class
EntityDAO interface is an interface for the methods of a DAO for Entity entity EntityDAOImpl implements EntityDAO and extends DAOImpl and its methods call the @CommitAfter
    methods from the DAOImpl
AppModule binds the EntityDAO.class interface to the id "EntityDAO"
Page Class @Inject EntityDAO and calls the method (say update() ) and in EntityDAO update() calls @CommitAfter public void executeUpdate()

See anything wrong here?

Thanks,
Rich

On 10/08/2010 12:10 PM, Thiago H. de Paula Figueiredo wrote:
On Fri, 08 Oct 2010 12:41:41 -0300, Rich M <rich...@moremagic.com> wrote:

Hi,

Hi!

@CommitAfter
    protected void executeUpdate(Entity entity){

Have you tried making your method public? Another question: what Tapestry-IoC version are you using? Tapestry 5.1.0.5 didn't add annotations put in method implementations in the corresponding method in the created proxy, so @CommitAfter would only work if you put the annotation in an interface method. This was fixed in 5.2, I think.



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to