私が持っているものは以下の通りです。
Bean1.java
@ManagedBean(name = "bean1")
@ViewScoped
public class Bean1 {
public String username;
// some variables and getter and setter
public String sendPassword() {
String emailIdToSend = data from database with respect to username with below query
//SELECT emailId FROM userSysInfo WHERE username=?
// now I want to set this emailIdToSend to Bean2 displayEmailId
}
}
page1.xhtml
<h:inputText id="username" value="#{bean1.username}" />
<h:commandButton value="Submit" action="#{bean1.sendPassword()}" />
Bean2.java
@ManagedBean(name = "bean2")
@ViewScoped
public class Bean2 {
public String displayEmailId;
// getter and setter for this
}
}
page2.xhtml
We have sent a new password on your registered email id at #{bean2.displayEmailId}
<br />
Please login into system using the new password.
私が欲しいのはbean1.var001
値をに設定することですbean2.var002
これを行う方法はありますか?
以下で試してみましたが、動作しません。
Bean2 bean2 = new Bean2();
bean2.setVar002(var001);
編集1
さて、私がやろうとしているのは「パスワードを忘れたページ」です。
Page1で、ユーザー名を尋ねます。ユーザー名を取得してSubmitと入力すると、背面にbean1があります。ここでは、ユーザー名を確認し、それぞれの電子メールIDでパスワードを送信します。メールが送信されると、bean2としてバックBeanがあるページに移動します。2ページ目にメールIDを表示したいので、メールを送信した後、bean1でメールIDをbean2 var002に設定し、2ページ目に表示します。