ビュー内の情報を変更することに関する最初の質問(別の.xhtmlページに移動しないこと)。私の.xhtmlはデータテーブル(人のリストを表示)を表示しますが、誰かの名前の先頭を入力テキストに入力してコマンドボタンをクリックすることで、表示される情報の量をユーザーが絞り込めるようにしたいです。コマンドボタンとデータテーブルはどちらも同じBeanメソッドを実行しますが、inputtextにデータがある場合、SQLはLikeを使用します(これはjdbcを使用します)。私のフォームは以下のとおりです。問題は、管理対象Beanが「成功」または「失敗」ではなくオブジェクトのリストを返すため、「from-view-idで一致するナビゲーションケースを見つけることができません」ということです。また、フォーム全体が非効率的です。これはかなり一般的なシナリオのようです。ナビゲーション命令ではなくオブジェクトを返すマネージドBeanのメソッドを呼び出します。エラーメッセージを取り除くにはどうすればよいですか?これを行うためのより良い方法はありますか?
コードは次のとおりです。
<h:head>
<h:outputStylesheet library="css" name="table-style.css" />
</h:head>
<h:body>
<h1>MavenWeb</h1>
<h:form>
<h:panelGrid columns="3">
Select a customer:
<h:inputText id="listName" value="#{customer.listName}"
size="20" >
</h:inputText>
<h:commandButton value="Submit"
action="#customer.getCustomerList()}" />
</h:panelGrid>
<h:dataTable value="#{customer.getCustomerList()}" var="c"
styleClass="order-table"
headerClass="order-table-header"
rowClasses="order-table-odd-row,order-table-even-row"
>
<h:column>
<f:facet name="header">
Customer ID
</f:facet>
#{c.customerID}
</h:column>
<h:column>
<f:facet name="header">
Name
</f:facet>
#{c.name}
</h:column>
<h:column>
<f:facet name="header">
Address
</f:facet>
#{c.address}
</h:column>
<h:column>
<f:facet name="header">
Created Date
</f:facet>
#{c.created_date}
</h:column>
</h:dataTable>
</h:form>
</h:body>