問題タブ [requestdispatcher]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - リクエストをサーブレット内の HTML にディスパッチできますか
これは可能ですか?
jsp - 1 つのサーブレットから 2 つ以上の jsp ページにリクエストをディスパッチできます
RequestDispatcherを使用して、1 つのサーブレットから 2 つ以上の jsp ページにリクエストをディスパッチできますか。それは可能ですか?そうでない場合、1 つのサーブレットから多くの JSP ページにリクエストをディスパッチする解決策はありますか?
jsp - リクエストディスパッチャでURLを変更できます
リクエストディスパッチの場合、URLを変更することは可能ですか。
これは私のコードです
したがって、Webブラウザで表示するとhttp://localhost:8888/url-mapping
、サーブレットのurl=が得られます。しかし、私はそのurl=が欲しいですhttp://localhost:8888/index.jsp
。どのようにそれが可能であるか。
servlets - RequestDispatcher を使用してサーブレットから別のサーブレットにデータを渡す
RequestDispatcher を使用して、あるサーブレットから別のサーブレットにデータを渡そうとしています。これは Dispatcher の私のコードです。
実行しようとすると、パスが利用できないというエラーが表示されます。ディスパッチャが別のサーブレットに送信するために何かを含める必要がありますか?
jsp - POJO 内で JSP タグを呼び出す方法
私はJava Beanを使用しています
この Pojo に必要なものを入れrequest
ましresponse
たRequestDispatcher
。
私がする必要があるのは、を含めることですcustom tag
。このカスタムタグを JSP に入れ、その JSP を含めることができますが、別の方法があるかどうか疑問に思っていました。
jsp - サーブレットから sendRedirect を使用する場合、jsp ページでリクエスト属性を使用できない
私はjspとサーブレットが初めてです。私のシナリオは次のとおりです
フォームを含むjspページがあります。2 つのフィールドを持つ。jsp ページのコード スニペットは次のとおりです。
MyFirstJSP.jsp ファイル
このフォームを送信すると、ユーザーが入力した名をチェックする MyFirstServlet が呼び出されます。最初の名前が「abc」と等しい場合、サーブレットは属性を要求オブジェクトに設定し、それを呼び出し元の jsp ページ、つまり上記のページにリダイレクトします。request オブジェクトから値を取得し、フォームのそれぞれのフィールドに入力します。私も同じ効果のために Java 式言語を持っています。
MyFirstServlet.java サーブレット ファイルのコード スニペットを次に示します。
しかし、コードを実行すると、サーブレットは jsp ページにリダイレクトされますが、フォーム フィールドにそれぞれの値が入力されません。原因を見つけるために、if-else-block を追加して原因を調べましたが、ここではリクエスト オブジェクト属性が利用できないことがわかりました。
この場合にリクエストディスパッチャーを使用すると、値が利用可能になり、フォームに値が入力されますが、アドレスバーの URL は変更されず、常にサーブレットに URL が表示されます。
だから私のクエリは
**1) sendRedirect を使用してリクエスト オブジェクトを jsp ページで使用できないのはなぜですか。
2)ユーザーがフォームにデータを再入力する必要がないように、サーブレットが呼び出し元のjspにリダイレクトする場合、ユーザーが入力した値が事前に入力されたフォームをjspページに表示する他の方法はありますか.**
この問題で友達を案内してください ありがとう!
java - RequestDispatcher.forward() を使用して ServletRequest を二重転送すると、URL が不正な形式になり、404 が発生する
私の Java Web アプリは、2 つのサーブレットを使用して、フォームの処理とナビゲーションを制御し/AppControl
ます/ViewControl
。
AppControl はフォーム送信を処理し、リクエストを ViewControl に転送します。ViewControl は、どのページが処理されたかを判断し、リクエストを「次の」ページに再転送します。
最初の転送 (サーブレット間) は問題なく動作します。しかし、2 つ目 (ViewControl から JSP ページへ) は URL の形式が正しくなく、404 が返されます。
サーブレットは両方ともコンテキストのルートにマップされ、JSP ファイルは /view/ という名前のサブフォルダーにあります。
フォワード #1 は から/AppControl
へ/ViewControl
、フォワード #2 は /ViewControl から へ移動し/view/xxx.jsp
ますが、ブラウザに表示されるのはlocalhost:8080/view//view/xxx.jsp
であり、明らかに本来あるべき場所ではありません。ブラウザに送信された URL からコンテキストが欠落しており、文字列「/view/」の余分なインスタンスが埋め込まれていることに注意してください。
私はもう試した:
- との使用
ServerContext
を切り替えるServerRequest
RequestDispatcher
- 絶対パスと相対パスの使用 (「./」 -- 有効な相対パスですか?)
- contextPath を URL にアタッチ (事前保留)
および他のさまざまなハックと回転ですが、何も機能していないようです。ブラウザーに送信される URL を、デバッグに表示される (RD に関連付けられた) URL 以外に変更し続けます。
ところで、リクエストは ( localhost:8080/(context)/view/zzz.jsp
referrer?) から発信され、に POST され/AppControl
ます。
getServletContext ().getRequestDispatcher(java.lang.String)を使用して転送しているため、ターゲット リソースがコンテキストのルートに対して相対的であるという印象を受けました。
これが私が試したことと、私が得た結果です:
この投稿を実際のコードでフォローアップし、おそらくスクリーンショット(それができる場合)...私の環境:
- Java 6.0_34
- 日食ジュノ (4.2.0)
- トムキャット 7.0.21。
コード:
java - サーブレットチェーン-簡単な例
私が試している単純なサーブレットチェーンの例に奇妙な問題があります。
サーブレット1:
サーブレット2:
そして、呼び出しフォーム:
'POST'は405(メソッドは許可されていません)エラーを出します。ただし、最初のサーブレットを..../justServlets/gateway?name=Socratesとして呼び出すことはできます。どうしたの?
jsp - JSP変数をサーブレットに渡す方法は?
リクエスト ディスパッチャを使用して、JSP ページからサーブレットに 2 つの値を渡そうとしています。
JSP コードは次のとおりです。
これら 2 つの値は、別のサーブレットから受け取ります。
これは、値を受け取るサーブレット コードです。
しかし、私はヌル値を取得しています。
修正方法は?
jsp - 利用可能なさまざまな転送オプションの違い
1)response.sendRedirect()
2)jsp:forward
3)RequestDispatcher .forward
4)RequestDispatcher.includeの違いを教えてもらえ
ますか。具体的に使用できるさまざまな状況。