0

外部HTMLファイルを文字列として読み取るサーブレットがあります。このhtml内に特定のボタンを追加して、EJBの1つを参照したいと思います。

したがって、私は挿入しました:

String button=<h:commandButton value="Test" action="#{myBean.buttonMethod()}" />;

ただし、この式は、サーブレットの出力では次のように評価されません。

out.println(thePage);

ボタンのコードだけが表示されますが、解釈されません。サーブレット内のメソッドの1つへのそのような参照を動的に挿入するにはどうすればよいですか?

4

1 に答える 1

0

それはHTMLコードではありません。それがJSFコードです。JSFコードは、FaceletsまたはJSPファイルでタグを宣言し、FacesServletそのURLを呼び出して処理することで実行されることになっています。あなたが考えているようにJSFを理解しているのは間違いなくウェブブラウザではありません。HTMLのみを理解します。

具体的な機能要件と、JSFとサーブレットをこのように混合しようとしている理由は不明です(これについての現実的な理由を想像することはできません)が<form>、特定のサーブレットの場合、その方法の1つは、代わりに通常のHTMLコードを記述することです(これは、JSFが最終的に生成するものでもあります)。

<input type="submit" name="buttonMethod" value="Test" />

その特定の背後にあるサーブレットで<form action>、次のようなことを行います

if (request.getParameter("buttonMethod") != null) {
    myBean.buttonMethod();
}
于 2012-09-28T11:13:30.213 に答える