[jboss-cvs] jboss-seam/examples/spring/src/org/jboss/seam/example/spring ...
Michael Youngstrom
youngm at gmail.com
Thu Jun 14 19:08:04 EDT 2007
User: myoungstrom
Date: 07/06/14 19:08:04
Modified: examples/spring/src/org/jboss/seam/example/spring
UserService.java RegisterAction.java
Log:
Fixes for: JBSEAM-1459, JBSEAM-1458, JBSEAM-1377
Revision Changes Path
1.6 +13 -1 jboss-seam/examples/spring/src/org/jboss/seam/example/spring/UserService.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: UserService.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/spring/src/org/jboss/seam/example/spring/UserService.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- UserService.java 28 Mar 2007 22:46:50 -0000 1.5
+++ UserService.java 14 Jun 2007 23:08:04 -0000 1.6
@@ -4,6 +4,9 @@
import javax.persistence.PersistenceContext;
import javax.persistence.PersistenceException;
+import org.jboss.seam.annotations.Asynchronous;
+import org.springframework.aop.framework.AopContext;
+import org.springframework.aop.support.AopUtils;
import org.springframework.transaction.annotation.Transactional;
/**
@@ -11,6 +14,8 @@
*
*/
public class UserService {
+ public static ThreadLocal<Boolean> currentThread = new ThreadLocal<Boolean>();
+
@PersistenceContext
private EntityManager entityManager;
@@ -62,7 +67,14 @@
if (existingUser != null) {
throw new ValidationException("Username "+user.getUsername()+" already exists");
}
-
entityManager.persist(user);
}
+
+ @Asynchronous
+ public void sendRegisterEmail() {
+ if(currentThread.get() != null) {
+ throw new RuntimeException("Not really happening asyncrohously");
+ }
+ System.out.println("pretending to send email asyncronously");
+ }
}
1.5 +5 -3 jboss-seam/examples/spring/src/org/jboss/seam/example/spring/RegisterAction.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: RegisterAction.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/spring/src/org/jboss/seam/example/spring/RegisterAction.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- RegisterAction.java 28 Mar 2007 22:46:50 -0000 1.4
+++ RegisterAction.java 14 Jun 2007 23:08:04 -0000 1.5
@@ -1,4 +1,4 @@
-//$Id: RegisterAction.java,v 1.4 2007/03/28 22:46:50 myoungstrom Exp $
+//$Id: RegisterAction.java,v 1.5 2007/06/14 23:08:04 myoungstrom Exp $
package org.jboss.seam.example.spring;
import static org.jboss.seam.ScopeType.EVENT;
@@ -12,7 +12,6 @@
@Name("register")
public class RegisterAction
{
-
@In
private User user;
@@ -33,6 +32,9 @@
try {
userService.createUser(user);
+ userService.currentThread.set(true);
+ userService.sendRegisterEmail();
+ userService.currentThread.set(null);
registered = true;
} catch(ValidationException e) {
facesMessages.add(e.getMessage());
More information about the jboss-cvs-commits
mailing list