View Javadoc

1   /*
2    * Created on Sep 14, 2004
3    *
4    * TODO To change the template for this generated file go to
5    * Window - Preferences - Java - Code Style - Code Templates
6    */
7   package ch.ledcom.hephaistos;
8   
9   import net.sf.hibernate.Criteria;
10  import net.sf.hibernate.HibernateException;
11  import net.sf.hibernate.Session;
12  import net.sf.hibernate.expression.Expression;
13  
14  import org.apache.log4j.Logger;
15  import org.apache.struts.action.ActionForm;
16  
17  import ch.ledcom.hephaistos.abstractActions.HibernateEditAction;
18  import ch.ledcom.hephaistos.dao.ProductClass;
19  
20  /***
21   * @author gehel
22   *
23   * @struts.action
24   *  name="productClassForm"
25   *  path="/ProductClassEdit"
26   *  validate=true
27   *  input="/pages/productClassEdit.jsp"
28   * @struts.action-forward
29   *  name="success"
30   *  path="/ProductClassList.do"
31   * @struts.action-forward
32   *  name="failure"
33   *  path="/pages/productClassEdit.jsp"
34   */
35  public class ProductClassEditAction extends HibernateEditAction {
36  
37    private static final Logger logger = Logger
38    .getLogger(ProductClassEditAction.class);
39  
40    /* (non-Javadoc)
41     * @see ch.ledcom.afs.web.HibernateEditAction#doEdit(org.apache.struts.action.ActionForm, net.sf.hibernate.Session)
42     */
43    protected void doEdit(ActionForm form, Session session)
44        throws HibernateException {
45      logger.debug("Casting the ActionForm to ProductClassForm");
46      ProductClassForm productClassForm = (ProductClassForm) form;
47  
48      logger.debug("Getting the old productClass");
49      Criteria criteria = session.createCriteria(ProductClass.class);
50      criteria.add(Expression.eq("id", productClassForm.getId()));
51      
52      ProductClass productClass = (ProductClass) criteria.uniqueResult();
53  
54      productClass.setNo(productClassForm.getNo());
55      productClass.setNameF(productClassForm.getNameF());
56      productClass.setNameD(productClassForm.getNameD());
57  
58      logger.info("Saving the edited product class");
59      session.save(productClass);
60    }
61  
62  }