[Seasar-user:21258] Re: MySQL と S2Dao の連携

Hiroyuki Ohnaka [E-MAIL ADDRESS DELETED]
2012年 1月 18日 (水) 01:56:48 JST


大中(せと)です。

> クラスパスを修正して再度実施しましたが、新たなエラーメッセージが・・・。

アノテーションが読めてないみたいですね。
実行時にS2Dao-Tigerにクラスパスが通っているか確認してもらえますか?


On Tue, 17 Jan 2012 12:16:52 +0000
<[E-MAIL ADDRESS DELETED]> wrote:

> masanです。
> 
> 小林 (koichik) さん、早速の回答ありがとうございます。
> クラスパスを確認しました。
> 確かに、MySQL の JDBC ドライバファイルのある場所が間違っていました。
> 基本的なミスでした。
> 申し訳ありません。
> 
> クラスパスを修正して再度実施しましたが、新たなエラーメッセージが・・・。
> 
> org.seasar.dao.MethodSetupFailureRuntimeException: [EDAO0019]avpdd2.dao.StdDaoのselectedByFnameメソッドの初期化時に例外
> が発生しました。理由はorg.seasar.dao.BeanNotFoundRuntimeException: [EDAO0027]Daoインターフェース(avpdd2.dao.StdDao)に関
> 連づいたBeanクラスが見つかりません
>         at org.seasar.dao.impl.DaoMetaDataImpl.setupMethod(DaoMetaDataImpl.java:219)
>         at org.seasar.dao.impl.DaoMetaDataImpl.setupMethod(DaoMetaDataImpl.java:187)
>         at org.seasar.dao.impl.DaoMetaDataImpl.setupSqlCommand(DaoMetaDataImpl.java:171)
>         at org.seasar.dao.impl.DaoMetaDataImpl.initialize(DaoMetaDataImpl.java:162)
>         at org.seasar.dao.impl.DaoMetaDataFactoryImpl.createDaoMetaData(DaoMetaDataFactoryImpl.java:167)
>         at org.seasar.dao.impl.DaoMetaDataFactoryImpl.getDaoMetaData(DaoMetaDataFactoryImpl.java:131)
>         at org.seasar.dao.interceptors.S2DaoInterceptor.invoke(S2DaoInterceptor.java:51)
>         at org.seasar.dao.pager.PagerS2DaoInterceptorWrapper.invoke(PagerS2DaoInterceptorWrapper.java:71)
>         at avpdd2.dao.StdDao$$EnhancedByS2AOP$$107ebe1$$MethodInvocation$$selectedByBsno0.proceed(MethodInvocationClassG
> enerator.java)
>         at avpdd2.dao.StdDao$$EnhancedByS2AOP$$107ebe1.selectedByBsno(StdDao$$EnhancedByS2AOP$$107ebe1.java)
>         at avpdd2.SpecRegist2.main(SpecRegist2.java:121)
> Caused by: org.seasar.dao.BeanNotFoundRuntimeException: [EDAO0027]Daoインターフェース(avpdd2.dao.StdDao)に関連づいたBean
> クラスが見つかりません
>         at org.seasar.dao.impl.NullBeanMetaData.throwException(NullBeanMetaData.java:182)
>         at org.seasar.dao.impl.NullBeanMetaData.getAutoSelectList(NullBeanMetaData.java:47)
>         at org.seasar.dao.dbms.Standard.getAutoSelectSql(Standard.java:64)
>         at org.seasar.dao.impl.DaoMetaDataImpl.createSelectDynamicCommand(DaoMetaDataImpl.java:416)
>         at org.seasar.dao.impl.DaoMetaDataImpl.setupQuerySelectMethodByAuto(DaoMetaDataImpl.java:738)
>         at org.seasar.dao.impl.DaoMetaDataImpl.setupSelectMethodByAuto(DaoMetaDataImpl.java:721)
>         at org.seasar.dao.impl.DaoMetaDataImpl.setupMethodByAuto(DaoMetaDataImpl.java:389)
>         at org.seasar.dao.impl.DaoMetaDataImpl.setupMethod(DaoMetaDataImpl.java:216)
>         ... 10 more
> 
> 引き続きのアドバイスをお願いいたします。
> 
> -----Original Message-----
> From: [E-MAIL ADDRESS DELETED]
> Sent: Tuesday, January 17, 2012 8:57 PM
> To: [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:21256] Re: MySQL と S2Dao の連携
> 
> 小林 (koichik) です.
> 
> > (com.mysql.jdbc.Driver)を設定できませんでした。
> 
> ということなので、MySQL の JDBC ドライバがクラスパスに通ってないのでは?
> もっと後ろのログに ClassNotFoundException あたりが出ていると思います。
> 
> Eclipse のプロジェクトでクラスパスに設定している Jar が
> CLASSPATH 変数または --classpath 引数に設定されているか、
> 確認してみてください。
> 
> 
> Date: Tue, 17 Jan 2012 20:37:55 +0900
> From: <[E-MAIL ADDRESS DELETED]>
> Subject: [Seasar-user:21255] Re: MySQL と S2Dao の連携
> 
> > masanです。
> > 
> > 以前に問い合わせた内容の続きになります。
> > eclipse のデバッグ画面上では、動作できるようになったのですが
> > コマンドプロンプトから実行すると下記エラーメッセージが表示されます。
> > 
> > org.seasar.framework.exception.OgnlRuntimeException: 
> > [ESSR0073]OGNLで例外が発生しました。理由は[ESSR0059]クラス(org.seas
> > ar.dao.impl.DaoMetaDataFactoryImpl)のプロパティ(beanMetaDataFactory)の設定に失敗しま
> > した。理由はorg.seasar.framework.bea
> > ns.IllegalPropertyRuntimeException: 
> > [ESSR0059]クラス(org.seasar.dao.impl.BeanMetaDataFactoryImpl)のプロパティ(dataS
> > ource
> > )の設定に失敗しました。理由はorg.seasar.framework.beans.IllegalPropertyRuntimeExcept
> > ion: [ESSR0059]クラス(org.seasar.ext
> > ension.dbcp.impl.ConnectionPoolImpl)のプロパティ(XADataSource)の設定に失敗しました。理由は
> > org.seasar.framework.beans.Ill
> > egalPropertyRuntimeException: 
> > [ESSR0059]クラス(org.seasar.extension.dbcp.impl.XADataSourceImpl)のプロパティ(d
> > riverClassN
> > ame)の設定に失敗しました。理由はorg.seasar.framework.exception.SIllegalArgumentExcep
> > tion: [ESSR0098]クラス(org.seasar.ex
> > tension.dbcp.impl.XADataSourceImpl)[sun.misc.Launcher$[E-MAIL ADDRESS DELETED]
> > 1b86e7]の型(java.lang.String)[null]のプロパティ(dr
> > iverClassName)に、型(java.lang.String)[null]の値(com.mysql.jdbc.Driver)を設定で
> > きませんでした。対象のクラスは(org.seasar
> > .extension.dbcp.impl.XADataSourceImpl)[sun.misc.Launcher$AppClassLoade
> > [E-MAIL ADDRESS DELETED]]です。 at file:///C:/eclipse/workspace/a
> > vpdd2/bin/avpdd2/dao/StdDao.dicon(8)
> > 
> > この情報から、不具合原因がわかるでしょうか?
> > 追加の情報が必要であれば、再度アップします。
> > 
> > 以上、よろしくお願いいたします。
> > 
> > >送信者 : <[E-MAIL ADDRESS DELETED]>
> > >主題 : [Seasar-user:21126] Re:MySQL と S2Dao の連携
> > >受信日 :11/11/07 22:44
> > >属性 : なし
> > >
> > >masanです。
> > >
> > >大中(せと)さん、回答ありがとうございます。
> > >dao.diconファイルを削除して実行したところ、今度はjdbc.diconファイルがないと
> > >言うメッセージが出ました。
> > >が、jdbc.diconファイルを所定のフォルダに準備したところ、無事に挿入ができるように
> > >なりました。
> > >
> > >ありがとうございました。
> > >
> > >>送信者 : <[E-MAIL ADDRESS DELETED]>
> > >>主題 : [Seasar-user:21125] Re:MySQL と S2Dao の連携
> > >>受信日 :11/11/07 21:14
> > >>属性 : なし
> > >>
> > >>大中(せと)です。
> > >>
> > >>> dao.diconでorg.seasar.dao.impl.FieldAnnotationReaderFactory を明示的に
> > >>> 指定しています。
> > >>> dao.diconファイルですが、s2-dao-10.51の中にあるs2-dao-examplesの
> > >>> mysql用のdiconファイルをリネームしたものです。
> > >>> (サンプルファイルを添付します)
> > >>
> > >>
> > >>S2Daoのjarの中にデフォルト設定のdao.diconが含まれていますので、
> > >>カスタマイズを行わない場合はdao.diconを含む必要はありません。
> > >>
> > >>s2-dao-examplesのほうは古い記述が残っているので、
> > >>次のリリースまでになおします。
> > >>
> > >>2011年11月7日19:32  <[E-MAIL ADDRESS DELETED]>:
> > >>> masanです。
> > >>>
> > >>> 大中(せと)さん、回答ありがとうございます。
> > >>> 確かに
> > >>> dao.diconでorg.seasar.dao.impl.FieldAnnotationReaderFactory を明示的に
> > >>> 指定しています。
> > >>> dao.diconファイルですが、s2-dao-10.51の中にあるs2-dao-examplesの
> > >>> mysql用のdiconファイルをリネームしたものです。
> > >>> (サンプルファイルを添付します)
> > >>> これをそのまま用いたらいけなかったのでしょうか?
> > >>>
> > >>> 以上、よろしくお願いいたします。
> > >>>
> > >>>>送信者 : <[E-MAIL ADDRESS DELETED]>
> > >>>>主題 : [Seasar-user:21123] Re:MySQL と S2Dao の連携
> > >>>>受信日 :11/11/07 18:53
> > >>>>属性 : なし
> > >>>>
> > >>>>大中(せと)です。
> > >>>>
> > >>>>dao.diconでorg.seasar.dao.impl.FieldAnnotationReaderFactory を明示的に
> > >>>>指定していませんか?
> > >>>>
> > >>>>2011年11月4日8:00  <[E-MAIL ADDRESS DELETED]>:
> > >>>>> masanです。
> > >>>>>
> > >>>>> 今田様、回答ありがとうございます。
> > >>>>> 現時点では、eclipse上からデバッグをしていますが、
> > >>>>> コンパイル時と実行時のパスはそれぞれ設定をするのでしょうか?
> > >>>>> これまでは、意識をしていませんでしたが、それで不具合が
> > >>>>> 起きたことはなかったです。
> > >>>>>
> > >>>>> 以上、よろしくお願いします。
> > >>>>>
> > >>>>>>送信者 : <[E-MAIL ADDRESS DELETED]>
> > >>>>>>主題 : [Seasar-user:21111] Re:MySQL と S2Dao の連携
> > >>>>>>受信日 :11/11/02 16:04
> > >>>>>>属性 : なし
> > >>>>>>
> > >>>>>>masanさん こんにちは。
> > >>>>>>
> > >>>>>>今田と申します。
> > >>>>>>普段からS2Daoを利用させてもらっています。
> > >>>>>>
> > >>>>>>■開発環境
> > >>>>>>S2Dao 1.0.51
> > >>>>>>とのことですが、
> > >>>>>>
> > >>>>>>コンパイル時には、
> > >>>>>>s2-dao-1.0.51.jar
> > >>>>>>s2-dao-tiger-1.0.51.jar
> > >>>>>>の2つのjarにパスが通っていると思いますが、
> > >>>>>>実行時に、
> > >>>>>>s2-dao-tiger-1.0.51.jar
> > >>>>>>にパスが通っていないということはないでしょうか?
> > >>>>>>
> > >>>>>>予想が違っていたらすみません。
> > >>>>>>
> > >>>>>>
> > >>>>>>-----Original Message-----
> > >>>>>>From: [E-MAIL ADDRESS DELETED] 
> > >>>>>>[mailto:[E-MAIL ADDRESS DELETED]] On Behalf Of 
> > >>>>>>[E-MAIL ADDRESS DELETED]
> > >>>>>>Sent: Wednesday, November 02, 2011 1:08 PM
> > >>>>>>To: [E-MAIL ADDRESS DELETED]
> > >>>>>>Subject: [Seasar-user:21110] Re:MySQL と S2Dao の連携
> > >>>>>>
> > >>>>>>masanです。
> > >>>>>>
> > >>>>>>回答が遅くなり申し訳ありませんでした。
> > >>>>>>スタックトレースは、こちらでよろしいでしょうか?
> > >>>>>>
> > >>>>>>DEBUG 2011-11-02 13:04:00,267 [main] 
> > >>>>>>S2Containerを作成します。path=avpdd2/dao/StdDao.dicon
> > >>>>>>DEBUG 2011-11-02 13:04:00,345 [main] 
> > >>>>>>S2Containerを作成します。path=dao.dicon
> > >>>>>>DEBUG 2011-11-02 13:04:00,361 [main] 
> > >>>>>>S2Containerを作成します。path=j2ee-mysql.dicon
> > >>>>>>DEBUG 2011-11-02 13:04:00,595 [main] 
> > >>>>>>S2Containerを作成しました。path=j2ee-mysql.dicon
> > >>>>>>DEBUG 2011-11-02 13:04:00,674 [main] 
> > >>>>>>S2Containerを作成しました。path=dao.dicon
> > >>>>>>DEBUG 2011-11-02 13:04:00,674 [main] 
> > >>>>>>S2Containerを作成しました。path=avpdd2/dao/StdDao.dicon
> > >>>>>>DEBUG 2011-11-02 13:04:04,689 [main] 物理的なコネクションを取得しました
> > >>>>>>DEBUG 2011-11-02 13:04:04,689 [main] 論理的なコネクションを取得しました。tx=null
> > >>>>>>DEBUG 2011-11-02 13:04:04,705 [main] 論理的なコネクションを閉じました。tx=null
> > >>>>>>Exception in thread "main" org.seasar.dao.MethodSetupFailureRuntimeException: [EDAO0019]avpdd2.dao.StdDaoのinsertメソッドの初期化時に例外が発生しました。理由はorg.seasar.dao.IllegalSignatureRuntimeException: [EDAO0006](public abstract int avpdd2.dao.StdDao.insert(avpdd2.entity.Std))は不正です。引数は1つでBeanの型と一致しなければなりません。
> > >>>>>>       at org.seasar.dao.impl.DaoMetaDataImpl.setupMethod(DaoMetaDataImpl.java:219)
> > >>>>>>       at org.seasar.dao.impl.DaoMetaDataImpl.setupMethod(DaoMetaDataImpl.java:187)
> > >>>>>>       at org.seasar.dao.impl.DaoMetaDataImpl.setupSqlCommand(DaoMetaDataImpl.java:171)
> > >>>>>>       at org.seasar.dao.impl.DaoMetaDataImpl.initialize(DaoMetaDataImpl.java:162)
> > >>>>>>       at org.seasar.dao.impl.DaoMetaDataFactoryImpl.createDaoMetaData(DaoMetaDataFactoryImpl.java:167)
> > >>>>>>       at org.seasar.dao.impl.DaoMetaDataFactoryImpl.getDaoMetaData(DaoMetaDataFactoryImpl.java:131)
> > >>>>>>       at org.seasar.dao.interceptors.S2DaoInterceptor.invoke(S2DaoInterceptor.java:51)
> > >>>>>>       at avpdd2.dao.StdDao$$EnhancedByS2AOP$$49cf9f$$MethodInvocation$$insert1.proceed(MethodInvocationClassGenerator.java)
> > >>>>>>       at avpdd2.dao.StdDao$$EnhancedByS2AOP$$49cf9f.insert(StdDao$$EnhancedByS2AOP$$49cf9f.java)
> > >>>>>>       at avpdd2.SpecRegist.main(SpecRegist.java:36)
> > >>>>>>Caused by: org.seasar.dao.IllegalSignatureRuntimeException: [EDAO0006](public abstract int avpdd2.dao.StdDao.insert(avpdd2.entity.Std))は不正です。引数は1つでBeanの型と一致しなければなりません。
> > >>>>>>       at org.seasar.dao.impl.DaoMetaDataImpl.checkAutoUpdateMethod(DaoMetaDataImpl.java:902)
> > >>>>>>       at org.seasar.dao.impl.DaoMetaDataImpl.setupInsertMethodByAuto(DaoMetaDataImpl.java:537)
> > >>>>>>       at org.seasar.dao.impl.DaoMetaDataImpl.setupMethodByAuto(DaoMetaDataImpl.java:383)
> > >>>>>>       at org.seasar.dao.impl.DaoMetaDataImpl.setupMethod(DaoMetaDataImpl.java:216)
> > >>>>>>       ... 9 more
> > >>>>>>
> > >>>>>>
> > >>>>>>以上、よろしくお願いいたします。
> > >>>>>>
> > >>>>>>>送信者 : <[E-MAIL ADDRESS DELETED]>
> > >>>>>>>主題 : [Seasar-user:21102] Re:MySQL と S2Dao の連携
> > >>>>>>>受信日 :11/10/28 22:03
> > >>>>>>>属性 : なし
> > >>>>>>>
> > >>>>>>>大中(せと)です。
> > >>>>>>>
> > >>>>>>>> 一致していないようには思えないのですが・・・。
> > >>>>>>>> 以上、よろしくお願いいたします。
> > >>>>>>>
> > >>>>>>>ちょっと解せないので、スタックトレースを見せてもらえますか?
> > >>>>>>>_______________________________________________
> > >>>>>>>Seasar-user mailing list
> > >>>>>>>[E-MAIL ADDRESS DELETED]
> > >>>>>>>https://ml.seasar.org/mailman/listinfo/seasar-user
> > >>>>>>>
> > >>>>>>_______________________________________________
> > >>>>>>Seasar-user mailing list
> > >>>>>>[E-MAIL ADDRESS DELETED]
> > >>>>>>https://ml.seasar.org/mailman/listinfo/seasar-user
> > >>>>>>_______________________________________________
> > >>>>>>Seasar-user mailing list
> > >>>>>>[E-MAIL ADDRESS DELETED]
> > >>>>>>https://ml.seasar.org/mailman/listinfo/seasar-user
> > >>>>>>
> > >>>>> _______________________________________________
> > >>>>> Seasar-user mailing list
> > >>>>> [E-MAIL ADDRESS DELETED]
> > >>>>> https://ml.seasar.org/mailman/listinfo/seasar-user
> > >>>>>
> > >>>>_______________________________________________
> > >>>>Seasar-user mailing list
> > >>>>[E-MAIL ADDRESS DELETED]
> > >>>>https://ml.seasar.org/mailman/listinfo/seasar-user
> > >>>>
> > >>>
> > >>> _______________________________________________
> > >>> Seasar-user mailing list
> > >>> [E-MAIL ADDRESS DELETED]
> > >>> https://ml.seasar.org/mailman/listinfo/seasar-user
> > >>>
> > >>>
> > >>_______________________________________________
> > >>Seasar-user mailing list
> > >>[E-MAIL ADDRESS DELETED]
> > >>https://ml.seasar.org/mailman/listinfo/seasar-user
> > >>
> > >_______________________________________________
> > >Seasar-user mailing list
> > >[E-MAIL ADDRESS DELETED]
> > >https://ml.seasar.org/mailman/listinfo/seasar-user
> > >
> > _______________________________________________
> > Seasar-user mailing list
> > [E-MAIL ADDRESS DELETED]
> > https://ml.seasar.org/mailman/listinfo/seasar-user
> 
> --
> {
>   name: "Koichi Kobayashi",
>   mail: "[E-MAIL ADDRESS DELETED]",
>   blog: "http://d.hatena.ne.jp/koichik/",
>   twitter: "@koichik"
>  }
> 
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user


-- 
Hiroyuki Ohnaka <[E-MAIL ADDRESS DELETED]>


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