- PR -

ELの算術演算子について

1
投稿者投稿内容
ピンクの恐竜
常連さん
会議室デビュー日: 2005/02/01
投稿数: 42
投稿日時: 2005-04-13 22:49
現在参考書を片手にELとJSTLを勉強しております。

かなり基本的なことだと思うのですが、
以下のことがなぜなのかわからずにいます。

どうかご教授お願いします。

【やりたいこと】
画面から数値を入力しsubmitして数値をパラメータとして渡して、
入力された値が10より大きいならならture
以下ならfalseと画面に表示する

それで以下のようなコードを書きました。
コード:
--jspTest1.jsp--
<form action="jspTest1.jsp" method="POST">
10より大きいか?<br/>
<input type="text" size="5" name="int_value"></input>
<input type="submit" value="10より大きいか"></input><br/>
<c:out value="${param.int_value}" default="未入力"></c:out>
は10よりおおきい?
<c:if test="${param.int_value gt 10}" var="islarge"></c:if>
${islarge}<br/>
</form>



このままなら正常に動くのですが、
コード:
${param.int_value gt 10}



コード:
${param.int_value > 10}


に変えると正常に動かなくなります。

なぜなのでしょうか?

">"と"gt"は違う意味なのでしょうか?

環境は
TOMCAT5.0.28のwindowsです。

よろしくお願いします。
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2005-04-13 23:08
タグの中に<>は、基本的に記述できません。
ピンクの恐竜
常連さん
会議室デビュー日: 2005/02/01
投稿数: 42
投稿日時: 2005-04-13 23:24
早速の返信ありがとうございます。

なるほど。
ありがとうございます。
かなり納得しました。

ただ気になるのことが1つあります。
参考書ではタグの中で思いっきり<>を使っているのですが、
参考書が間違っていると言う認識でよろしいですか?
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2005-04-13 23:52
どの部分での使用を言っているのかわかりませんが、
駄目なケースとOKなケースがあるでしょうね。

<>を使用するマークアップ言語の基本的なルールとして、
文字列データ(属性や値)として<>を表現する際には
エンティティを使用します。(&lt;&gt;)

JSPではXMLと違いますので、独自のルールが存在していると思います。
(タグライブラリの値にスクリプトレットが記述できる等)
EL式では>ではなくgtと記述するものだと覚えておく程度でいいかもしれませんね。
ピンクの恐竜
常連さん
会議室デビュー日: 2005/02/01
投稿数: 42
投稿日時: 2005-04-14 00:21
返信ありがとうございます。

いろいろお世話になりました。

タグライブラリの属性値をEL式表現するときは
">"を"gt"と記述するものだと認識します。

ありがとうございました。
みやも
ベテラン
会議室デビュー日: 2002/04/22
投稿数: 74
投稿日時: 2005-04-14 03:25
こんにちわ

>EL式では>ではなくgtと記述するものだと覚えておく

ELって短く見やすく書けるのがいいところだと思うのですが、
gt でなく < で書いた方がいいのではないでしょうか?

(普通<も動きますよね?何が普通なのかですが。。。)
1

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