[seasar-dotnet:755] Re: assemblyの定義について

Masafumi Teraoka [E-MAIL ADDRESS DELETED]
2008年 1月 31日 (木) 18:43:11 JST


お世話になっております、寺岡です。

Seasar.Dao.dllのAssembly定義が読めない件については、
杉本様のご指摘により解決したのですが、
次の処理の、

Dim dao As IHizukeDao = container.GetComponent(GetType(IHizukeDao))

で
System.NullReferenceExceptionが発生してしまいます。
ただ、Seasar.Dao.dllのバージョンの違いで発生しなくなります。
現在分かっているだけですが、Ver1.3.6.0、1.3.5.0、1.3.4.0、1.3.3.0などはエラーが発生します。
Ver0.4.5.0でならエラーは発生いたしません。

Genericなどの機能を使用したいので、できるだけ高バージョンDLLを使用したく考えております。

何かお分かりであれば、ご意見お聞かせ頂ける様宜しくお願い致します。

以上
----- Original Message ----- 
From: "Masafumi Teraoka" <[E-MAIL ADDRESS DELETED]>
To: <[E-MAIL ADDRESS DELETED]>
Sent: Wednesday, January 30, 2008 7:45 PM
Subject: [seasar-dotnet:753] Re:assemblyの定義について


