質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
JSF

JSF (JavaServer Faces)とは、JavaベースのWebアプリケーションフレームワークの一つです。

PrimeFaces

PrimeFacesは、トルコのソフトウェア会社Prime Teknolojiが提供する、 JSFリッチユーザーインターフェースコンポーネントです。 Apache License V2ライセンスのオープンソースソフトウェアです。

Q&A

1回答

4498閲覧

primefacesを用いたデータテーブル

Yoshi.E

総合スコア7

JSF

JSF (JavaServer Faces)とは、JavaベースのWebアプリケーションフレームワークの一つです。

PrimeFaces

PrimeFacesは、トルコのソフトウェア会社Prime Teknolojiが提供する、 JSFリッチユーザーインターフェースコンポーネントです。 Apache License V2ライセンスのオープンソースソフトウェアです。

0グッド

0クリップ

投稿2016/05/30 05:15

現在、JPAを用いて書籍管理システムを作っています。

現在下記のような図書管理webアプリケーションを開発しております。

「画面図」

ISBN:~入力~
出版社:~入力~
価格:~入力~

【登録】【クリア】←ボタン
----------------------
ISBN 出版社 価格

** *** ***
△△ △△ △△△
------------------------

「説明」
各テキストボックスに入力して、登録ボタンを押すと
データベースに入力した内容を保存し、画面をnull返しで再表示させそのデータを同画面下のデータテーブルに表示させる。

「問題」
機能は完成したのですが、データテーブルのデザインが気に入らなかったので
primefacesタグを用いてデータテーブルのデザインを変更したところ、
登録ボタンを押してもすぐに反映されず、トップへ戻るを押して再び同画面を再表示させると
データが反映されている状況です。
primefacesを使ってからなのでこれが原因だと分かりますが対処法がわかりません。
解決策を教えていただけたら幸いです。

読みづらい文章で申し訳ありません。

【登録画面ソース】

<h:form> <h:panelGrid columns="4" > <h:outputLabel value="ISBN "/> <h:inputText id="isbn" label="isbn" value="#{backingBook02.isbn}" size="20"> <f:validateRegex pattern="(^\d{3}-).+"/> </h:inputText> <h:outputLabel value="例:XXX-X-XXXX-XXXX-X"/> <h:message for="isbn" errorClass="err"/> </h:panelGrid> <h:panelGrid columns="3"> <h:outputLabel for="genre" value="ジャンル "/> <h:selectOneMenu id="genre" label="genre" value="#{backingBook02.genre}" > <f:selectItem itemLabel="---選択してください---" noSelectionOption="true"/> <f:selectItems value="#{backingBook02.item}"/> </h:selectOneMenu> <h:message for="genre" errorClass="err"/> <h:outputLabel value="書籍名 "/> <h:inputText id="title" label="書籍名" value="#{backingBook02.title}" size="20"/> <h:message for="title" errorClass="err"/> <h:outputLabel value="本体価格 "/> <h:inputText id="price" label="本体価格" value="#{backingBook02.price}" size="5"/> <h:message for="price" errorClass="err"/> <h:outputLabel value="出版社 "/> <h:inputText id="publisher" label="出版社" value="#{backingBook02.publisher}" size="20"> </h:inputText> <h:message for="date" errorClass="err"/> <h:outputLabel value="備考"/> <h:inputTextarea id="exp" label="備考" value="#{backingBook02.exp}" cols="50" rows="10"/> <h:message for="exp" errorClass="err"/> </h:panelGrid> <hr/> <h:panelGrid columns="3"> <h:commandButton value="登録" action="#{backingBook02.register()}"/> <h:commandButton value="クリア" action="#{backingBook02.clear()}" > <f:ajax execute="@this" render="@all"/> </h:commandButton> <h:link outcome="create.xhtml">トップへ戻る</h:link> </h:panelGrid> </h:form> <p:dataTable var="item" value="#{backingBook02.data}" paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {Exporters}" paginator="true" rows="15" style="margin-bottom:20px"> <p:column headerText="ISBN"> <h:outputText value="#{item.isbn}"/></p:column> <p:column headerText="ジャンル"><h:outputText value="#{item.genre}"/></p:column> <p:column headerText="タイトル"><h:outputText value="#{item.title}"/></p:column> <p:column headerText="価格"><h:outputText value="#{item.price}"/></p:column> <p:column headerText="出版社"> <h:outputText value="#{item.publisher}"> </h:outputText> </p:column> </p:dataTable> </ui:composition> </h:body>
</html>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

p:dataTableをh:form内に配置してはどうでしょうか。ソースを拝見したところdatatableがformの外に有るようです。

投稿2016/05/30 16:03

BlueMoon

総合スコア1339

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問