2015-10-19 74 views
0

之間傳遞參數我有兩個託管bean類型@ViewScoped。 一個bean列出了用戶的項目。另一個顯示項目的擴展信息。我通過url傳遞了項目的ID,這是它與viewscoped bean一起工​​作的唯一方式。在ViewScoped

但我不喜歡這種方式,因爲用戶可以嘗試更改值url並查看來自其他用戶的項目。我想知道在頁面之間傳遞參數的方式有沒有被用戶看到,並且避免了額外的安全檢查。

+3

請看看http://stackoverflow.com/questions/20880027/passing-parameters-to-a-view-scoped-bean-in-jsf或http://stackoverflow.com/questions/16817395/how -to-send-data-between-views-having-a-viewscoped-bean或者這裏是@Balusc http://stackoverflow.com/questions/25694423/pass-an-object-between-viewscoped-beans-without-using -get-PARAMS –

回答

0

如果建議的閃存範圍不可用另一種方式來做它沒有額外的安全檢查將使用@SessionScoped帶註釋的bean。但是請確保會話scoped bean只包含必要的數據,否則會遇到其他麻煩。

例如:

@SessionScoped 
public class AccessibleItems { 

    private List<Items> items; // or private List<Integer> itemIds; 

} 

@ViewScoped 
public class ItemView { 

    @ManagedProperty(value="#{accessibleItem}") 
    private AcessibleItems accessibleItems; 

} 

但畢竟在我的愚見做額外的安全檢查。因爲更新數據時不會遇到任何問題,特別是在許多地方使用它們,而且您的網頁設計更好。

相關問題