> 杉本様
>
> お世話になっております、寺岡です。
>
> ご指摘通り、app.configを作成し実行すると、成功しました。
>
> Batchプロジェクトに新規追加→App.configを追加して、
> S2Testプロジェクトのapp.configの内容をコピペしました。
>
> おかげ様で次の作業へ進むことができました。
> ありがとうございました。
>
> 以上
>
>
> ----- Original Message ----- 
> From: "Kazuya Sugimoto" <[E-MAIL ADDRESS DELETED]>
> To: <[E-MAIL ADDRESS DELETED]>
> Sent: Wednesday, January 30, 2008 4:09 PM
> Subject: [seasar-dotnet:752] Re:assemblyの定義について
>
>
>> 杉本です。
>>
>> 寺岡さん、こんにちは。
>>
>> Batchプロジェクトから起動する場合は、Batichプロジェクトにapp.configを
>> 作成して実行してみてください。
>>
>>
>> 08/01/30 に Masafumi Teraokaさんは書きました:
>>> 寺岡と申します。
>>> お世話になっております。
>>>
>>> 初めて、S2.NETを利用しようとしております。
>>> 下記の環境、構成でS2Daoを使用しております。
>>>
>>> S2Testをスタートアッププロジェクトにして、デバッグすると正常に終了するのですが、
>>> Batchをスタートアッププロジェクトにして、デバッグすると
>>>
>>> Seasar.Framework.Container.Factory.ClassNotFoundRuntimeException はハンドルされませんでした。
>>>  Message="[ESSR0044]クラスが見つかりませんでした。詳細は "Seasar.Dao.Impl.DaoMetaDataFactoryImpl""
>>>  Source="Seasar"
>>>
>>> というエラーが発生します。
>>>
>>> app.configで指定した
>>>
>>> <assembly>Seasar.Dao</assembly>
>>>
>>> が通っていないからなのでしょうか?
>>> アセンブリの定義が問題ではないのでしょうか?
>>>
>>> 何かお分かりであれば、ご意見お聞かせ頂ける様宜しくお願い致します。
>>>
>>>
>>> 環境----------------------------------
>>> OS:Windows Vista Business
>>> 言語:Visual Bbasic 2005
>>> DB:Oracle9.2
>>> --------------------------------------
>>>
>>> 構成----------------------------------
>>> 【ソリューション】
>>> S2Test
>>>   ┣━【プロジェクト】S2Test
>>>   ┃    ┣━【参照】Seasar.dll、Seasar.Dao.dll
>>>   ┃    ┣━【設定ファイル】app.config、app.dicon(埋め込まれたリソース)、OracleEx.dicon(埋め込まれたリソース)
>>>   ┃    ┗━【クラス】App.vb
>>>>>>   ┗━【プロジェクト】Batch
>>>     ┣━【参照】S2Testプロジェクト
>>>     ┗━【フォーム】App.vb
>>> --------------------------------------
>>>
>>> app.config------------------------------
>>> <?xml version="1.0"?>
>>> <configuration>
>>>  <configSections>
>>>    <section name="seasar" type="Seasar.Framework.Xml.S2SectionHandler, Seasar"/>
>>>  </configSections>
>>>
>>>  <appSettings>
>>>    <!-- oracleex.diconで使用 -->
>>>    <add key="ConnectionString" value="Data Source=OCREXP_OCRKSVEX;User Id=SQLWIN;Password=AUTHORA;"/>
>>>  </appSettings>
>>>
>>>  <seasar>
>>>    <configPath>S2Test/app.dicon</configPath>
>>>    <assemblys>
>>>      <assembly>Seasar.Dao</assembly>
>>>      <assembly>System.Data.OracleClient, version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</assembly>
>>>    </assemblys>
>>>  </seasar>
>>> </configuration>
>>> --------------------------------------
>>>
>>> app.dicon------------------------------
>>> <?xml version="1.0" encoding="utf-8" ?>
>>> <!DOCTYPE components PUBLIC "-//SEASAR2.1//DTD S2Container//EN"
>>> "http://www.seasar.org/dtd/components21.dtd">
>>> <components>
>>>    <!-- S2Dao.NETでOracleに接続 -->
>>>    <include path="OracleEx.dicon" />
>>>
>>>    <component class="S2Test.Dao.IHizukeDao" name="dao">
>>>        <aspect>OracleEx.DaoInterceptor</aspect>
>>>    </component>
>>>
>>> </components>
>>> --------------------------------------
>>>
>>> OracleEx.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="OracleEx">
>>>    <!-- データプロバイダ -->
>>>    <component name="Oracle" class="Seasar.Extension.ADO.DataProvider">
>>>        <property name="ConnectionType">"System.Data.OracleClient.OracleConnection"</property>
>>>        <property name="CommandType">"System.Data.OracleClient.OracleCommand"</property>
>>>        <property name="ParameterType">"System.Data.OracleClient.OracleParameter"</property>
>>>        <property name="DataAdapterType">"System.Data.OracleClient.OracleDataAdapter"</property>
>>>    </component>
>>>
>>>    <!-- データソース -->
>>>    <component name="SqlDataSource" class="Seasar.Extension.Tx.Impl.TxDataSource">
>>>    <property name="DataProvider">Oracle</property>
>>>        <!-- 接続文字列は構成ファイルから取得 -->
>>>        <property name="ConnectionString"> appSettings['ConnectionString']</property>
>>>    </component>
>>>
>>>     <!-- DaoInterceptor -->
>>>    <component class="Seasar.Extension.ADO.Impl.BasicDataReaderFactory" />
>>>    <component class="Seasar.Extension.ADO.Impl.BasicCommandFactory" />
>>>    <component class="Seasar.Dao.Impl.DaoMetaDataFactoryImpl" />
>>>    <component name="DaoInterceptor" class="Seasar.Dao.Interceptors.S2DaoInterceptor"/>
>>>
>>>    <!-- ローカルトランザクション用のインターセプター -->
>>>    <component name="LocalRequiredTx" class="Seasar.Extension.Tx.TransactionInterceptor">
>>>        <arg><component class="Seasar.Extension.Tx.Impl.LocalRequiredTxHandler" /></arg>
>>>        <property name="TransactionStateHandler">TransactionContext</property>
>>>    </component>
>>>
>>>    <!-- 分離レベルの指定 -->
>>>    <component name="TransactionContext" class="Seasar.Extension.Tx.Impl.TransactionContext">
>>>        <property name="IsolationLevel">System.Data.IsolationLevel.ReadCommitted</property>
>>>    </component>
>>>
>>> </components>
>>> --------------------------------------
>>> app.vb---------------------------------
>>>    Shared Sub Main()
>>>        SingletonS2ContainerFactory.Init()
>>>        Dim container As IS2Container = SingletonS2ContainerFactory.Container
>>>        Dim dao As IHizukeDao = container.GetComponent(GetType(IHizukeDao))
>>>        Debug.Print("成功!")
>>> --------------------------------------
>>>
>>> 以上
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> seasar-dotnet mailing list
>>> [E-MAIL ADDRESS DELETED]
>>> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>>>
>>
>>
>> -- 
>> Kazuya Sugimoto
>> Microsoft MVP Visual Developer - Solutions Architect
>> http://d.hatena.ne.jp/sugimotokazuya/
>> _______________________________________________
>> seasar-dotnet mailing list
>> [E-MAIL ADDRESS DELETED]
>> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>>
>
> _______________________________________________
> seasar-dotnet mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
> 



seasar-dotnet メーリングリストの案内