[Seasar-user:21423] Re: s2jdbcGen実行時のエラーについて

武藤  勝也 [E-MAIL ADDRESS DELETED]
2012年 8月 24日 (金) 15:04:34 JST


吉田様、中村様
[Seasar-user:21421][Seasar-user:21422]
 
早速のご回答ありがとうございます。
 
ご指摘の通り、s2jdbc.diconにoracleDialectを指定し、
無事動作することを確認いたしました。
 
ありがとうございました。


----- Original Message -----
>From: Toshihiro Nakamura <nakamura.toshihiro @ isid.co.jp>
>To: "seasar-user @ ml.seasar.org" <seasar-user @ ml.seasar.org>
>Date: 2012/8/24, Fri 14:50
>Subject: [Seasar-user:21422] Re: s2jdbcGen実行時のエラーについて
>
>中村(taedium)です。
>
>> [gen-entity] DEBUG 2012-08-24 11:11:24,732 [main] RDBMS(Oracle)に対しS2JDBC-Gen用のデータベースの方言(org.seasar.extension.jdbc.gen.internal.dialect.H2GenDialect)を使用します。
>
>上記のログから、設定ファイルに指定している
>ダイアレクトが正しくないということがわかります。
>(H2用のダイアレクトが使われてしまっています)
>
>s2jdbc.diconにてoracleDialectを指定してみてください。
>http://s2container.seasar.org/2.4/ja/s2jdbc_setup.html
>
>設定が正しければ、
>ログでH2GenDialectの代わりにOracleGenDialectが
>出力されるようになります。
>
>
>On Fri, 24 Aug 2012 14:22:20 +0900
>武藤  勝也 <mutojapan2002 @ yahoo.co.jp> wrote:
>
>> 初歩的な質問で申し訳ございません。
>> s2jdbcGenを実行した際に発生したoracleエラーについて質問させてください。
>> 目的はエンティティの自動生成です。
>> 
>> ■環境
>> JAVA1.6
>> TOMCAT6
>> Dolteng(SAStruts++S2JDBC)
>> Oracle10g
>> Eclipse
>> 
>> ■環境構築の内容
>> 
>> ①Oracleに任意のテーブルを作成。
>> ②Eclipse上でDoltengプロジェクトを作成。
>> ③ojdbc6.jarをビルドパスに設定
>> ④jdbc.diconを修正し、向き先をOracleに設定。
>> ⑤s2jdbc-gen-build.xmlを実行(ターゲットはgen-entity)
>> 
>> 
>> ■エラー内容
>> Buildfile: C:\pleiades\workspace\s2jdbcGen\s2jdbc-gen-build.xml
>> gen-entity:
>> [gen-entity] INFO ?2012-08-24 11:11:23,935 [main] バージョン : S2JDBC-Gen 2.4.45
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンド(org.seasar.extension.jdbc.gen.internal.command.GenerateEntityCommand)を実行します。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(initialValue)には値(null)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(entityPackageName)には値(entity)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(entityTemplateFileName)には値(java/entity.ftl)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(javaFileDestDir)には値(C:\pleiades\workspace\s2jdbcGen\src\main\java)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(javaFileEncoding)には値(UTF-8)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(overwrite)には値(false)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(rootPackageName)には値(dp)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(schemaName)には値(null)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(templateFileEncoding)には値(UTF-8)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(templateFilePrimaryDir)には値(null)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(tableNamePattern)には値(.*)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(ignoreTableNamePattern)には値((SCHEMA_INFO|.*\$.*))が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(versionColumnNamePattern)には値(VERSION([_]?NO)?)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(pluralFormFile)には値(null)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(showCatalogName)には値(false)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(showSchemaName)には値(false)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(showTableName)には値(false)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(showColumnName)には値(false)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(showColumnDefinition)には値(false)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(showJoinColumn)には値(false)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(genDialectClassName)には値(null)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(generationType)には値(null)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(allocationSize)には値(null)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(entitySuperclassName)には値(null)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(useAccessor)には値(false)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(applyDbCommentToJava)には値(false)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(useTemporalType)には値(false)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(configPath)には値(s2jdbc.dicon)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(env)には値(ut)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(jdbcManagerName)には値(jdbcManager)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,935 [main] コマンドのプロパティ(factoryClassName)には値(org.seasar.extension.jdbc.gen.internal.factory.FactoryImpl)が設定されています。
>> [gen-entity] DEBUG 2012-08-24 11:11:23,951 [main] 環境変数#Envにファイル(env.txt)から値(ct)が設定されました
>> [gen-entity] INFO ?2012-08-24 11:11:23,951 [main] s2-frameworkのバージョンは2.4.45です。
>> [gen-entity] INFO ?2012-08-24 11:11:23,951 [main] s2-extensionのバージョンは2.4.45です。
>> [gen-entity] INFO ?2012-08-24 11:11:23,951 [main] s2-tigerのバージョンは2.4.45です。
>> [gen-entity] DEBUG 2012-08-24 11:11:24,045 [main] S2Containerを作成します。path=warmdeploy.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,045 [main] S2Containerを作成します。path=convention.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,107 [main] S2Containerを作成しました。path=convention.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,107 [main] S2Containerを作成します。path=customizer.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,107 [main] S2Containerを作成します。path=default-customizer.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,107 [main] S2Containerを作成します。path=std-customizer.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,123 [main] S2Containerを作成します。path=std-customizer-tiger.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,138 [main] S2Containerを作成しました。path=std-customizer-tiger.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,154 [main] S2Containerを作成しました。path=std-customizer.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,154 [main] S2Containerを作成しました。path=default-customizer.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,170 [main] S2Containerを作成しました。path=customizer.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,170 [main] S2Containerを作成します。path=creator.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,185 [main] S2Containerを作成しました。path=creator.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,185 [main] S2Containerを作成しました。path=warmdeploy.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,201 [main] S2Containerを作成します。path=s2jdbc.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,216 [main] S2Containerを作成します。path=jdbc.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,216 [main] S2Containerを作成します。path=jta.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,232 [main] S2Containerを作成しました。path=jta.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,248 [main] S2Containerを作成しました。path=jdbc.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,248 [main] S2Containerを作成します。path=s2jdbc-internal.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,248 [main] S2Containerを作成します。path=convention.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,263 [main] S2Containerを作成しました。path=convention.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,263 [main] S2Containerを作成しました。path=s2jdbc-internal.dicon
>> [gen-entity] DEBUG 2012-08-24 11:11:24,279 [main] S2Containerを作成しました。path=s2jdbc.dicon
>> [gen-entity] INFO ?2012-08-24 11:11:24,404 [main] Running on [ENV]ut, [DEPLOY MODE]Warm Deploy
>> [gen-entity] DEBUG 2012-08-24 11:11:24,732 [main] 物理的なコネクションを取得しました
>> [gen-entity] DEBUG 2012-08-24 11:11:24,732 [main] 論理的なコネクションを取得しました。tx=null
>> [gen-entity] DEBUG 2012-08-24 11:11:24,732 [main] 論理的なコネクションを閉じました。tx=null
>> [gen-entity] DEBUG 2012-08-24 11:11:24,732 [main] RDBMS(Oracle)に対しS2JDBC-Gen用のデータベースの方言(org.seasar.extension.jdbc.gen.internal.dialect.H2GenDialect)を使用します。
>> [gen-entity] DEBUG 2012-08-24 11:11:24,732 [main] 論理的なコネクションを取得しました。tx=null
>> [gen-entity] DEBUG 2012-08-24 11:11:33,012 [main] 論理的なコネクションを閉じました。tx=null
>> [gen-entity] DEBUG 2012-08-24 11:11:33,027 [main] 物理的なコネクションを閉じました
>> [gen-entity] Java Result: 1
>> 
>> BUILD FAILED
>> C:\pleiades\workspace\s2jdbcGen\s2jdbc-gen-build.xml:40: Exception in thread "main" org.seasar.extension.jdbc.gen.exception.CommandFailedRuntimeException: [ES2JDBCGen0005]コマンド(org.seasar.extension.jdbc.gen.internal.command.GenerateEntityCommand)の実行に失敗しました。バージョンは S2JDBC-Gen 2.4.45 です。理由はorg.seasar.framework.exception.SQLRuntimeException: [ESSR0072]SQLで例外(SQL=[], Message=[ORA-25191: 索引構成表のオーバーフロー表を参照できません
>> ], ErrorCode=25191, SQLState=99999)が発生しました
>> at org.seasar.extension.jdbc.gen.internal.command.AbstractCommand.execute(AbstractCommand.java:164)
>> at org.seasar.extension.jdbc.gen.internal.command.CommandInvokerImpl.invoke(CommandInvokerImpl.java:29)
>> at org.seasar.extension.jdbc.gen.command.CommandAdapter.main(CommandAdapter.java:61)
>> Caused by: org.seasar.framework.exception.SQLRuntimeException: [ESSR0072]SQLで例外(SQL=[], Message=[ORA-25191: 索引構成表のオーバーフロー表を参照できません
>> ], ErrorCode=25191, SQLState=99999)が発生しました
>> at org.seasar.extension.jdbc.gen.internal.meta.DbTableMetaReaderImpl.getDbUniqueKeyMetaList(DbTableMetaReaderImpl.java:447)
>> at org.seasar.extension.jdbc.gen.internal.meta.DbTableMetaReaderImpl.doDbUniqueKeyMeta(DbTableMetaReaderImpl.java:157)
>> at org.seasar.extension.jdbc.gen.internal.meta.DbTableMetaReaderImpl.read(DbTableMetaReaderImpl.java:132)
>> at org.seasar.extension.jdbc.gen.internal.desc.EntitySetDescFactoryImpl.getEntitySetDesc(EntitySetDescFactoryImpl.java:125)
>> at org.seasar.extension.jdbc.gen.internal.command.GenerateEntityCommand.doExecute(GenerateEntityCommand.java:691)
>> at org.seasar.extension.jdbc.gen.internal.command.AbstractCommand.execute(AbstractCommand.java:162)
>> ... 2 more
>> Caused by: java.sql.SQLException: ORA-25191: 索引構成表のオーバーフロー表を参照できません
>> 
>> at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
>> at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:395)
>> at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:802)
>> at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436)
>> at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186)
>> at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:521)
>> at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:194)
>> at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:1000)
>> at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1307)
>> at oracle.jdbc.driver.OracleStatement.executeUpdateInternal(OracleStatement.java:1814)
>> at oracle.jdbc.driver.OracleStatement.executeUpdate(OracleStatement.java:1779)
>> at oracle.jdbc.driver.OracleStatementWrapper.executeUpdate(OracleStatementWrapper.java:277)
>> at oracle.jdbc.OracleDatabaseMetaData.getIndexInfo(OracleDatabaseMetaData.java:4104)
>> at org.seasar.extension.jdbc.gen.internal.meta.DbTableMetaReaderImpl.getDbUniqueKeyMetaList(DbTableMetaReaderImpl.java:426)
>> ... 7 more
>> 
>> Total time: 9 seconds
>> 
>> 
>> ■補足
>> ・DBの向き先がH2であれば問題なく動作します。
>> ・Oracle11gで試しても同様の問題が発生いたします。
>> ・表領域を再作成し再実行を試みましたが、同様の問題が発生いたします。
>> 
>> 
>> ■質問内容
>> エラー内容は下記の通りです。
>> 
>> >ORA-25191: 索引構成表のオーバーフロー表を参照できません
>> >原因: 索引構成表のオーバーフロー表に、直接アクセスしようとしています。
>> >処置: 指定したオーバーフロー表を含んだ親索引構成表に対して文を発行してください。
>> 
>> 
>> 上記エラー回避のために実行前に特定の処理を行う必要はありますでしょうか。
>> 必要であれば内容のご教授をお願いいたします。
>> 
>> よろしくお願いします。
>
>-- 
>Toshihiro Nakamura <nakamura.toshihiro @ isid.co.jp>
>
>
>_______________________________________________
>Seasar-user mailing list
>Seasar-user @ ml.seasar.org
>https://ml.seasar.org/mailman/listinfo/seasar-user
>
>
>
-------------- next part --------------
HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...
URL: <https://www.seasar.org/archives/seasar-user/attachments/20120824/b7504b1d/attachment.html>


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