JSTLリファレンス(逆引き)

JSPリファレンス
 
Web struts.wasureppoi.com
指定したXPath式で取得した値の、複数の条件分岐:<x:choose><x:when><x:otherwise>
スポンサード リンク

指定したXPath式で取得した値の、複数の条件分岐には<x:choose><x:when><x:otherwise>タグを使用します。

複数の条件を評価するには、<x:choose>タグの中に、<x:when>タグと必要に応じて<x:otherwise>タグを指定します。

<x:when>タグの属性
属性 必須 説明
select 判定する為のXpath式を指定する


例1) 「sample.xml」の内容を出力する。

<%@ page language="java" contentType="text/html;charset=Windows-31J"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml"%>

<c:import var="xmlDoc" url="WEB-INF/sample.xml" charEncoding="Windows-31J" />

<x:parse var="xdoc" doc="${xmlDoc}" />

<html><body>

<x:choose>
  <x:when select="$xdoc/sample/data1 = 'ABCD'"> DATA1=ABCD </x:when>
  <x:when select="$xdoc/sample/data1 = 'EFGH'"> DATA1=EFGH </x:when>
  <x:otherwise> DATA1=OTHER </x:otherwise>
</x:choose>  ・・・・・ (1)

<br>

<x:choose>
  <x:when select="$xdoc/sample/data2 > 2"> DATA2>2 </x:when>
  <x:when select="$xdoc/sample/data2 = 2"> DATA2=2 </x:when>
  <x:otherwise> DATA2<2 </x:otherwise>
</x:choose> ・・・・・ (2)

<br>

</body></html>

 (1) <sample>タグ内の<data1>タグの内容が
        ・ 「ABCD」 の場合、「DATA1=ABCD」と出力する
        ・ 「EFGH」 の場合、「DATA1=EFGH」と出力する
        ・ 上記以外 の場合、「DATA1=OTHER」と出力する
 (2) <sample>タグ内の<data2>タグの内容が
        ・ 2以上 の場合、「DATA2>2」と出力する
        ・ 2 の場合、「DATA2=2」と出力する
        ・ 2未満 の場合、「DATA2<2」と出力する
 
「sample.xml」の定義

<?xml version="1.0" encoding="Windows-31J"?>

<sample version="2.3" >

<data1>ABCD</data1>

<data2>1</data2>

</sample>



実行結果


スポンサード リンク


XMLタグの種類
XML文書を表示する(ディスク上のXML書)
XML文書を表示する(インターネット上のXML文書)
XML文書を解析する:<x:parse>
指定したXPath式で取得した値を、出力する:<x:out>
指定したXPath式で取得した値を、変数にセットする:<x:set>
指定したXPath式で取得した値を、繰り返し処理する:<x:forEach>
指定したXPath式で取得した値の、単一の条件分岐:<x:if>
指定したXPath式で取得した値の、複数の条件分岐:<x:choose><x:when><x:otherwise>
XML文書をXMLスタイルシートで変換する:<x:transform>

JSTLへ
忘れっぽいエンジニアのJakarta Strutsリファレンス TOPへ