الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

محتاج مثال عن Login Screen ب Jsf

Featured Replies

بتاريخ:

السلام عليكم و رحمة الله
انا بدور على اى مثال لطريقة عمل login screen ب JSF technology
دورت على النت بس الامثلة الى لقيتها مش واضحة و مش بال jdeveloper
ممكن لو حد يعرف يعمل مثال يقوم بالتالى
1- شاشة دخول يكون فيها اسم المستخدم و كلمة السر
2- لو كان اسم المستخدم = hr و كلمة السر = hr يفتح صفحة جديدة مكتوب فيها welcome
3- لو اسم المستخدم او كلمة السر خطأ يظهر كلام فى نفس الصفحة مكتوب باللون الاحمر يقول ان كلمة السر خطأ

انا شغال ب Jdeveloper 10g release 1.3

جذاكم الله خيرا

بتاريخ:

شوف المثال ده من هنا واذا وقفت معاك حاجه قول عليها

بتاريخ:
  • كاتب الموضوع

جذاك الله خيرا على الرد
و جارى التنفيذ

بتاريخ:
  • كاتب الموضوع

شكرا جزيلا على المثال الرائع
انا لما ضيفت ال method اللى اسمها checkLoginCredentials فى ال class بتاعتى اللى اسمها EmpLoginViewObjImpl
ظهرلى خطا فى السطر دة

كـود PHP
EmpLoginViewObjImpl vo = (EmpLoginViewObjImpl)getEmpLoginViewObj1();

الخطأ بيقول ان ال method getEmpLoginViewObj1() مش موجودة

انا مش عارف اية ال method دى دة مش متكلم عنها فى المثال خالص
هو يقصد بيها اية
مرفق صورة للتوضيح
ربنا يجعله فى ميزان حسناتك
جزاكى الله خيرا

post-2550-1266222164_thumb.jpg

بتاريخ:
  • كاتب الموضوع

السلام عليكم
مرفق الخطوات التى قمت بها و الخطأ الذى ظهر لى
ارجو المساعدة
شكرا جزيلا

Folder.rar

بتاريخ:
انا لما ضيفت ال method اللى اسمها checkLoginCredentials فى ال class بتاعتى اللى اسمها EmpLoginViewObjImpl


اولا :نحن لا نضيف الميثود هنا ولكن اى ميثود احنا محتاجين ان نظهرها فى ال Interface بنضعها فى ال AppModuleImpl وفى المثال ده بنعمل كده

EmpLoginViewObjImpl vo = (EmpLoginViewObjImpl)getEmpLoginViewObj1();



ومعنى ذلك ان اى فيو اوبجكت انت بتضيفه للApplication module بتاعك ؛ ال Application Module بيعمل له Set and Get method فى ال AppModuleImpl

الايرور اللى عندك انك مكتبتش الميثود دى فى الApplication Module class اللى اسمها ApplicationModuleImpl وبالتالى هو مش شايف الميثود دى لانها موجوده هناك وليس فى EmpLoginViewObjImpl

خللى بالك فى شرح الكود

هنا بينادى على الفيو اوبجكت

EmpLoginViewObjImpl vo = (EmpLoginViewObjImpl)getEmpLoginViewObj();



وهنا بيديله الBind Variable بتاعه وبيخليه ينفذ ال Query

  vo.setNamedWhereClauseParam("LastName",pwd_form);
	vo.executeQuery();



طبعا لو الفيو اوبجكت ما جابش داتا يبقى اكيد الباسوورد خطا

  int rowCount=vo.getEstimatedRangePageCount();
	if(rowCount==0) {
	throw new JboException("Password doesn't match");
	}
	
}



وبعدين بيعرض الميثود فى الClient Interface عشان نقدر نشوفها فى الداتاكنترول كما فى الصورة

10466968.png

وبعدين بنعمل ال Navigation Case كما فى الصورة

518820709.jpg

وبعدين بعد مبتعمل Drag and drop للميثود فى الصفحة ك ADF parameter Form بنعمل Double Click على الButton عشان نكتب الكود الموجود فى الTutorial على الButton وشرحه كالتالى

هنا بتعرف String عشان يرجع الNavigation Case اللى اسمها "error"

  String returnStr="error";



وهنا بتستدعى الميثود اللى عملتها فى AppModuleImpl وبتعملها Execute

 BindingContainer bindings = getBindings();
	OperationBinding operationBinding = 
		bindings.getOperationBinding("checkLoginCredentials");
 Object result = operationBinding.execute();



وهنا بتقولها لو الميثود اتنفذت من غير اخطاء خللى ال String اللى هو هنا بيمثل ال outcome ب "success"

 if (operationBinding.getErrors().isEmpty()) {
		returnStr= "success";
 }



ملحوظه: ممكن تخلى الFirstName ايضا Bind Variable بحيث انه يكون بدل ال UserName

