[Seasar-user:17564] [S2pager]OracleのTimestampTZ型について

石井 孝一 [E-MAIL ADDRESS DELETED]
2009年 6月 1日 (月) 09:57:36 JST


はじめまして。石井と申します。

ただいま新規でWebサービス開発を行っております。

S2Pager機能を使用して、データを取得したいと思っておりますが、
Oracleの型でTimestamp with Time Zoneの項目の場合にエラーとなります。
(S2Pager機能を使用しないS2Daoでは、同一テーブルを読み込んでもエラーは起
きておりません。)

普通のTimestamp型では、問題は起きておりません。

なにか設定方法等がおかしいのでしょうか?

何卒よろしくお願いいたします。

環境は、S2Framework
    S2Dao
    S2Pager
    S2Axis

テーブル:
Oracleのテーブル上の型は、Timestamp with Time Zoneで定義しています。

Dto:
Timestampで記述しています。

エラー内容:
[ESSR0072]SQLで例外(SQL=[], Message=[Conversion to Timestamp failed],
ErrorCode=0, SQLState=null)が発生しました
org.seasar.framework.exception.SQLRuntimeException: [ESSR0072]SQLで例外
(SQL=[], Message=[Conversion to Timestamp failed], ErrorCode=0,
SQLState=null)が発生しました

jdbc.dicon:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR2.1//DTD S2Container//EN"
	"http://www.seasar.org/dtd/components21.dtd">
<components namespace="jdbc">
	<include path="jta.dicon"/>

	<!-- 全DBMS対応のページング処理用設定 -->
	<component
		name="resultSetFactory"
		class="org.seasar.dao.pager.PagerResultSetFactoryWrapper">
		<arg>
			<component
class="org.seasar.extension.jdbc.impl.OracleResultSetFactory"/>
		</arg>
		<property name="useScrollCursor">true</property>
	</component>
	<component
class="org.seasar.extension.jdbc.impl.ConfigurableStatementFactory">
		<arg>
			<component class="org.seasar.dao.pager.PagerStatementFactory"/>
		</arg>
		<property name="fetchSize">100</property>
		<!--
		<property name="maxRows">100</property>
		-->
	</component>

	<component class="org.seasar.extension.jdbc.impl.OracleResultSetFactory"/>

	<!-- for Oracle -->
	<component name="xaDataSource"
		class="org.seasar.extension.dbcp.impl.XADataSourceImpl">
		<property name="driverClassName">
			"oracle.jdbc.driver.OracleDriver"
		</property>
		<property name="URL">
			"jdbc:oracle:thin:@xxx.xxx.xxx.xxx:1521:xxxx"
		</property>
		<property name="user">"xxxx"</property>
		<property name="password">"xxxx"</property>
		<initMethod name="addProperty">
			<arg>"includeSynonyms"</arg>
			<arg>"true"</arg>
		</initMethod>
	</component>

	<component name="connectionPool"
		class="org.seasar.extension.dbcp.impl.ConnectionPoolImpl">
		<property name="timeout">600</property>
		<property name="maxPoolSize">10</property>
		<!-- JTAトランザクションが開始されていない場合にコネクションを
		     取得できないようにするには次のプロパティをfalseにしてください.-->
		<property name="allowLocalTx">true</property>
		<destroyMethod name="close"/>
	</component>
	<component name="dataSource"
		class="org.seasar.extension.dbcp.impl.DataSourceImpl"/>

	
</components>


Seasar-user メーリングリストの案内