• ベストアンサー

strutsのコントローラクラスで表示させるjspを変えるには

ある時間帯だけ利用できるサイトを作ろうとしています。 時間外の場合には、「現在は利用時間外です。」みたいなページに飛ばそうと考えてます。 そこで、strutsのRequestProcessorクラスを拡張してクラスを作り、 その中で時間外だった場合は他のページへ飛ばしたいのですが、 他のページへ飛ばす書き方が分かりません。 どなたかご教授願えればと思います。 それでは、宜しくお願いします。

  • Java
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

Actionの public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest req,HttpServletResponse res) の中で時間を判定して、 時間内の場合 return mapping.findForward("open"); 時間外の場合 return mapping.findForward("close"); じゃぁダメでしょうか?

yamada411
質問者

お礼

RequestProcessorを拡張して、 ActionForwardメソッドの中で時間外の場合だけ return mapping.findForward("timeOver"); とし、struts-config.xmlの中の <global-forwards>で、 <forward name="timeOver" path="/jsp/time_over.jsp"/> とかいたら、うまくいきました! ありがとうございました

その他の回答 (1)

noname#49664
noname#49664
回答No.1

どういう形で実装されているのがわからないのではずしてるかも知れませんが・・。異動先のページはただのHTMLとかJSPなのでしょうか。でしたら、RequestProcessor継承クラス内のprocessPreprocessメソッドをオーバーライドして、getRequestDispatcherしてforwardすればできるように思えますが。 protected boolean processPreprocess ( HttpServletRequest request, HttpServletResponse response) { ・・通常の処理の場合、 return true;で処理継続・・ try{ request.getRequestDispatcher("/××.jsp").forward(request,response); }catch(Exception ex){} return false; } ・・というような感じで。そういうことではない??

yamada411
質問者

お礼

解決しました! ありがとうございました

