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

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

新規登録して質問してみよう
ただいま回答率
85.37%
Java EE

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

JavaServer Faces

JavaServer Faces(JSF)はJavaをベースとしたコンポーネントベースのwebアプリケーション開発用のフレームワークです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

2回答

9121閲覧

【jsf java webアプリ】commandLink押下後、任意の違うページに遷移したい

nekomura

総合スコア132

Java EE

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

JavaServer Faces

JavaServer Faces(JSF)はJavaをベースとしたコンポーネントベースのwebアプリケーション開発用のフレームワークです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2016/08/03 03:00

編集2016/08/03 07:09

※内容修正しました(16:00)
よろしくお願いいたします。
jsfで作った画面に、Javaでコードを記述し実装ししています。
今回やりたい事は、commandLinkからの違うページへの遷移です。

表に任意のデータを入力し、検索ボタンを押下すると、商品の検索結果が出ます。
検索結果の一番右のカラムには、「商品詳細」とかかれたcommandLinkを都度表示させ、このリンクを押下すると
任意の違うページに遷移するようにしたい
です。
下記図のように、
イメージ説明

検索結果が出る際に、「商品詳細」commandLinkを表示させることは出来たのですが、
押下後の画面遷移の実装がわかりません。

さらに、outputLinkを追記してURLを表示させ、それを押下すれば画面遷移はできたのですが、(参:下記図)
イメージ説明
青のcommandLinkから画面遷移がしたいのです。

JSFによるWebアプリケーション開発や、
JSF HTMLタグサンプルなどを参考にしてみたのですが、具体的な方法がわからず
有職者の皆様方にご教示を頂きたく存じます。

下記ソースを参考に、どうぞお知恵をお貸しください。

■画面(xhtml)のjsfコード(商品詳細リンク部分)

… 中略 … <h:commandLink value="商品詳細" disabled="" class="btn-xs btn-info " actionListener="#{goodsSearchBean.attrListener}" action="#{goodsSearchBean.detailAction}"> //この一行を使わずに、commandLinkだけで画面遷移がしたい→</h:commandLink><h:outputLink value="http://localhost:8080/hoge/jsp/hoge/hoge/Test.xhtml"> <h:outputText value="test.com"/>

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

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

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

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

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

guest

回答2

0

ベストアンサー

jsfには触れたことがないので、適切なアドバイスでなかったらすみません。。

以下のようなサイトを読んでみましたが、ボタンを押した後の動作はactionに指定した関数の中で制御するのではないでしょうか?

http://d.hatena.ne.jp/gloryof/20120901/1346481378
http://kikutaro777.hatenablog.com/entry/2013/01/23/201334

・・・的外れな回答でしたら聞き流してくださいm(__)m

投稿2016/08/04 04:35

jawa

総合スコア3013

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

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

nekomura

2016/08/05 08:13

jawa様 いつもお世話になっております。 アドバイスいただいたサイトを参考にして、action、actionListenerを指定してうまくいきました。 ありがとうございました。
guest

0

jawaさんご指摘のようにactionのみ指定すれば良いかと思います。

JSFのcommandButtonにおけるactionとactionListenerで迷う

上記のコンテンツを見ると、「actionListenerはナビゲーションには使用しない」と解釈できます。actionだけでも遷移できない場合は、BackingBeanの戻り値と一致するページが存在しない等の要因が考えられます。

投稿2016/08/04 07:47

BlueMoon

総合スコア1339

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

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

nekomura

2016/08/05 08:14

BlueMoon様 参考サイトと、理解のしやすいご回答に感謝です。 jsfは初めてまだ数日なので、なかなかうまく質問がまとめられませんが、 どうぞまたアドバイスお願いいたします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.37%

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

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

質問する

関連した質問