1

JSP のページの useBean から Java のサーブレットにパラメータを渡すにはどうすればよいですか? 送信ボタンで問題なく渡されるフォームにいくつかのデータがありますが、他に何も送信する方法はありません。助けてください?これが私のコードです:

<input name = "deleteGameButton" type = "submit" value = "Delete"
 onclick = "submitToServlet('DeleteGameServlet');">

対応する JavaScript は次のとおりです。

 function submitToServlet(newAction)
 {
   document.userGameForm.action = newAction;
 }

サーブレットが userBean にアクセスできるようにしたい

 <jsp:useBean id = "userBean" scope = "session" class = "org.project.User" />
4

4 に答える 4

4

あなたはここで物事を台無しにします。

onclick() は Javascript であり、クライアント側で実行されます。セッションスコープの Bean を更新する (直接的な) 方法はありません。その Bean はサーバー側に残され、HTML ページが生成されたときに使用されました。パラメーターをサーブレットに戻すには、古き良きフォーム フィールドを使用し、フォームを送信する必要があります。

フォームにフィールドを追加し、送信前に値を設定してから送信します。

サーブレット呼び出し request.getParameter("name");

PS この種のものを自動化するには、STRUTSを使用します。:-) Struts はまさにあなたが望むことを行います: パラメータをアクションに渡す前に、Bean にそれらのパラメータを設定します。透過的に。

于 2008-10-24T15:56:03.730 に答える
2

それはまさにあなたがやろうとしていることによります。の

<jsp:useBean id = "userBean" scope = "session" class = "org.project.User" />

タグを使用すると、jsp でセッションの userBean 属性を使用できます。セッションに userBean 属性がない場合は、(org.project.User のデフォルトのコンストラクターを使用して) 新しいものを作成し、セッションに配置します。

次に、サーブレットに到達したら、次の方法で取得できます。

User user = (User)request.getSession().getAttribute("userBean");
于 2008-10-24T18:46:51.480 に答える
1
 getServletConfig().getServletContext().getRequestDispatcher("servlet path & name");         
 dispatcher.forward (request, response);
于 2011-03-17T09:29:35.790 に答える
0

こんにちは、次のタグを試してください:

<jsp:useBean id = "userBean" scope = "session" class = "org.project.User"/>
 <jsp:setProperty name="beanName" property="propertyname" value="value"/>
</jsp:useBean>

詳細はこちら

幸運を!

于 2008-10-24T15:56:15.477 に答える