- ベストアンサー
Java/サーブレットでの一般的な2重リクエスト防止方法について
Java/サーブレットでの一般的な2重リクエスト防止方法について いつもお世話になります。 JSP/サーブレットでWebアプリを作成しているのですが、2重リクエストを防止する方法について、 クライアント側とサーバ側それぞれで、一般的にはどのような実装を行うのかご教授願えませんでしょうか。 「クライアント側とサーバ側それぞれで」としているのは、JavaScript禁止の場合を考慮して、 サーバ側のみで対処する場合どうするのかを知りたいためです。 特別なフレームワークは利用しておらず、tomcatを使用したJSP/サーブレットにて開発を行っております。 宜しくお願い致します。
- kamakuragengorou
- お礼率53% (132/248)
- Java
- 回答数2
- ありがとう数7
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
JavaScript禁止としたら、 サーバー側でフラグ見たいのをつければいいかな? たとえば フラグ = request.getSession().getAttribute("フラグ");//フラグと言うオビジェクトをゲット if(フラグ!=null) フラグ = request.getSession().setAttribute("フラグ","OK");//ここは フラグと言うオビジェクト名と "OK" 内容を セット 何かの作業 else なんも しない これは セッションから取り寄せたオビジェクトがnullの場合のみ なんらかの作業をします, 作業を行う前か後で必ず オビジェクトに 何かを 代入してセッションに入れれば 次には 無視されます、 他のページへ移動するとか。 自分も 初心者なので 当たり前のことを 言っていたら すみません。 ちなみに コードがあってるかは確かめていませんw
その他の回答 (1)
Struts フレームワークでは、トランザクショントークンという技術がありますね。 まぁ余所のフレームワークも似たような実装してるんじゃないでしょうか?
関連するQ&A
- JSP/サーブレットで一般的な入力チェックの仕組みについて
JSP/サーブレットで一般的な入力チェックの仕組みについて いつもお世話になります。 JSP/サーブレットでWebシステムを作っています。 特別なフレームワークは使っておらず、素のJavaだけで作っているのですが、JSP/サーブレットでWebシステムを開発する場合で、入力チェックでエラーがあった場合、 下記のような動作を実現したいのですが、一般的にはどのような作りになるのでしょうか。 ・画面の入力内容はそのまま ・メッセージ領域にエラーメッセージを表示 ・エラーがあった項目を赤くする これらはJavaScriptでしか実現する方法は無いように思っていますが、できればJavaScriptは 使用しない方向で、最悪3番目はできなくてもよいです。 宜しくお願い致します。
- ベストアンサー
- Java
- サーブレットの文字化け
こんにちは。 JAVAサーブレット時の文字化けで困っています。 環境 ≪サーバー≫ OS:Linux Tomcat4.1.31 JAVA1.4.2 ≪クライアント≫ OS:Windows2000 クライアントからhttp:192.168.X.X:8080/xxx.jspを呼び出して実行しています。 JSPファイル(Shift-JISで保存)からサーブレットを呼び出して サーブレットでrequest.getParameterをした時に、日本語が文字化けしてしまいます。 JSPファイルでは <%@ page language="java" contentType="text/html; charset=Windows-31J" pageEncoding="Windows-31J"%> を指定しています。 なにかわかりましたら教えてください。 よろしくお願いします。
- ベストアンサー
- Java
- JSのリクエストからサーブレットに渡されるデータについて。
現在、JSP+サーブレットでアプリを作成しています。 質問ですが、JSPにあるセレクトメニューの中身全てをサーブレットで受け取ることはできるのでしょうか? <select name="Kouba" size="1"> <option value=10>A工場</option> <option value=11>B工場</option> <option value=12>C工場</option> <option value=13>D工場</option> </select> 上のようなセレクトメニューがあった場合、submitした場合に、サーブレット側で、 String 工場 = request.getParameter("Kouba"); とやれば、選択されていたデータは取得できます。 セレクトメニューの中身全部を取得したい場合はどのようにすればよいのでしょうか? よろしくお願いします。
- 締切済み
- Java
- Tomcat で Java サーブレットを動かす方法
こんにちわ Tomcat 3.3.1 でサーブレットを動作させる実験をしています。 現在サンプルプログラムが、http://[host_name]:8080/examples/ で動作しています。 ※ウェブサーバーは使用していません。 ここで質問です。 自分で任意のフォルダを作成し、その中にクラスファイルを格納して実行する場合の設定方法が分かりません。 examples フォルダ以下を見ると、 Web-inf servlets Meta-inf 等のフォルダが有ります。 サーブレットを実行する際に、この構成は必須なのでしょうか? この辺の設定方法が解説されているサイトまたは、書籍など有りましたら情報をください。 よろしくお願い致します。
- ベストアンサー
- Java
- ブラウザを閉じた後のサーバ側の処理について
webシステムにて、クライアントからのリクエストをサーバが処理している 途中にクライアントがブラウザを閉じた場合、サーバ側の処理が 続いてしまいます。 ブラウザが閉じられた場合、なんらかのタイミングでサーバ側が それを感知して処理を途中でキャンセルする方法はありますでしょうか。 ※サーバ側の処理は大変重く、20~40分程かかるものとします。 又、その処理自体を軽くする事は出来ません。 言語:Java(JSP+servlet) APサーバ:Tomcat
- ベストアンサー
- Java
- サーブレットforward時の実行メソッドについて
初歩的な質問で失礼します。 サーブレットAに doGet, doPost, serviceメソッドを実装しています。 サーブレットBのdoPostメソッド内にて サーブレットAにforwardを実行する場合に、 呼出されるのはサーブレットAのどのメソッドですか? JSPへのforwardはできたのですが、 サーブレットへのforwardができず悩んでいます。 サーブレットのAPIを読んでもいまいちわかりません。 何かメソッドに関する制約があるのでしょうか? 上の質問は全くマト外れでしょうか? 追加ですが・・・ サーブレットからforwardされたサーブレットで、 そこからさらにJSPへforwardすることはできますか? Apache2.0.43+tomcat4.1.12+Java1.4.0_01です。
- ベストアンサー
- Java
- JSP URLに表示される拡張子 .jsp
Servlet、JSPの開発を行っているのですが・・・ ページを表示する際のアドレスに「http://hogehoge/test.jsp」とJSPの拡張子が表示されると思うんですが、この拡張子を表示させずにアクセスする方法はあるでしょうか? サーバー:Apache 2.2.3 Tomcat:Apache Tomcat 5 OS:CentOS 5 自分で考えた方法 ・ApacheのProxy設定でJSPファイル一つずつ設定していく ・JSPファイルへのアクセスに対してもサーブレットを介して、dispacher.forward(request, response)を使う。 ※forwardだったらサーブレットのアドレスのままになったので。 どちらも結構面倒なんですが・・・他に方法はあるでしょうか?
- ベストアンサー
- Java
- JSP/サーブレットについて
JSP/サーブレットのMVCモデル風にJSP、サーブレットと、Beanを作成したばあい、サーバーに各プログラム?をどう配置し、プログラム内でのお互いの具体な指定の仕方がぴんときません。 指定の仕方とはたとえばサーブレットからJSPを呼ぶときgetServletContext().getRequestDispatcher("xxxxx/aaaaaa.jsp").forward(......); とコーディングするとおもいますが、この場合のxxxxxと実際にサーバーに配置する場合の関連です。 サーブレットは...../WEB-INF/classesに置くとか、Beanは...../WEB-INF/classes/パッケージ名に配置するのはわかります。JSPは通常どこにおくのでしょうか?たとえばC:\Tomcat\webapps\examplesなのか C:\Tomcat\webapps\examples\jspなのか? その場合プログラムないではどう指定するのが一般的なのでしょうか? 文章がわかりにくくてすいません。 開発環境はWindowsXP,Apache,Tomcatの場合です。
- 締切済み
- Java
- eclipseでのJSPのデバッグ方法について。
eclipseでのJSPのデバッグ方法について。 eclipse3.5を利用しています。 こういうことはできますでしょうか? 1.JSPからサーブレットに作成されたjavaファイルをeclipse上で参照。 2.1のjavaファイルにブレークポイントを設定してデバッグ。 eclipseのサーバビューでTOMCAT5.5を新規作成して動かしています。
- ベストアンサー
- Java
- HTTPリクエスト
JSPのクライアントからサーブレットにHTTPリクエストを送信する部分について、質問させていただきたく思います。 [実現したいこと] ・クライアント側からのHTTPリクエストのヘッダの内容を、任意のものに書き換えてサーブレットに送信。 [環境] WEB APサーバー:Web Sphere Aprication Server HTTPヘッダを読み取って、ヘッダ内のクライアント情報を元にクライアント別の処理を振り分ける機能を作ったのですが、そこの機能をテストするのに上の機能を使いたいと思ってます。。。 皆様のお知恵を拝借できればと思います。 よろしくお願いいたします。
- 締切済み
- Java