In fact,

I think you guys should start a "best-practices" section on this on
the Wiki - or reuse Werner's one and try to add different approaches
as to what is actually possible with MyFaces and all underlying
frameworks.

regards,

Martin

On 9/1/05, Clément Maignien <[EMAIL PROTECTED]> wrote:
> Could someone who have a clear view of those best practices sumup everything 
> that have bean said in here ?
> What are managed bean roles ?
> What are action bean roles ?
> What are Value Object roles ?
> What are DAO roles ?
> How do they communicate ? Who have reference to who ?
> 
> So much questions that I used to believe the answer, but since this 
> discussion nothing is really clear anymore.
> 
> Thx
> Clément
> 
> -----Message d'origine-----
> De : CONNER, BRENDAN (SBCSI) [mailto:[EMAIL PROTECTED]
> Envoyé : mercredi 31 août 2005 21:55
> À : MyFaces Discussion
> Objet : RE: Thanks and a best practice question in regard to set up of 
> backing bean Actions
> 
> 
> You'll also want an EmployeeBean as a managed bean, which can be defined as 
> having type EmployeeVO.
> 
> Then you'll want your EmployeeAction to have a managed reference to 
> EmployeeBean, and don't instantiate that; let JSF do that.  And don't 
> instantiate it; let JSF do that.  Then, when the user hits Save, JSF will 
> automatically populate your EmployeeBean with the correct values (assuming 
> your JSF page uses EmployeeBean), and your save() method can just refer to 
> the EmployeeBean values.
> 
> - Brendan
> 
> -----Original Message-----
> From: Rick Reumann [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, August 31, 2005 12:48 PM
> To: MyFaces Discussion
> Subject: Thanks and a best practice question in regard to set up of backing 
> bean Actions
> 
> 
> Thanks everyone for your help with the crud demo app I've been working with. 
> (Special thanks to Brendan for his fine "Car" example code that he posted in 
> another thread).
> 
> I want to start out on the right foot doing things in a 'correct' way before 
> I get into some bad practices.
> 
> Currently, I have a list of employees in a table you click on the employee 
> and a backing bean method gets the correct row, grabs the id, gets the true 
> larger Employee object back, then forwards to an Employee form where you can 
> edit the employee info.
> 
> What I'm debating about his how to best set up the backing bean that supports 
> the 'save' of this form. Currently it's part of an "EmployeeAction" object 
> and the pertinent code looks like:
> 
> EmployeeAction.java
> ------------------------------
> private EmployeeVO employee = new EmployeeVO();
> private EmployeesListBean empListBean;
> 
> public EmployeesListBean getEmployeesListBean() {
>     return empListBean;
> }
> 
> public void setEmployeesListBean(EmployeesListBean empListBean) {
>     this.empListBean = empListBean;
> }
> 
> public EmployeeVO getEmployee() {
>     return employee;
> }
> 
> public void setEmployee(EmployeeVO employee) {
>     this.employee = employee;
> }
> 
> public String prepareForEdit() {
>     log.debug("prepareForEdit");
>     this.employee = 
> (EmployeeVO)getEmployeesListBean().getEmployeesModel().getRowData();
>     //get Employee from backend
>     this.employee = EmployeeService.getEmployee( employee.getId() );
>     log.debug("returned employee = "+employee );
>     return "success";
> }
> 
> public String saveAction() {
>     //need way to tell "update" vs "insert" ?
>     log.debug("In saveAction" );
>     EmployeeService.updateEmployee(employee);
>     return "success";
> }
> 
> The prepareForEdit method is called from a link next to the name of each 
> employee on the employees.jsp. After clicking the link the success result 
> will navigate you to emloyeeForm.jsp...
> 
> The part I'm not so sure about is the setup of the EmployeeAction.. I'm 
> having to initialize EmployeeVO employee = new EmployeeVO();
> because if I don't have this, I'll end up with conversion errors since the 
> employee is null when the form submits. Is it better to not create this new 
> instance and maybe use saveState on the form instead?
> 
> Also on the form I'm doing...
> 
> <h:inputText value="#{employeeAction.employee.name}"/>
> 
> I like the above since it saves me from having to add extra set/gets in my 
> EmployeeAction class to deal with the EmployeeVO nested inside of 
> EmployeeAction.However maybe there are some major drawbacks to doing it that 
> way I've implemented it?
> 
> Thanks for any comments.
> 


-- 

http://www.irian.at
Your JSF powerhouse - 
JSF Trainings in English and German

Reply via email to