Bonjour !
Je developpe une petite boutique en ligne (dans le cadre d'un exercice) en J2EE et ai un petit soucis et j'ai donc besoin de quelques explications.
Le problème se situe dans une gestion de panier de la boutique
Voici le code de la servlet
voici le code du bean ProduitListBean
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //recup l'id du produit selectionner HttpSession session = request.getSession(true); String id = request.getParameter("id"); int id_prod = Integer.parseInt(id); ProduitsBean m_prod = new ProduitsBean(); //recup du panier ProduitsListBean m_panier = (ProduitsListBean)session.getAttribute("panier"); try{ //recup du produit associé à l'id InitialContext jndi = new InitialContext(); AccesCatalogueBeanRemote remote = (AccesCatalogueBeanRemote)jndi.lookup("AccesCatalogueJNDI/remote"); m_prod = remote.getProduit(id_prod); } catch (Exception e) { e.printStackTrace(); } //ajout du produit au panier System.out.println(m_prod.getName()); //cette instruction fonctionne donc m_prod existe bien ! m_panier.add_prod(m_prod); //la null pointer exception intervient ici session.setAttribute("panier", m_panier); response.sendRedirect("panier.jsp"); }
Il y a donc un problème lorsque je veux ajouter mon produit au panier avec la servlet.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 public class ProduitsListBean implements Serializable { private ArrayList<ProduitsBean> list_prod; public ProduitsListBean(){ } public ArrayList<ProduitsBean> getList_prod() { return list_prod; } public void setList_prod(ArrayList<ProduitsBean> list_prod) { this.list_prod = list_prod; } public boolean add_prod(ProduitsBean prod){ System.out.println("ajout d'un produit");//cela s'affiche System.out.println(prod.getId()+"");//Null Pointer Exception ici ! return list_prod.add(prod); } }
Je pense que ca vient du passage de l'objet en paramètre mais ne comprends pas pourquoi cela ne fonctionne pas.
Si quelqu'un peut me fournir une explication je l'en remercie![]()
Partager