2013-02-26 15 views
0

我在數據表顯示在bean類employee bean類的員工對象的列表,並希望在彈出編輯從數據表中的特定行下面通過引導到不同的頁面編輯數據表中的行(彈出)

一個datagrid所有的employee細節描述,每一行都有edit button.On點擊edit按鈕,彈出新應特別點擊的員工和編輯後,現有的信息顯示,這些變化必須是反映在列表中的特定對象以及數據表中。

我掙扎,但沒有發現任何解決方案來傳遞對象,在彈出的編輯。

+0

擦鞋我們你的代碼,不要指望我們將建立整體解決方案。你應該表現出一些努力。 – partlov 2013-02-26 10:22:06

回答

0

我是新太;)所有你需要做的是創造ManagedBean將負責爲您的數據。例如,讓我們說您的數據庫中有Employee表。首先,您應該創建一個名爲Employee的實體。接下來,您需要創建ManagedBean,它將負責該實體。你需要做的最後一步是創建視圖。

Employee.java(剛剛創建使用NetBeans/Eclipse的這個文件)

@Entity 
public class Employee implements Serializable {  
    private Integer id; 
    private String name; 
    private String surname; 
    private String position; 

    // getters and setters 
} 

EmployeeBean.java

@ManagedBean 
@SessionScoped 
public class EmployeeBean implements Serializable { 

    private Employee employee; 

    public void EmployeeBean() {} 

    // getter and setter for Employee 

    public String save() { 
     // save employee data here 
    }  
} 

employee.xhtml

<h:form> 
    <!-- do it in loop --> 
    <p:inplace editor="true"> 
     <p:inputText value="#{employeeBean.employee.name}" required="true" label="text"/> 
    </p:inplace> 
    <p:inplace editor="true"> 
     <p:inputText value="#{employeeBean.employee.surname}" required="true" label="text"/> 
    </p:inplace> 
    <h:commandButton action="#{employeeBean.save}" /> 
</h:form> 

使用<inplace/>你的數據會在Ajax事件中改變,所以ManagedBean應該(我認爲這樣但我可能是錯的)SessionSc製作的通訊資料。如果不是你的bean會鬆動狀態。

+0

我仍然無法做到這一點,因爲我必須使用彈出式菜單。我的舊值沒有得到反映在彈出頁面編輯我想要的。可能我不能夠選擇特定的行來更新setpropertyactionlistener。 – 2013-02-27 09:55:25

+0

你可以粘貼一些代碼嗎?我認爲你不想在對話中做到這一點並不重要。 您可以使用primefaces對話框模塊來在對話框中顯示它http://www.primefaces.org/showcase/ui/dialogHome.jsf – pepuch 2013-02-27 18:47:22

+0

我限制使用richfaces – 2013-02-28 04:34:16

相關問題