- PR -

フラグの利用について

投稿者投稿内容
桜月
常連さん
会議室デビュー日: 2004/10/01
投稿数: 27
お住まい・勤務地: 神奈川県
投稿日時: 2004-12-18 13:14
お世話になります。

<%=Constants.FLAG_ON%>と<%=Constants.FLAG_OFF%>をJSPから受け取り
Servletでフラグとして利用しようと思うのですが、
上手くいきません・・・汗
何か良い方法はないでしょうか?

--記述(一部)--

(JSPA)
<!--
function jump(ix)
{
switch(ix){
case 1:
document.forms[0].srhflg.value=<%=Constants.FLAG_OFF%>;
document.forms[0].action = "/reselve/JSPa.do";
document.forms[0].submit();
break;
case 2:
document.forms[0].srhflg.value=<%=Constants.FLAG_ON%>;
document.forms[0].action = "/reselve/JSPB.do";
document.forms[0].submit();
break;
}
}
-->

(Servlet)
Object newsflg = request.getAttribute("newsflg");
if( newsflg != null){
s_nList = list;
}else{ s_nList = Glist;
}

(JSPB)
<logic:notEqual name="searchObjForm" property="srhflg" value="<% =Constants.FLAG_ON%>">
お知らせAがあります。
</logic:notEqual>
<logic:equal name="searchObjForm" property="srhflg" value="<%=Constants.FLAG_ON%>">
お知らせBがあります。
</logic:equal>

以上です。わかりにくいソースで申し訳ありませんが、
よろしくお願いします。

[ メッセージ編集済み 編集者: 桜月 編集日時 2004-12-18 13:18 ]
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2004-12-19 01:12
うまくいかない、とは何がうまくいかないのでしょうか?
JSP や Struts を使わずプレーンな JavaScript ではうまくいきますか?
桜月
常連さん
会議室デビュー日: 2004/10/01
投稿数: 27
お住まい・勤務地: 神奈川県
投稿日時: 2004-12-20 09:40
質問の仕方があいまいでしたね。すみません。

Servletで受け取るさいに値がnullでしか
受け取れないので、if文で条件として使えないんです。

<%=Constants.FLAG_ON%>と<%=Constants.FLAG_OFF%>を
条件に処理を分岐させたいと思うのですが・・・

今回はJSPの勉強をしているので、JSPで作成したいのでJavaScriptでは
試していませんでした。
(株)ぽち
ぬし
会議室デビュー日: 2002/09/10
投稿数: 376
投稿日時: 2004-12-20 10:51
単純に
request.getAttribute()がマズいのではないでしょうか。
pascal
常連さん
会議室デビュー日: 2004/04/29
投稿数: 29
お住まい・勤務地: 神奈川県
投稿日時: 2004-12-21 00:53
引用:

(株)ぽちさんの書き込み (2004-12-20 10:51) より:
単純に
request.getAttribute()がマズいのではないでしょうか。


私もそう思いましたが。。。
request.getAttribute("newsflg")ではなくて、
request .getAttribute("srhflg")ってことは?
(株)ぽち
ぬし
会議室デビュー日: 2002/09/10
投稿数: 376
投稿日時: 2004-12-21 09:45
ん。いや私の方は
request.getParameter()じゃないのかな?
ってことです。

まぁpascalさんご指摘の変数名の違いも気になりますが
JSPA⇒Servletなのでしょうか。

詳細がわからないのでなんとも、ですが。
マーサ
ベテラン
会議室デビュー日: 2004/11/26
投稿数: 87
投稿日時: 2004-12-21 10:30
つまり、JSPAの
引用:

function jump(ix)
{
switch(ix){
case 1:
document.forms[0].srhflg.value=<%=Constants.FLAG_OFF%>;
document.forms[0].action = "/reselve/JSPa.do";
document.forms[0].submit();
break;
case 2:
document.forms[0].srhflg.value=<%=Constants.FLAG_ON%>;
document.forms[0].action = "/reselve/JSPB.do";
document.forms[0].submit();
break;
}
}


では値が取得出来ているが、

Servletの
引用:

Object newsflg = request.getAttribute("newsflg");


で取得出来ていないと言うのであれば、ぽちさんの言うように
request.getParameter()にして、pascalさんの言うように変数名を修正すればおkだと思いますが。
#見える情報では、"newsflg"は何処からも設定されていませんので。。。

ちなみに、JSPAで
<%=Constants.FLAG_OFF%>

<%=Constants.FLAG_OFF%>
は、取得出来ているのですよね?
#エラーになっていないようだから取得出来てるっぽいですが。
桜月
常連さん
会議室デビュー日: 2004/10/01
投稿数: 27
お住まい・勤務地: 神奈川県
投稿日時: 2004-12-27 09:55
単純なケアレスミスをしてしまいお恥ずかしい限りです・・・

変数名の方ですが"nwsflg"から"srhflg"へと直して、
request.getParameter()で取得する方法に変えたのですが、
「null」としか取れず、フラグとして使用できずにいます。


JSPで<%=Constants.FLAG_ON%>や<%=Constants.FLAG_OFF%>
は取得できているので、フラグとしては利用できているのです。

JSPBの方で
<logic:notEqual name="searchObjForm" property="srhflg" value="<% =Constants.FLAG_ON%>">
という感じに利用しています。

もしかしてrequestではなくsessionで取得しなければダメなのでしょうか?

スキルアップ/キャリアアップ(JOB@IT)