1. 無料アクセス解析

crossroad's Blog

Javaを中心にした技術ネタなど。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

タグファイルにオブジェクト参照を渡す時に実行時例外発生

JSP2.0のタグファイルで、タグの利用側からタグにオブジェクトを
渡したい場合のトラブル事例。

以下のようなタグファイルを作成したとします。
配置場所は、/WEB-INF/tagsの下です。

--- table.tag -------------------------------------
<%@ attribute name="list" type="java.util.List" required="true"%>
<table>
<% for(Iterator i = list.iterator(); i.hasNext(); ) { %>
<tr>
  <td><%= i.next() %></td>
</tr>
<% } %>
</table>
---------------------------------------------------

このタグにはList型のオブジェクト参照を渡す必要があります。
呼び出し側のJSPは以下です。

--- hoge.jsp --------------------------------------
<%@ taglib tagdir="/WEB-INF/tags" prefix="tag" %>
<tag:table list="${list}"/>
---------------------------------------------------

list="${list}"のようにELを使ってタグにListオブジェクトを渡します

このJSPを呼び出せば、page、request、session、applicationの各スコープから、
"list"と言う名前の属性を探し出し、HTMLの表として表示されるはずです。

が。。。実行してみると、

 org.apache.jasper.JasperException: jsp.error.beans.property.conversion

のような実行時例外が発生します。
タグが要求する型Listと、実際に指定されたオブジェクトの型が一致しないと言うのです。

タグファイルの書き方or呼び出し側のEL式が間違っているのかとさんざん
試行錯誤しましたが、原因はweb.xmlにありました。

web.xmlのServlet APIのバージョンが古く(2.3)、ELが認識されていなかったようで、
web.xmlの<webapp>要素を以下のように記述することで問題が解消しました。(参考

<xmlns="http://java.sun.com/xml/ns/j2ee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
  version="2.4">

関連記事
スポンサーサイト

テーマ:JAVA - ジャンル:コンピュータ

  1. 2006/09/21(木) 01:27:47|
  2. ソフトウェア開発 Java
  3. | トラックバック:0
  4. | コメント:2
<<Type safe EnumをS2Daoで永続化する | ホーム | Digesterのデバッグログを抑止する>>

コメント

えーお役にたてましたでしょうか?
であれば幸いです。
  1. URL |
  2. 2006/10/16(月) 01:07:24 |
  3. crossroad #-
  4. [ 編集]

v-17v-12
  1. URL |
  2. 2006/10/15(日) 06:09:34 |
  3. #-
  4. [ 編集]

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバックURLはこちら
http://bagineer.blog59.fc2.com/tb.php/38-d529bcca
この記事にトラックバックする(FC2ブログユーザー)

プロフィール

crossroad

Author:crossroad
関西在住。男。
フリーランスのソフトウェアエンジニア。
エレキベース(Rock&Roll)とお酒が好物でございます。

カテゴリー

タグリスト

Java F1 フリーランス ベーシスト HARRY TheStreetSliders iPhone FX お酒 Seasar Maven eclipse Wicket マイホーム 野球 プロジェクトファシリテーション Rails Ruby UML お店 ソフトウェア Tomcat S2Flex2 jsf Teeda Eclipse タグライブラリ ajax タスク europa mylyn trac 

ブログ内検索

最近の記事

最近のコメント

最近のトラックバック

カレンダー

10 | 2017/11 | 12
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 - -

月別アーカイブ

全ての記事を表示する

全ての記事を表示する

Twitter


RSSフィード

リンク

このブログをリンクに追加する

アクセスカウンタ

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。