ユーザーが自分の名前を入力して送信ボタンを押すと、ユーザーを歓迎するページが表示される JSF アプリケーションが動作しています。
構造は非常に単純で、名前のセッターとゲッターを持つ Person Bean があり、テキスト フィールドが名前を設定し、ウェルカム ページが Bean から名前を取得してウェルカム ページに表示します。
私の質問は、データベースへの接続を開く必要があるため、ユーザーが送信ボタンを押したときに XHTML から Java メソッドを呼び出すことができるかということです。アプリケーションの最初のページのコードは、xhtml ファイルでは次のようになります。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<title>JSF 2.0 Hello World</title>
</h:head>
<h:body>
<h3>JSF 2.0 Hello World Example - hello.xhtml</h3>
<h:form>
<h:inputText value="#{helloBean.name}"></h:inputText>
<h:commandButton value="Welcome Me" action="welcome"></h:commandButton>
</h:form>
</h:body>
</html>
そのため、Welcome Me をクリックすると、welcome.xhtml ファイルが呼び出され、Bean が渡されるように見えます。しかし、Welcome Me ボタンが押されたときにデータベースを開くコードを実行する必要もあります。