java - JSF - 变量中的托管 bean?

标签 java jsf

奇怪的问题,但我需要找到答案。

有什么方法可以在 JSP 中管理托管 bean?我将尝试解释我想做什么:

想象一下,我有一个 JSP 页面,例如,名为 document.save.jsp 的页面。我有一些不同类型的文件。他们每个人都有自己的 bean 。例如:BillDocument.java、OrderDocument.java 和 ReportDocument.java

我的 jsp 中的 BillDocument.java 是 #{billdoc}
OrderDocument.java -> #{orddoc}.
ReportDocument.java -> #{repdoc}.

它们每个都有方法 save()。在我的 JSP 中,我想调用此方法,但我需要知道它是哪个文档。在我看来,这种结构类似于:

<% String currentBean = ""; 
if(document == BillDocument){ 
   currentBean = #{billdoc};
}
if(document == OrderDocument){
   currentBean = #{orddoc};
}
if(document = ReportDocument){
   currentBean = #{repdoc};
}
 %>

然后,我的带有保存方法的按钮可能是这样的:

<h:commandButton action="currentbean.save"/>

有什么方法可以存储有关 bean 的数据,这些数据将用于此按钮?

感谢您的回复!

最佳答案

为什么没有第四个 bean,它具有所有其他 bean 的属性,并且只调用给定文档类型的相关方法?

即DocumentBean.save() 将调用 BillDocument.save() 或 OrderDocument.save() 或...等。

而不是尝试在您的 JSF 页面中执行此操作。

关于java - JSF - 变量中的托管 bean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2490819/

相关文章:

java - 为什么这个程序用 Java 7 而不是 Java 8 编译?

jsf - 组件 ID j_id? :name has already been found in the view

java - 如何以jsp页面的spring形式获取当前日期

java - 朝向 JAVA_HOME 的 "true"定义

Java:显示进度监视器和子进度监视器的进度

java - 从 J2SE 5.0 学习 Java SE 6 有多难?

java - 如何为Intellij IDEA创建Seam项目?

java - 使用 "JSF"或 JSTL 标签迭代 java.util.Map 时出现问题

jsf - 在 Primefaces JSF2.x 中使用请求范围的托管 bean

java - 如何动态地重复调用JSF bean方法?