Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

POST情報が渡らない

Webや掲示板を調べても似たような現象を探すことができなかったため質問させていただきます。

「apache + tomcat」連携で、tomcatを再起動後の1度目のみ、HTMLからJSPにPOSTしてもgetParameter("xxx")で取得できないのです。
(パラメータが何も渡っていないような気がします。)


--HTML--------------------
<form method="post" action="jsp/Test.jsp">
<input type="text" name="num" value="xxx">
<input type="submit" value="Go">
</form>

--JSP---------------------
<%
out.print(request.getParameter("num"));
%>

--実行結果----------------
「null」が画面に表示されます。


--再現性------------------
tomcat再起動後に確実。
その後ブラウザで戻る、もしくは更新等を行うと、以降は再現しない。

--環境--------------------
WindowsXP Home
IE 6.0sp2
Apache 2.0.59
Tomcat 5.5.20
mod_jk2 2.0.4
java 5.5.20


--その他------------------
・ブラウザに関係なく再現します。
・apache、tomcatのログにはエラーは出力されません。
・なんとなくではありますが、apache + tomcat 連携がらみではないかと感じています。
・上記の実行だけであれば、tomcat再起動の必要はありませんが、サーバとして使用しているlinux上でも同じような現象が起きるので解析のために簡単なソースで試しています。


この現象は何が原因なのでしょうか。
みなさんの力を貸していただきたいのです。
よろしくお願い致します。

2

回答

4712

閲覧

2件の回答

評価

0

ブラウザを開きなおした場合は?
初回送信時だけ?
GETだと通る?

評価

0

遅くなっていまいすみません。

>ブラウザを開きなおした場合は?
>初回送信時だけ?
本当に初回送信時のみです、それ以降は再現しません。
ブラウザを開きなおしたり、ブラウザからの戻るボタンで再度実行したり、nullとなった結果画面で更新ボタンを押したりすると正常にパラメータが取得できます。

>GETだと通る?
GETでは問題なくパラメータを取得できました。
HTMLソースのpostをgetに変えて実行しても、URLからJSPに直接パラメータを指定して実行しても問題なくパラメータを取得できる事を確認しました。

何か思い当たる節がありますでしょうか。
よろしくお願いいたします。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。