rabie123 بتاريخ: 2 مارس 2018 تقديم بلاغ مشاركة بتاريخ: 2 مارس 2018 السلام عليكم ورحمة الله وبركاته اريد توضيح هذا الكود public void refresh_action() { FacesContext fc = FacesContext.getCurrentInstance(); String refreshpage = fc.getViewRoot().getViewId(); ViewHandler ViewH = fc.getApplication().getViewHandler(); UIViewRoot UIV = ViewH.createView(fc, refreshpage); UIV.setViewId(refreshpage); fc.setViewRoot(UIV); } ولما بنفذه على هذا النحو هذه الرسالة (تم الحفظ) لا تظهر refresh_action(); FacesMessage message = new FacesMessage("تم الحفظ"); FacesContext.getCurrentInstance().addMessage(null, message); وهل هى الافضل ام execute على هذا النحو public String refresh_det_action() { BindingContainer bindings = getBindings(); OperationBinding operationBinding = bindings.getOperationBinding("Execute1"); Object result = operationBinding.execute(); if (!operationBinding.getErrors().isEmpty()) { return null; } return null; } اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
ahmed maher_153152 بتاريخ: 2 مارس 2018 تقديم بلاغ مشاركة بتاريخ: 2 مارس 2018 قم باستخدام كلاسات ADFUtils and JSFUtils افضل اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
rabie123 بتاريخ: 2 مارس 2018 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 2 مارس 2018 هذه الطريقة public void refresh_action() { FacesContext fc = FacesContext.getCurrentInstance(); String refreshpage = fc.getViewRoot().getViewId(); ViewHandler ViewH = fc.getApplication().getViewHandler(); UIViewRoot UIV = ViewH.createView(fc, refreshpage); UIV.setViewId(refreshpage); fc.setViewRoot(UIV); } فيها ميزة انه بيحافظ على ال سجل الحالى فى شاشة Master_Details اما execute بيظهر اول سجل فى ال Masrter المشكلة فى السطر الخاص بالرسائل لا تفعل اى الرسالة لا تظهر بعد عملية الحفظ بالرغم من انها كتبت بعد سطر ال refresh وهذا سبب سؤالى عنها كم اريد معرفىة فكرتها كيف تعمل اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sd4it بتاريخ: 2 مارس 2018 تقديم بلاغ مشاركة بتاريخ: 2 مارس 2018 هذا الكود يقوم بإعادة إنشاء الصفحة من جديد اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
rabie123 بتاريخ: 3 مارس 2018 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 3 مارس 2018 ولما بنفذه على هذا النحو هذه الرسالة (تم الحفظ) لا تظهر refresh_action(); FacesMessage message = new FacesMessage("تم الحفظ"); FacesContext.getCurrentInstance().addMessage(null, message); اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Belal Abdalhuk بتاريخ: 3 مارس 2018 تقديم بلاغ مشاركة بتاريخ: 3 مارس 2018 (معدل) اولا هذه الجزئيه public void refresh_action() { FacesContext fc = FacesContext.getCurrentInstance(); String refreshpage = fc.getViewRoot().getViewId(); ViewHandler ViewH = fc.getApplication().getViewHandler(); UIViewRoot UIV = ViewH.createView(fc, refreshpage); UIV.setViewId(refreshpage); fc.setViewRoot(UIV); } تقوم بعمل refresh للصفحه وبناء مكوناتها مره اخريثانيا هذه الجزئيه public String refresh_det_action() { BindingContainer bindings = getBindings(); OperationBinding operationBinding = bindings.getOperationBinding("Execute1"); Object result = operationBinding.execute(); if (!operationBinding.getErrors().isEmpty()) { return null; } return null; }تستخدم لعمل refresh ل data collection اللي حضرتك مناديها منهابالتالي عندما تستخدم هذا الكودrefresh_action(); FacesMessage message = new FacesMessage("تم الحفظ"); FacesContext.getCurrentInstance().addMessage(null, message)فهو سوف يقوم بعمل تحديث للصفحه وبناء مكوناتها كانها تفتح للمره الاول دون حدوث اي اكشن عليها بالتالي لن ينفذ الامرلو حضرتك محتاج تظهر الرساله بعد عمليه ال commit فحضرتك تقدر تحط الكود ده FacesMessage message = new FacesMessage("تم الحفظ"); FacesContext.getCurrentInstance().addMessage(null, message)بعد جزء التنفيذ في الميثود كما المثال التالي :public String commit_action() { BindingContainer bindings = getBindings(); OperationBinding operationBinding = bindings.getOperationBinding("Commit"); operationBinding.execute(); FacesMessage message = new FacesMessage("تم الحفظ"); FacesContext.getCurrentInstance().addMessage(null, message) return null; } تم تعديل 3 مارس 2018 بواسطة Belal Abdalhuk اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sd4it بتاريخ: 3 مارس 2018 تقديم بلاغ مشاركة بتاريخ: 3 مارس 2018 ولما بنفذه على هذا النحو هذه الرسالة (تم الحفظ) لا تظهر refresh_action(); FacesMessage message = new FacesMessage("تم الحفظ"); FacesContext.getCurrentInstance().addMessage(null, message); لأن غعادة تحميل الصفحة تقوم بإنشاء الصفحة من جديد لا تحتاجها ويكفي عمل partialTriggers اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
rabie123 بتاريخ: 4 مارس 2018 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 4 مارس 2018 اعمل Partial Triggers للرسالة ؟ وكيف؟ ام تقصد حضرتك عمل refresh للصفحة غير مفيدة ؟ اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sd4it بتاريخ: 4 مارس 2018 تقديم بلاغ مشاركة بتاريخ: 4 مارس 2018 أقصد بدلاً من عمل refresh اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
rabie123 بتاريخ: 6 مارس 2018 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 6 مارس 2018 الف شكر يا باشمهندس على هذا التوضيح اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sd4it بتاريخ: 6 مارس 2018 تقديم بلاغ مشاركة بتاريخ: 6 مارس 2018 العفو اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.