Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package com.Yakreem15.managedBean; import com.Yakreem15.domain.Product; import com.Yakreem15.domain.Product_Photos; import com.Yakreem15.ejb.ProductBean; import java.io.IOException; import java.io.Serializable; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; import javax.annotation.PostConstruct; import javax.ejb.EJB; import javax.faces.bean.ManagedBean; import javax.faces.bean.ViewScoped; import javax.faces.context.FacesContext; import org.apache.commons.io.IOUtils; import org.primefaces.event.FileUploadEvent; import org.primefaces.model.UploadedFile; /** * * @author yasser-asiri */ @ManagedBean @ViewScoped public class ProductMBean implements Serializable { /** * Creates a new instance of ProductMBean */ @EJB ProductBean productBean; Product product = new Product(); private List<Product> poroductList; public List<Product> getPoroductList() { return poroductList; } public void setPoroductList(List<Product> poroductList) { this.poroductList = poroductList; } private Product selectedProduct; public Product getSelectedProduct() { return selectedProduct; } public void setSelectedProduct(Product selectedProduct) { this.selectedProduct = selectedProduct; } public Product getProduct() { return product; } public void setProduct(Product product) { this.product = product; } public ProductMBean() { } public String createProduct() { String userEmail = findCurrentUserEamil(); System.out.println(uploadedFiles == null); System.out.println("before iterating"); for (UploadedFile uploadedFile : uploadedFiles) { System.out.println(uploadedFile == null); System.out.println("in the loop"); if (uploadedFile != null) { byte[] foto; try { foto = IOUtils.toByteArray(uploadedFile.getInputstream()); System.out.println(Arrays.toString(foto)); Product_Photos temp = new Product_Photos(); temp.setProduct_photo(foto); temp.setProduct(product); photo_list.add(temp); } catch (IOException ex) { Logger.getLogger(ProductMBean.class.getName()).log(Level.SEVERE, null, ex); } } } product.setPhotos(photo_list); productBean.addProdcut(product, userEmail); return "/index"; } public List<Product> getAllProducts() { return poroductList; } public String findCurrentUserEamil() { return FacesContext.getCurrentInstance().getExternalContext().getRemoteUser(); } public String showProduct() { // this.selectedProduct=(Product)datatabel.getRowData(); return "productInfo"; } @PostConstruct public void init() { poroductList = productBean.getAllProducts(); uploadedFiles = new ArrayList<UploadedFile>(); photo_list = new ArrayList<Product_Photos>(); } private List<UploadedFile> uploadedFiles; private List<Product_Photos> photo_list; public void handleFileUpload(FileUploadEvent event) { uploadedFiles.add(event.getFile()); } }