[Seasar-user:18396] Re: [DBFlute] テーブル無しでプロシージャを扱いたい場合は

kubo [E-MAIL ADDRESS DELETED]
2009年 8月 28日 (金) 12:50:57 JST


久保(jflute)です。

なるほど、テーブル0件チェックに引っ掛かってますね。。。
もしアップグレード可能であれば、0.9.5.4で対応したいと思うので、
こちらのDBFlute-0.9.5.4-SNAPSHOTで試して頂けませんでしょうか?
http://dbflute.sandbox.seasar.org/download/dbflute/dbflute-0.9.5.4-SNAPSHOT.zip
(DBFluteランタイムはDBFlute-0.9.5.4-RC1でお願いします)

A. テーブルが0件で、かつ、additionalTableの設定なし
B. テーブルが0件で、かつ、additionalTableの設定あり

の両方を試して頂けると助かります。

2009/8/28 西山 はじめ <[E-MAIL ADDRESS DELETED]>:
> お世話になっております。
> 西山です。
>
> 環境は最初のメールの通りですので、物理的に別DBです。
> 同じDBで別スキーマならよかったのですが。
>
> あと、additionalTableに定義しただけでは、jdbc.batは通りませ んでした。
>
> 以上よろしくお願いいたします。
> =============================エラー内容=====================
> [torque-jdbc-transform] A table was NOT FOUND in the schema!
> [torque-jdbc-transform]
> [torque-jdbc-transform] [Advice]
> [torque-jdbc-transform] Please confirm the database connection settings.
> [torque-jdbc-transform] If you've not created the schema yet, please create
> it.
> [torque-jdbc-transform] You can create easily by using replace-schema.
> [torque-jdbc-transform] Set up ./playsql/replace-schema.sql and execute
> ReplaceSchema task.
>
> =============================スタックトレース===============
> [torque-jdbc-transform] * * * * * * * * * */
> [torque-jdbc-transform]         at
> org.apache.torque.task.TorqueJDBCTransformTask.throwTableNotFoundException(TorqueJDBCTransformTask.java:480)
> [torque-jdbc-transform]         at
> org.apache.torque.task.TorqueJDBCTransformTask.generateXML(TorqueJDBCTransformTask.java:246)
> [torque-jdbc-transform]         at
> org.apache.torque.task.TorqueJDBCTransformTask.doExecute(TorqueJDBCTransformTask.java:184)
> [torque-jdbc-transform]         at
> org.seasar.dbflute.task.bs.DfAbstractTask.execute(DfAbstractTask.java:83)
> [torque-jdbc-transform]         at
> org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
> [torque-jdbc-transform]         at
> sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
> [torque-jdbc-transform]         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> [torque-jdbc-transform]         at
> java.lang.reflect.Method.invoke(Method.java:597)
> [torque-jdbc-transform]         at
> org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
> [torque-jdbc-transform]         at
> org.apache.tools.ant.Task.perform(Task.java:348)
> [torque-jdbc-transform]         at
> org.apache.tools.ant.Target.execute(Target.java:357)
> [torque-jdbc-transform]         at
> org.apache.tools.ant.Target.performTasks(Target.java:385)
> [torque-jdbc-transform]         at
> org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
> [torque-jdbc-transform]         at
> org.apache.tools.ant.Project.executeTarget(Project.java:1298)
> [torque-jdbc-transform]         at
> org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
> [torque-jdbc-transform]         at
> org.apache.tools.ant.Project.executeTargets(Project.java:1181)
> [torque-jdbc-transform]         at
> org.apache.tools.ant.Main.runBuild(Main.java:698)
> [torque-jdbc-transform]         at
> org.apache.tools.ant.Main.startAnt(Main.java:199)
> [torque-jdbc-transform]         at
> org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
> [torque-jdbc-transform]         at
> org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
> [torque-jdbc-transform] 2009-08-28 12:34:47,869 INFO  -
> [torque-jdbc-transform]
> [torque-jdbc-transform] _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
>
> 実行するには、何らかのテーブルが存在している必要がありそうです。
>
>
>
> [2009/08/28 11:54] kubo さんは書きました。:
>>
>> 久保(jflute)です。
>>
>> もし同じOracleの別スキーマの場合の補足ですが、
>>
>> databaseInfoMap.dfpropにて
>>
>> A. additionalSchemaListに別スキーマを指定
>>
>> B. tableExceptListで別スキーマのテーブルを全て除外
>>  ※権限的に参照できないのであれば除外の必要なし
>>
>> という感じですね
>>
>> 2009/8/28 kubo <[E-MAIL ADDRESS DELETED]>:
>>>
>>> 久保(jflute)です。
>>>
>>> そうですね、とりあえずは
>>> additionalTableでダミーテーブルを一個定義すれば
>>> いけるかと思いますのでそれで回避お願いします。
>>> (additionalTableの存在価値が新たに!?)
>>>
>>> 後は、その別DBというのが同じOracleでの別スキーマとか
>>> であれば、additionalSchemaの機能でうまく調整すれば
>>> ストアドだけ引っ張ってこれるかもしれません。
>>> (その場合IN引数だけであれば外だしSQLで単に
>>>  callしても良いかと思います。)
>>>
>>> 2009/8/28 西山 はじめ <[E-MAIL ADDRESS DELETED]>:
>>>>
>>>> お世話になっております。
>>>> 西山です。
>>>>
>>>> ご回答ありがとうございます。
>>>>
>>>>> その別のDBの何かしら1テーブルだけ(そのプロシージャに関係する)
>>>>> 自動生成して実行するようにして下さい。
>>>>
>>>> やはり、そうですか・・・
>>>> 実は、別で作成されたDBに認証用のプロシージャが置いてあり、認
>>>> 証はそれで行う必要があるとのことです。
>>>>
>>>>> (それともそのDBにはプロシージャしかなかったり?)
>>>>
>>>> テーブルも存在するでしょうが、それらに一切アクセスすることは
>>>> なく、恐らく事前(本番環境でのテスト前)にその情報が手に入る
>>>> ことはありません。
>>>>
>>>> そこで、テーブル情報とは関係無しにプロシージャが呼べれば、と
>>>> 考えました。
>>>>
>>>> ダミーのテーブル定義をすれば実行できましたので、この方法で逃
>>>> げようと思います。
>>>>
>>>>
>>>> [2009/08/27 20:11] kubo さんは書きました。:
>>>>>
>>>>> 久保(jflute)です。
>>>>>
>>>>> 西山さん、こんばんは
>>>>>
>>>>> その別のDBの何かしら1テーブルだけ(そのプロシージャに関係する)
>>>>> 自動生成して実行するようにして下さい。
>>>>> (それともそのDBにはプロシージャしかなかったり?)
>>>>>
>>>>> 2009/8/27 西山 はじめ <[E-MAIL ADDRESS DELETED]>:
>>>>>>
>>>>>> お世話になっております。
>>>>>> 西山です。
>>>>>>
>>>>>> 今度の案件で、別DBの「プロシージャだけ」を実行する必要が出て
>>>>>> きました。
>>>>>> DBFluteでは、外だしSQLもプロシージャもBhvから実行しますの
>>>>>> で、なんらかしらのテーブルが必要となる認識です。
>>>>>>
>>>>>> これを、テーブル無し(テーブルごとのBhv無し)で実行する方法
>>>>>> や代替手段はありますでしょうか?
>>>>>>
>>>>>> 一応、project-schema-name.xmlを自力で作成してgenerateすれば
>>>>>> 大丈夫そうですが、もし他の手段がありましたら教えてください。
>>>>>>
>>>>>> 大まかな環境は以下の通りです。
>>>>>>
>>>>>> Java
>>>>>>  JDK1.5
>>>>>> Seasar
>>>>>>  2.4.39
>>>>>> DBFlute
>>>>>>  0.9.5.3
>>>>>> データベース
>>>>>>  DB-1:Oracle10g(メインで扱うDB)
>>>>>>  DB-2:Oracle10g(数テーブル、データだけを参照)
>>>>>>  DB-3:Oracle10g(プロシージャだけを利用)※
>>>>>> (全て物理的に別のサーバーで、DBLINKは今のところ貼れない感じ
>>>>>> です。)
>>>>>>
>>>>>> 以上よろしくお願いいたします。
>>>>>>
>>>>>> --
>>>>>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>>>>> 株式会社フジミック
>>>>>> システム開発センター ソフトウェア開発部
>>>>>> 西山 創
>>>>>> [E-mail]:[E-MAIL ADDRESS DELETED]
>>>>>>
>>>>>> 〒140-0002 東京都品川区東品川3-32-42 フジテレビ別館7階
>>>>>> [TEL]:03-5495-1060
>>>>>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>>>>>
>>>>>> _______________________________________________
>>>>>> Seasar-user mailing list
>>>>>> [E-MAIL ADDRESS DELETED]
>>>>>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>>>>>
>>>>>
>>>>>
>>>>
>>>> --
>>>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>>> 株式会社フジミック
>>>> システム開発センター ソフトウェア開発部
>>>> 西山 創
>>>> [E-mail]:[E-MAIL ADDRESS DELETED]
>>>>
>>>> 〒140-0002 東京都品川区東品川3-32-42 フジテレビ別館7階
>>>> [TEL]:03-5495-1060
>>>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>>>
>>>> _______________________________________________
>>>> Seasar-user mailing list
>>>> [E-MAIL ADDRESS DELETED]
>>>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>>>
>>
>>
>>
>
>
> --
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> 株式会社フジミック
>         システム開発センター ソフトウェア開発部
>  西山 創
> [E-mail]:[E-MAIL ADDRESS DELETED]
>
> 〒140-0002 東京都品川区東品川3-32-42 フジテレビ別館7階
> [TEL]:03-5495-1060
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>


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