Skip to content

Commit

Permalink
Add transaction aspect in JeevesDispatcherServlet
Browse files Browse the repository at this point in the history
  • Loading branch information
Jesse Eichar authored and josegar74 committed Jun 4, 2014
1 parent 587fac2 commit 88c2a6c
Showing 1 changed file with 23 additions and 0 deletions.
@@ -1,17 +1,40 @@
package jeeves.config.springutil;

import jeeves.TransactionAspect;
import jeeves.TransactionTask;
import org.fao.geonet.domain.User;
import org.jdom.Element;
import org.springframework.transaction.TransactionStatus;
import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.servlet.DispatcherServlet;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* @author Jesse on 6/3/2014.
*/
public class JeevesDispatcherServlet extends DispatcherServlet{

private String nodeId;

@Override
protected void doDispatch(final HttpServletRequest request, final HttpServletResponse response) throws Exception {

TransactionAspect.runInTransaction("jeevesDispatchServlet", getWebApplicationContext(),
TransactionAspect.TransactionRequirement.CREATE_ONLY_WHEN_NEEDED,
TransactionAspect.CommitBehavior.ONLY_COMMIT_NEWLY_CREATED_TRANSACTIONS,
false, new TransactionTask<Void>() {
@Override
public Void doInTransaction(TransactionStatus transaction) throws Throwable {
JeevesDispatcherServlet.super.doDispatch(request, response);

return null;
}
});
}

@Override
protected WebApplicationContext findWebApplicationContext() {
final ServletContext servletContext = getServletContext();
Expand Down

0 comments on commit 88c2a6c

Please sign in to comment.