我正在尝试将一些参数从一个托管 bean 传递到另一个托管 bean。我看到了类似的问题并应用了他们的解决方案但不起作用。这是代码:
在我的 moneytransfer.xhtml 文件中:
<h:commandButton action="#{moneyTransferBean.transferAccounts()}" value="Continue">
<f:param name="sender" value="#{extTableSelectionBean.sender}" />
</h:commandButton>
我的 extTableSelectionBean:
@ManagedBean
@ViewScoped
public class ExtTableSelectionBean implements Serializable {
private Account sender;
public void setSender(Account sender){
this.sender=sender;
}
public Account getSender(){
return sender;
}
和moneyTransferBean:
@ManagedBean
@ViewScoped
public class MoneyTransferBean {
@ManagedProperty("#{extTableSelectionBean .sender}")
private Account sender;
//NO SETTER-GETTER FOR sender here
public void transferAccounts() throws IOException {
if (sender != null)
{
FacesContext.getCurrentInstance().getExternalContext().redirect("transferaccount.xhtml");
}
}
}
我看到在 extTableSelectionBean 中,“发件人”已成功设置。问题是,当我到达moneyTransferBean 时,发件人变为空。我该怎么办,我做错了什么?
谢谢