関連するQ&A

  • strutsで、JSP→アクションクラス→JSPの遷移ができない。

    Strutsを勉強中の者です。 初心者的な質問で大変恐縮ですが、どこを調べても原因が分からなかったので、最終手段としてこちらに質問させて頂く事にしました。 どなたかご存知の方がいらっしゃいましたらご教授頂けないでしょうか。 ・概要  strutsで、JSP→クラスの実行→JSPの遷移ができない。 ・環境  WindowsXP  Eclipse3.3  Tomcat5.5  GEF3.3  struts-1.3.8  JDK1.5 ・詳細  「Eclipseパーフェクトマニュアル ベストセレクション」  という本をもとに勉強しています。  ここのStrutsの例題で  (1).簡易家計簿 <メニュー画面>(index.jsp)を表示   (2).同画面のリンク(ShoppingInitEntry.do)をクリック   (3).リンク(ShoppingInitEntry.do)に関連づけられているクラス(ShoppingInitEntryAction)の実行   (4).データ入力画面(ShoppingUpdate.jsp)への遷移  という事をやっています。  実際に設定して、動かして見ましたが、  Eclipseでデバッグを貼っていると(3)まで動作しているのが分かるのですが、(4)の画面まで遷移しません。  具体的には、ShoppingInitEntry.doのリンクが  ブラウザのアドレスバーに表示され、画面が真っ白の状態になります。  (データ入力画面は表示されない)  尚、直接(4)の画面(ShoppingUpdate.jsp)を開くと、  データ入力画面がエラーも無く表示されます。 ---- struts-config.xmlの設定が悪いのかと思ったのですが、 問題は無さそうに思います。(必要と思われる部分を抜粋) <struts-config> <global-forwards> <forward name="ShoppingInitEntry" path="/ShoppingInitEntry.do"/> </global-forwards> <action-mappings> <action path="/ShoppingInitEntry" type="MoneyBooks.ShoppingInitEntryAction" input="/index.jsp"> <forward name="success" path="/ShoppingUpdate.jsp"/> </action> </action-mappings> </struts-config> ---- (3)ShoppingInitEntryActionのソースは、下記の通りです。 public class ShoppingInitEntryAction extends Action { @Override public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { return super.execute(mapping, form, request, response); } } 上記のreturn super.execute( ~の部分では nullを返しているようです。 Eclipseのコンソールにメッセージは表示されません。 A.原因は、struts-config.xmlでしょうか? それともクラスがnullを返している為に画面遷移しないのでしょうか?    そもそもsuper.executeのソースをjadのデコンパイルで追ったのですが、返り値としてNullしか返していない状態です。 B.また、馬鹿な質問ですが、そもそもjavaではnullを返り値で返すとオール×だと思っているのですが、この考え方は正しいでしょうか?  大変お恥ずかしい限りですが、ご存知の方がいらっしゃいましたら教えて頂きたく宜しくお願い致します。

    • ベストアンサー
    • Java
  • IISでStrutsは動かせますか?

    IISでStrutsは動かせますでしょうか? Strutsを使ってWebサイトを作ろうと思っています。 現在までにASPでWebサイトをいくつか作っておりまして、IISで運用しております。 StrutsでWebサイトを作った場合、同じサーバーに置きたいのですが、IISでStrutsは動かせるのでしょうか? もしできる場合は、その方法が詳しく紹介されているサイトなど教えていただければと思います。

    • ベストアンサー
    • Java
  • Struts2の使い方

    Struts2を利用する際にWEB-INF/lib/へStruts2のライブラリをコピーしていますが 各ライブラリの役割が説明されたサイトを教えてください。 なるべく日本語のサイトがいいです。バージョンは特に問いません。 サンプルプログラムが書かれたサイトでは只コピーすると書かれているため 数あるライブラリから、何のためにそのライブラリを選択しコピーしているのか わからず、混乱しています。 ちなみに現在利用しているバージョンは2.3.1.1です。 宜しくお願いします。

  • Strutsについて

    Strutsを使うと、何がどう良いのですか? JavaによるWebサイト構築を行なう場合を例えると、 どのようなメリットがあるのでしょうか? JSPのタグなどを覚えなくてもよいのですか? 御存知の方がいましたら御教授下さい。よろしくお願い致します。

  • ★Eclipse + Strutsを使用した開発について

    Eclipse 3.0.x Struts 1.2.4 Tomcat 5.0.28 Apache 2.0.52 でWebアプリの開発を行おうとしています。 EclipseとStrutsを組み合わせた場合の 参考になるサイト等はありませんか? EclipseにStrutsのプラグインで良いものがあれば ご教授願います。 また、Eclipseを使用せずにStrutsの開発を行う 場合に良い開発環境があればこちらもご教授願います。

  • Strutsでページネーションを実現するには

    Strutsでページネーションを実現するには お世話になります。 現在、私はStrutsを使って業務アプリケーションの開発を行っています。 現在作成しているページにページネーション(出力する情報の件数が多い場合に、次のページ、前のページ、最初のページ、最後のページなどのリンクを付けること)を付けたいが、やり方が分からずに困っています。 現在作成しているページには、従業員を検索するために各種検索条件を入力するフォームがあり、送信ボタンを押すとActionクラスが呼び出され、Actionクラスの中で従業員の検索が行われ、結果が画面に帰ってきます。 しかし、ページネーション用のリンクを作ってそのリンクをクリックしたとしても、フォームの送信ボタンを押す訳ではないので、従業員の検索が行われる訳ではありません。 行いたいのは、フォームに入力した検索条件を常に反映した結果の従業員のリストをページネーションしたいということです。 何か良い方法はないでしょうか。皆様の知恵をお貸しください。よろしくお願い致します。

    • ベストアンサー
    • Java
  • strutsとstruts2.0のスピード

    同時接続者が多いSNSサイトの場合 strutsで作成されたプロジェクトと、 struts2で作成された場合どちが早いし軽いですか。 同時接続者が多いSNSサイトを製作する時、特に お勧めのjavaフレームワークがあったら教えて頂きたいです。 ではお答え宜しくお願い致します。

    • ベストアンサー
    • Java
  • strutsデバッグ

    お世話になります。しろと申します。 現在、いろいろ検索したりしながらWeb開発をやっている素人です。 jsp/servletを利用して、Strutsを導入、やっておりますが、Strutsの部分についてのデバッグ方法がわからなく困っている状態です。 非常に私の質問の仕方が悪いと思っておりますが、 それぐらい今のところ整理ができてません。正直にどこから手を出せば良いかっていうこともわかりません。 いったいどういう風に進めば良いでしょうか。 参考ぐらいでも幸いですので、 ご教授、ご助言など宜しくお願い致します。

  • Struts のバージョンについて

    Struts のバージョン選定についてご教授お願いします。 JDK6(or JDK5) Tomcat5.5 Eclipse3.2 + Struts でWebアプリの構築を検討していますが、Struts のバージョン選定について質問です。 Struts1.x.x (Struts2 ではない)では最新の「Struts 1.3.8」で問題無いでしょうか? JDK,Tomcat,Eclipse の各バージョンとの互換性などで問題があれば、ご指摘頂きたいです。 また、環境構築における各アプリケーションの組み合わせ、バージョン選定において、参考になるサイトがあれば教えて欲しいです。 自分なりに調べたのですが、明確なものが見つかりませんでした。 よろしくお願いします。

  • S2Strutsの無設定で<html:form>は使えない?

    お世話になります。 現在S2Strutsの開発をおこなっていて無設定Strutsを使おうと思っています。 その際にstruts-config.xmlに記述なしでPOJOでクラスを作成し、入力フォームを作成したのですが通常strutsで使用する。 <html:form>タグでエラーが発生してしまいました。 おそらくstruts-config.xmlにマッピング記述がない為に発生しているのだと思いますが無設定Strutsでは<html:form>は使用できないのでしょうか? 代替え案などがあればご教授ねがえればと思います。 サンプルはmayaa板のみでJSPを使ったものがなかったので悩んでいます。 よろしくお願い致します。

    • ベストアンサー
    • Java