diff options
Diffstat (limited to 'src/beans/CategoryManager.java')
| -rw-r--r-- | src/beans/CategoryManager.java | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/src/beans/CategoryManager.java b/src/beans/CategoryManager.java new file mode 100644 index 0000000..7b96d2f --- /dev/null +++ b/src/beans/CategoryManager.java @@ -0,0 +1,83 @@ +/* + * $RCSFile$ + * + * Created on 08.03.2007 + * for Project: + * by steins + * + * (C) 2005-2006 by + */ +package beans; + +import java.io.IOException; +import java.util.Collection; +import java.util.Map; + +import javax.faces.context.FacesContext; +import javax.persistence.EntityManager; +import javax.persistence.EntityManagerFactory; +import javax.persistence.EntityTransaction; +import javax.persistence.Persistence; + +import jpa.Category; + +public class CategoryManager +{ + private Category current; + + public Category getCurrent() + { + return current; + } + + public void setCurrent(Category current) + { + this.current = current; + } + + public Collection getCategories() + { + EntityManagerFactory factory = Persistence + .createEntityManagerFactory("catalog"); + EntityManager manager = factory.createEntityManager(); + return manager.createQuery("SELECT c FROM Category c ").getResultList(); + } + + public void select(javax.faces.event.ActionEvent actionEvent) + { + FacesContext facesContext = FacesContext.getCurrentInstance(); + Map params = facesContext.getExternalContext().getRequestParameterMap(); + Integer selectedId = Integer.valueOf((String) params.get("selectedId")); +// System.out.println(selectedId); + + EntityManagerFactory factory = Persistence + .createEntityManagerFactory("catalog"); + EntityManager manager = factory.createEntityManager(); + + EntityTransaction tx = manager.getTransaction(); + tx.begin(); + try + { + current = manager.find(Category.class, selectedId); +// System.out.println(current.getName()); + tx.commit(); + } + catch (Exception ex) + { + ex.printStackTrace(System.err); + tx.rollback(); + } + + FacesContext context = FacesContext.getCurrentInstance(); + try + { + context.getExternalContext().redirect("products.jsf"); + } + catch (IOException e) + { + // TODO Auto-generated catch block + e.printStackTrace(); + } + context.responseComplete(); + } +} |
