[jboss-cvs] jboss-seam/examples/spring/src/org/jboss/seam/example/spring ...

Michael Youngstrom youngm at gmail.com
Wed Mar 28 18:46:50 EDT 2007


  User: myoungstrom
  Date: 07/03/28 18:46:50

  Modified:    examples/spring/src/org/jboss/seam/example/spring     
                        UserService.java LoginAction.java
                        RegisterAction.java BookingService.java
                        ChangePasswordAction.java
  Log:
  Initial Commit for JBSEAM-991
  
  Revision  Changes    Path
  1.5       +68 -70    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.4
  retrieving revision 1.5
  diff -u -b -r1.4 -r1.5
  --- UserService.java	21 Feb 2007 17:23:34 -0000	1.4
  +++ UserService.java	28 Mar 2007 22:46:50 -0000	1.5
  @@ -1,18 +1,20 @@
  -/**
  - *
  - */
   package org.jboss.seam.example.spring;
   
   import javax.persistence.EntityManager;
  +import javax.persistence.PersistenceContext;
   import javax.persistence.PersistenceException;
   
  +import org.springframework.transaction.annotation.Transactional;
  +
   /**
  - * @author youngm
  + * @author Mike Youngstrom
    *
    */
   public class UserService {	
  +	@PersistenceContext
       private EntityManager entityManager;
   
  +	@Transactional
       public boolean changePassword(String username, String oldPassword, String newPassword) {
           System.out.println("change password " + oldPassword + " to " + newPassword);
           if (newPassword == null || newPassword.length()==0) {
  @@ -29,6 +31,7 @@
           }
       }
   
  +	@Transactional
       public User findUser(String username) {
           if (username == null || "".equals(username)) {
               throw new IllegalArgumentException("Username cannot be null");
  @@ -36,6 +39,7 @@
           return entityManager.find(User.class, username);
       }
   
  +	@Transactional
       public User findUser(String username, String password) {
           try {
               return (User) 
  @@ -48,6 +52,7 @@
           }
       }
   
  +	@Transactional
       public void createUser(User user) throws ValidationException {
           if (user == null) {
               throw new IllegalArgumentException("User cannot be null");
  @@ -60,11 +65,4 @@
   
           entityManager.persist(user);
       }
  -
  -    /**
  -     * @param session the session to set
  -     */
  -    public void setEntityManager(EntityManager entityManager) {
  -        this.entityManager = entityManager;
  -    }
   }
  
  
  
  1.3       +58 -58    jboss-seam/examples/spring/src/org/jboss/seam/example/spring/LoginAction.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: LoginAction.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/spring/src/org/jboss/seam/example/spring/LoginAction.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -b -r1.2 -r1.3
  --- LoginAction.java	21 Feb 2007 14:37:49 -0000	1.2
  +++ LoginAction.java	28 Mar 2007 22:46:50 -0000	1.3
  @@ -1,4 +1,4 @@
  -//$Id: LoginAction.java,v 1.2 2007/02/21 14:37:49 nrichards Exp $
  +//$Id: LoginAction.java,v 1.3 2007/03/28 22:46:50 myoungstrom Exp $
   package org.jboss.seam.example.spring;
   
   import org.jboss.seam.ScopeType;
  @@ -19,7 +19,7 @@
   	@Out(required = false)
   	private User user;
   
  -	@In(create=true)
  +	@In("#{userService}")
   	private UserService userService;
   
   	@In
  
  
  
  1.4       +2 -2      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.3
  retrieving revision 1.4
  diff -u -b -r1.3 -r1.4
  --- RegisterAction.java	20 Mar 2007 16:11:36 -0000	1.3
  +++ RegisterAction.java	28 Mar 2007 22:46:50 -0000	1.4
  @@ -1,4 +1,4 @@
  -//$Id: RegisterAction.java,v 1.3 2007/03/20 16:11:36 myoungstrom Exp $
  +//$Id: RegisterAction.java,v 1.4 2007/03/28 22:46:50 myoungstrom Exp $
   package org.jboss.seam.example.spring;
   
   import static org.jboss.seam.ScopeType.EVENT;
  @@ -16,7 +16,7 @@
       @In
       private User user;
   
  -    @In
  +    @In("#{userService}")
       private UserService userService;
   
       @In
  
  
  
  1.8       +28 -9     jboss-seam/examples/spring/src/org/jboss/seam/example/spring/BookingService.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: BookingService.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/spring/src/org/jboss/seam/example/spring/BookingService.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -b -r1.7 -r1.8
  --- BookingService.java	20 Mar 2007 21:33:03 -0000	1.7
  +++ BookingService.java	28 Mar 2007 22:46:50 -0000	1.8
  @@ -5,35 +5,46 @@
   import java.util.Collections;
   import java.util.List;
   
  +import javax.persistence.EntityManager;
  +import javax.persistence.PersistenceException;
  +
  +import org.springframework.orm.jpa.JpaCallback;
   import org.springframework.orm.jpa.support.JpaDaoSupport;
  +import org.springframework.transaction.annotation.Transactional;
   
   /**
    * Example of using the JpaDaoSupport.
    *
  - * @author youngm
  + * @author Mike Youngstrom
    */
   public class BookingService 
       extends JpaDaoSupport 
   {
       @SuppressWarnings("unchecked")
  -    public List<Hotel> findHotels(String searchPattern, int firstResult, int maxResults) {
  -        return getJpaTemplate().getEntityManager()
  -                               .createQuery("select h from Hotel h where lower(h.name) like :search or lower(h.city) like :search or lower(h.zip) like :search or lower(h.address) like :search")
  +    @Transactional
  +    public List<Hotel> findHotels(final String searchPattern, final int firstResult, final int maxResults) {
  +        return getJpaTemplate().executeFind(new JpaCallback() {
  +        	public Object doInJpa(EntityManager em) throws PersistenceException {
  +                return em.createQuery("select h from Hotel h where lower(h.name) like :search or lower(h.city) like :search or lower(h.zip) like :search or lower(h.address) like :search")
                                  .setParameter("search", searchPattern)
                                  .setMaxResults(maxResults)
                                  .setFirstResult(firstResult)
                                  .getResultList();
       }
  +        });
  +    }
   
   
   
       @SuppressWarnings("unchecked")
  +    @Transactional
       public List<Booking> findBookingsByUsername(String username) {
           return getJpaTemplate().findByNamedParams("select b from Booking b where b.user.username = :username order by b.checkinDate",
                                                     Collections.singletonMap("username", username));
   
       }
   
  +    @Transactional
       public void cancelBooking(Long bookingId) {
           if (bookingId == null) {
               throw new IllegalArgumentException("BookingId cannot be null");
  @@ -60,6 +71,7 @@
   
   
   
  +    @Transactional
       public void bookHotel(Booking booking) 
           throws ValidationException 
       {
  @@ -69,10 +81,17 @@
           getJpaTemplate().flush();
       }
       
  +    @Transactional
       public void testNonWebRequest() {
  -    	System.out.print("Yup. successfully called the method");
  +    	List<Hotel> hotels = findHotels("%", 0, 1);
  +    	if(!hotels.isEmpty()) {
  +    		System.out.println("Asynchronously found hotel: "+hotels.get(0).getName());
  +    		return;
  +    	}
  +    	System.out.println("No Hotels Found.");
       }
   
  +    @Transactional
       public Hotel findHotelById(Long hotelId) {
           if (hotelId == null) {
               throw new IllegalArgumentException("hotelId cannot be null");
  
  
  
  1.3       +52 -52    jboss-seam/examples/spring/src/org/jboss/seam/example/spring/ChangePasswordAction.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: ChangePasswordAction.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/spring/src/org/jboss/seam/example/spring/ChangePasswordAction.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -b -r1.2 -r1.3
  --- ChangePasswordAction.java	21 Feb 2007 14:37:49 -0000	1.2
  +++ ChangePasswordAction.java	28 Mar 2007 22:46:50 -0000	1.3
  @@ -16,7 +16,7 @@
       @In @Out
       private User user;
   
  -    @In(create=true)
  +    @In("#{userService}")
       private UserService userService;
   
       private String verify;
  
  
  



More information about the jboss-cvs-commits mailing list