بتاريخ: 20 ديسمبر 20169 سنة comment_280999 الرسالة java.lang.NullPointerException من هذا الكود PageInfo pp=(PageInfo)FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("ppKey"); Number accrep=pp.getAccrep(); Number delflag=pp.getDelflag(); Number insflag=pp.getInsflag(); Number upflag=pp.getUpflag(); وفى الشاشة التى تسبق هذه الشاشة السابقة القيم السابقة 1,1,0 PageInfo pp = null; DCBindingContainer dcbc = (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry(); Row row =dcbc.findIteratorBinding("TREE_SUB_VO1Iterator").getCurrentRow(); System.out.println("xxxxxxxxxyyyyyyyyyy "+row); if (row!=null){ pp = new PageInfo(); System.out.println("xxxxxxxxx1111yyyyyyyyyy11111"); pp.setAccrep(( (Number) row.getAttribute("AccRep"))); pp.setDelflag(((Number)row.getAttribute("DelFlag"))); pp.setInsflag(((Number)row.getAttribute("InsFlag"))); pp.setUpflag(((Number)row.getAttribute("UpFlag"))); pp.setPagename((String)row.getAttribute("FormName")); pagename=((String)row.getAttribute("FormName")); System.out.println("ttttttttttttttttt "+row.getAttribute("FormName")); System.out.println("DelFlag "+row.getAttribute("DelFlag")); System.out.println("upflag="+(row.getAttribute("UpFlag"))); System.out.println("insflag.="+(row.getAttribute("InsFlag"))); تقديم بلاغ
بتاريخ: 21 ديسمبر 20169 سنة كاتب الموضوع comment_281042 شكرا يا باشمهندس هو فعلا كان فيه خطأ فى مكان ppKey في session؟ وصححته على هذا النحو PageInfo pp = null; FacesContext context = FacesContext .getCurrentInstance(); DCBindingContainer dcbc = (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry(); Row row =dcbc.findIteratorBinding("TREE_SUB_VO1Iterator").getCurrentRow(); System.out.println("xxxxxxxxxyyyyyyyyyy "+row); if (row!=null){ pp = new PageInfo(); System.out.println("xxxxxxxxx1111yyyyyyyyyy11111"); pp.setAccrep(((Number)row.getAttribute("AccRep"))); pp.setDelflag(((Number)row.getAttribute("DelFlag"))); pp.setInsflag(((Number)row.getAttribute("InsFlag"))); pp.setUpflag(((Number)row.getAttribute("UpFlag"))); pp.setPagename(((String)row.getAttribute("FormName"))); pagename=((String)row.getAttribute("FormName")); context.getExternalContext().getSessionMap().put("ppKey", pp); System.out.println("ttttttttttttttttt "+row.getAttribute("FormName")); System.out.println("DelFlag "+row.getAttribute("DelFlag")); System.out.println("upflag="+(row.getAttribute("UpFlag"))); هى الرسالة اختفت وفضلت مشكلة فى الصفحة التالية بين int و Number وحولت المتغير ال Number الى integer PageInfo pp=(PageInfo)FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("ppKey"); String pagename=pp.getPagename(); int accrep=pp.getAccrep().intValue(); int delflag=pp.getDelflag().intValue(); int insflag=pp.getInsflag().intValue(); int upflag=pp.getUpflag().intValue(); لانه فى save action كنت محتاج المتغير upflag يكون integer if (upflag==0){ FacesMessage message = new FacesMessage("غير مسموح لك بالتعديل"); FacesContext.getCurrentInstance().addMessage(null, message); ii=0; } واشتغلت الشاشة بدون مشاكل تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.