- PR -

JSTLでの扱い

1
投稿者投稿内容
progman
大ベテラン
会議室デビュー日: 2005/06/08
投稿数: 227
投稿日時: 2007-10-05 16:20
JSTLでxmlの処理をおこなっているのですが、おもったようにいきません。
下のJSPで一度xmlの内容を変数に代入したいのですが、されません。

<%@ page contentType="text/html; charset=Windows-31J" errorPage="error.jsp" %>
<%@ taglib uri="/WEB-INF/tld/struts-tiles.tld" prefix="tiles" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/xml" prefix="x" %>

<%-- <c:set var="txt1" value="<a>abc</a>"/> --%>
<c:set var="txt1" value="<?xml version=\"1.0\" encoding=\"Shift_JIS\"?><a>漢字</a>"/>
dump:::<c:out value="${txt1}"/>
<br>
<c:catch var="err1"><x:parse doc="${txt1}" var="xml1" /></c:catch>
err:::<c:out value="${err1}"/>
<br>
node:::<x:out select="$xml1//a"/>
<br>
<x:set var="txt2" select="$xml1//a"/>
nodetext:::<c:out value="${txt2}"/>
<br>

実行結果
dump:::<?xml version="1.0" encoding="Shift_JIS"?><a>漢字</a>
err:::
node:::漢字
nodetext:::[[a: null]]

最後の行の出力が
nodetext:::漢字
となって欲しいのですが、どうすればよいでしょう?

Tomcat 5.5.17、JDK 1.5.0_06です。

もか
会議室デビュー日: 2007/12/01
投稿数: 1
投稿日時: 2007-12-01 01:56
<x:set var="txt2" select="$xml1//a"/>
の行を以下のように変えてはいかがでしょうか?
<c:set var="txt2" ><x:out select="$xml1//a"/></c:set>
1

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