diff options
Diffstat (limited to 'src/beans/ProductManager.java')
| -rw-r--r-- | src/beans/ProductManager.java | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/src/beans/ProductManager.java b/src/beans/ProductManager.java new file mode 100644 index 0000000..cc0dcaa --- /dev/null +++ b/src/beans/ProductManager.java @@ -0,0 +1,70 @@ +/* + * $RCSFile$ + * + * Created on 11.06.2007 + * for Project: + * by steins + * + * (C) 2005-2006 by + */ +package beans; + +import java.io.IOException; +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.Product; + +public class ProductManager +{ + private Product current; + + public Product getCurrent() + { + return current; + } + + public void select(javax.faces.event.ActionEvent actionEvent) + { + FacesContext facesContext = FacesContext.getCurrentInstance(); + Map params = facesContext.getExternalContext().getRequestParameterMap(); + String selectedId = (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(Product.class, selectedId); + + tx.commit(); + } + catch (Exception ex) + { + ex.printStackTrace(System.err); + tx.rollback(); + } + + FacesContext context = FacesContext.getCurrentInstance(); + try + { + context.getExternalContext().redirect("product.jsf"); + } + catch (IOException e) + { + // TODO Auto-generated catch block + e.printStackTrace(); + } + context.responseComplete(); + } + +} |
