[Seasar-s2dotnet 22] ASP.NETでのトランザクション機能の利用について

m.okuyama e_starbucks
2005年 7月 29日 (金) 10:51:15 JST


こんにちは、奥山と申します。

S2.NET-1.0.0-beta5をダウンロードし、色々な機能を試させて頂いています。

そこで以下の問題が発生しましたので、
アドバイスを頂きたくメールいたしました。

以下、長文ですが、お許し下さい。

【問題】
ASP.NETの環境でTXインターセプタを利用すると権限エラーが発生する。

【環境】
.NET Framework1.1
Windows Xp Professional
S2.NET-1.0.0-beta5

【試したこと】
当初は以下のレジストリ書き込みエラーが発生していました。

-----------------------------------------------------------
[ESSR0043]The target which S2.NET.Extension.Tx.RequiredIntercep
tor invoked is illegal, because System.UnauthorizedAccessException: レジストリ キー "HKEY_CLASSES_ROOT\S2.NET.Extension.Dbcp.Impl.DataSourceImpl" へのアク
セスが拒否されました。
-----------------------------------------------------------

そこでASPNETユーザへREGEDITでHKEY_CLASSES_ROOTへの読取り、書込み権限を与
えましたところ、以下のエラーへ変わりました。
しかしレジストリに情報は書き込まれていません。
-----------------------------------------------------------
DEBUG 2005-07-29 10:03:26,937 [3764] SoapException.Message:サーバーは要求を処理できませんでした。 --> [ESSR0043]The target which S2.NET.Extension.Tx.RequiredIntercep
tor invoked is illegal, because System.UnauthorizedAccessException: アクセスが拒否されました。

Server stack trace:
   at System.EnterpriseServices.Admin.ICatalogCollection.SaveChanges()
   at System.EnterpriseServices.RegistrationDriver.FindOrCreateApplication(ApplicationSpec spec, Boolean configure)
   at System.EnterpriseServices.RegistrationDriver.InstallAssembly(RegistrationConfig regConfig, Object obSync)
   at System.EnterpriseServices.RegistrationHelperTx.InstallAssemblyFromConfig(RegistrationConfig& regConfig, Object sync)
   at System.Runtime.Remoting.Messaging.Message.Dispatch(Object target, Boolean fExecuteInContext)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)

Exception rethrown at [0]:
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   at System.EnterpriseServices.RegistrationHelperTx.InstallAssemblyFromConfig(RegistrationConfig& regConfig, Object sync)
   at System.EnterpriseServices.RegistrationHelper.TryTransactedInstall(RegistrationConfig regConfig)
   at System.EnterpriseServices.RegistrationHelper.InstallAssemblyFromConfig(RegistrationConfig& regConfig)
   at System.EnterpriseServices.RegistrationHelper.InstallAssembly(String assembly, String& application, String partition, String& tlb, InstallationFlags ins
tallFlags)
   at System.EnterpriseServices.RegistrationHelper.InstallAssembly(String assembly, String& application, String& tlb, InstallationFlags installFlags)
   at System.EnterpriseServices.RegistrationHelper.System.EnterpriseServices.Thunk.IThunkInstallation.DefaultInstall(String asm)
   at System.EnterpriseServices.Thunk.Proxy.RegisterAssembly(Assembly assembly)
   at System.EnterpriseServices.Thunk.Proxy.LazyRegister(Guid id, Type serverType, Boolean checkCache)
   at System.EnterpriseServices.Thunk.Proxy.CoCreateObject(Type serverType, Boolean bQuerySCInfo, Boolean& bIsAnotherProcess, String& uri)
   at System.EnterpriseServices.ServicedComponentProxyAttribute.CreateInstance(Type serverType)
   at System.Runtime.Remoting.Activation.ActivationServices.IsCurrentContextOK(Type serverType, Object[] props, Boolean bNewObj)
   at S2.NET.Extension.Tx.RequiredInterceptor..ctor()

-----------------------------------------------------------

S2.NET-1.0.0-beta5に付属されているExamplesは問題なく動作いたします。
実行後、レジストリにS2関連の情報も登録もされているようです。
ただ、問題が発生しているのはASP.NETの環境ですので、
何か特別な設定が必要なのでしょうか?

S2に関することではなくASP.NETの基本的な事かもしれませんが、
.NET初心者ですので、お許し下さい。

ご教授お願いいたします。

-- 
m.okuyama

__________________________________
Save the earth
http://pr.mail.yahoo.co.jp/ondanka/



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