2

JSF Java クラスを使用して、パラメーターを別のページに渡すリンクをプログラムで作成することは可能ですか。

<h:link value="Edit" outcome="edit" >
    <f:param name="id" value="500" />
</h:link>

言い換えれば、上記の JSF マークアップに相当するプログラムは何ですか?

HtmlOutputLink link = new HtmlOutputLink(); // link.? = "Edit"?
// link.? = "edit"?
// link.? = 500?
4

1 に答える 1

10

あなたのコード例は紛らわしいです。には属性<h:outputLink>がまったくありません。outcome代わりに、そのvalue属性が URL を表します。おそらくあなたは使用するつもりでした<h:link>か?

どのような方法でも、リンク コンポーネントの<f:param>インスタンスを作成し、それを子として追加するだけで、プログラムで作成できます。UIParameterを実際に使用したいと仮定した場合のキックオフの例を次に示します<h:link>

HtmlOutcomeTargetLink link = new HtmlOutcomeTargetLink();
link.setValue("Edit");
link.setOutcome("edit");
UIParameter param = new UIParameter();
param.setName("id");
param.setValue("500");
link.getChildren().add(param);
于 2012-06-29T11:49:59.980 に答える