بتاريخ:
  • كاتب الموضوع

السلام عليكم و رحمة الله
الاخت هاله جزاكى الله خيرا على مساعدتك
انا وقف قدامى خطأ تانى معلش ممكن تساعدينى فية
فى method اسمها getBindings() مش موجودة
مرفق الصورة و التفاصيل

post-2550-1266307938_thumb.jpg

بتاريخ:
  • كاتب الموضوع

دة ملف ورد فى شرح للى قمت بيه

application_module.rar

بتاريخ:
  • كاتب الموضوع

الاخت هاله انا حاولت تانى و عرفت ان الخطأ اللى عملته هو انى ضيفت ال managed_bean للكلاس اللى اسمها AppModuleImpl
لكن لما عدلت تانى و ضيفتها للكلاس EmpLoginViewObjImpl اشتغلت كويس و محصلش اخطاء

الوقتى بعمل run for the application و فعلا بيظهر ال login page
لكن لما اضغط على ال button بيظهر error page كما فى الصورة
اعتقد ان المشكلة فى ال navigation
هل فى شئ مختلف بنعملة فى ال navigation
صورة ال navigation مرفقه

و دى اخر السطور اللى بتظهر فى ال error page

Caused by: javax.faces.el.EvaluationException: javax.faces.FacesException: javax.faces.FacesException: The scope of the referenced object: '#{bindings}' is shorter than the referring object at com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:190) at com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:143) at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:143) at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.ja
va:92) ... 27 moreCaused by: javax.faces.FacesException: javax.faces.FacesException: The scope of the referenced object: '#{bindings}' is shorter than the referring object at com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(A
pplicationAssociate.java:292) at com.sun.faces.el.VariableResolverImpl.resolveVariable(VariableResolverImpl.java:
97) at oracle.adfinternal.view.faces.el.AdfFacesVariableResolver.resolveVariable(AdfFac
esVariableResolver.java:40) at oracle.adfinternal.view.faces.model.VariableResolverUtils$JspResolver.resolveVariable(VariableResolverUtils.java:79) at com.sun.faces.el.impl.NamedValue.evaluate(NamedValue.java:145) at com.sun.faces.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.j
ava:263) at com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:160) ... 30 moreCaused by: javax.faces.FacesException: The scope of the referenced object: '#{bindings}' is shorter than the referring object at com.sun.faces.config.ManagedBeanFactory.evaluateValueBindingGet(ManagedBeanFacto
ry.java:911) at com.sun.faces.config.ManagedBeanFactory.setPropertiesIntoBean(ManagedBeanFactory
.java:567) at com.sun.faces.config.ManagedBeanFactory.newInstance(ManagedBeanFactory.java:253) at com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(A
pplicationAssociate.java:282)

post-2550-1266315259_thumb.jpg

post-2550-1266315270_thumb.jpg

post-2550-1266315409_thumb.jpg

تم تعديل بواسطة tarek_fathi

بتاريخ:

الاخ / طارق

مشكلتك الرئيسيه ان حضرتك مش فاهم موضوع الFramework لل ADF ماشى ازاى هو ببساطه ماشى بالظبط زى الJ2EE عشان كده لما ييتكلم عن Managed Bean او Backing Bean فهو بيتكلم عن كلاس جافا بتبقى معموله لكل صفحه يعنى موجوده فى الانترفيس وليس فى طبقه الModel من الاساس وفايدتها ان اول ما بتعمل Drag and Drop لاى عنصر (InputText او radiobutton او اى عنصر اخر الكلاس اللى تابعه للصفحه بتعمله Set and Get methods للعنصر ده وبالتالى انت تقدر تدى اى قيمه ل Outputtext مثلا عن طريق الBacking Bean للصفحه والكلاس دى بتتكون لاى صفحه عن طريق وانت بتكريت الصفحه تعلم على الاختيار ده كما فى الصورة



ddddddddddddddcm.jpg

وبالتالى اول ما تضغط Double click على ال Button حظهر لك اسم الباكينج بين بتاع الصفحه وعلم على Generate ADF Bindings وعدل فيه تبعا للكود اللى فى الدرس

111111111111111111o.jpg

والكتاب اللى فى المشاركه دى حيفيدك فى فهمك لل ADF من هنا

بتاريخ:
  • كاتب الموضوع

السلام عليكم
جزاكى الله خيرا
انا هقرا الكتاب اول افضل و انغذ المثال مرة تانية
شكرا جزيلا و جعله الله فى ميزان حسناتك

  • بعد 4 شهور...
بتاريخ:

Dear My Friend


Done, Use this URL Login Form

Many Thanks

  • بعد 1 شهر...
بتاريخ:

أخى الكريم
المثال موجود بالفعل / قمت بوضعة مسبقا
http://www.araboug.org/ib/index.php?showtopic=42671

شكرا

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.