我需要帮助!我花了几天时间来寻找以下用例的解决方案。请原谅我没有代码。
一个Web输入/编辑表单:
用户详细信息 - 包含用户名,uploadfileName等,以及“保存” 和“上传”按钮
Primefaces FileUpload自定义屏幕:它嵌入在对话框中,并且位于单独的xhtml文件中(用于可重用性)。
问题是如何从Upload Dialog传递uploadedfileName值来更新调用(主)用户页面中的uploadfileName outputText。
例如,在Vaadin中,在特立尼达的情况下可以使用ActionListener或ReturnActionListener。
感谢您的帮助(提前)。
答案 0 :(得分:0)
将bean放在视图范围内。然后,可以在同一视图中的所有表单中使用同一个bean实例。
@ManagedBean
@ViewScoped
public class Register {
// ...
}
您可以互相注入视图范围的bean。您可以在注册表单的bean中注入上载表单的bean,并在操作方法中访问它。
@ManagedBean
@ViewScoped
public class Register {
@ManagedProperty("#{upload}")
private Upload upload;
// ...
}
如果它是物理上独立的页面并不重要,只要您将它们包含在同一个主视图中,例如: <ui:include>
或复合,然后在回发中维护相同的视图状态。