昨日RichFacesを触り始めたばかりですが、またPrimeFacesネタに戻ります(^^;
次期案件が複数あって、そこで仕様検討してるメンバから「こんなことできる?」的な技術調査的な依頼がポツリポツリ…てか、サンプルレベルなんて簡単に確認できるので、本当は各人がやれるようになれればいいんだけどなぁ…うーん部内という狭い世界でもJava EEを普及するには時間がかかる(-_-;
で、今日はすさまじくショボイ確認ですが、念のため的なモノです。
以前に書いた「PrimeFacesのDataTableを探る ~カラムソート~」の中身がラベルではなくテキストボックスのような直接入力できるコンポーネントの場合でもソートが効くかどうか?という確認です。
ビューの定義を具体的にのせると
<?xml version='1.0' encoding='UTF-8' ?>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.org/ui">
<h:head>
<title>テキストとソート</title>
</h:head>
<h:body>
<h:form>
<p:dataTable id="dt" var="book" value="#{bookTableSortBean.bookList}"
paginator="true" rows="5" rowsPerPageTemplate="5,10,15"
paginatorTemplate="
{CurrentPageReport} {FirstPageLink}
{PreviousPageLink} {PageLinks}
{NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
pageLinks="5">
<p:column id="colTitle" headerText="書籍タイトル" sortBy="#{book.title}">
<p:inputText id="txtTitle" value="#{book.title}" />
</p:column>
<p:column id="colAuthor" headerText="著者名" sortBy="#{book.author}">
<p:inputText id="txtAuthor" value="#{book.author}" />
</p:column>
</p:dataTable>
<p:commandButton actionListener="#{bookTableSortBean.update()}"
value="更新" />
</h:form>
</h:body>
</html>
具体的には、以下のようなDataTableを想定。ラベルではなくテキストです。

まあ、確認するまでもなく…値でソートしてるので…


当然こんな感じにソートできます(^^)
で、入力値を変えて(更新ボタンつけて値更新して)ソートすると…


まあ、予想通り大丈夫(^^;
確認するまでもなかったわけですが。。。単純なテキストボックスだし。
プルダウンとかその他のコンポーネントになった場合にどこまでできるか、が気になる所です。
なお今まで書いたPrimeFacesのDataTable探りの旅は以下です。