[seasar-dotnet:710] Re: S2がWindows Server上で初期化できない (System.EnterpriseServices.RegistrationException)

Kazuya Sugimoto [E-MAIL ADDRESS DELETED]
2007年 12月 18日 (火) 13:28:09 JST


SKYさん、

杉本です。
手順ありがとうございます。

ドキュメントの方にも反映させたいと思います。

07/12/18 に gates msさんは書きました:
> 杉本さん、MLメンバの皆さま。
>
> SKYです。情報提供ありがとうございます。
>
> その後、COM+の登録方法を調査して、
> 以下の方法で解決したので、参考までにご連絡します。
>
> <解決策>
> 今回は.NET
> Frameworkに付属のregsvcs.exeツールを使ってSeasar.dllをCOM+へ登録しました。
>
> .NET Framework 2.0の場合、ツールの格納場所は以下です。
> C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
>
> regsvcs 登録するファイル名
> でCOM+へ登録できます。
> 今回の場合、
>
> regsvcs (Seasar.dllへのフルパス)
>
> を実行しました。警告がたくさん出ますが、とりあえず登録成功しました。
>
> その後、Windows Serverを再起動する必要があります。
> なお、再起動しないでアプリケーションを実行すると
> [ESSR0047]Seasar.Extension.Tx.TransactionInterceptorで循環参照が発生しました
> エラーが出ます。
>
>
> 今回、私が参画しているプロジェクトでは、S2Container.NETをトレースログとトランザクション管理の部分に採用しました。データアクセスにはTableAdapterを採用したため、MS-DTCの使用が必須でした。
>
> S2の自動トランザクション管理機能を使う場合、Windows
> Serverへデプロイすると私と同じ現象に遭遇すると思いますので、デプロイ手順をドキュメントに反映していただければ幸いです。
>
>
> 以上
>
>
> 07/12/17 に Kazuya Sugimoto <[E-MAIL ADDRESS DELETED]> さんは書きました:
> >
> > SKYさん、こんにちは。
> >
> > 杉本です。
> >
> > MS DTCを使ったトランザクションをお使いでしょうか?
> > 特に分散トランザクションの必要が無ければ、ローカルトランザクションの方を
> > お勧めいたします。
> >
> > もし分散トランザクションが必要であれば、下記のページを参考にしてみて下さい。
> >
> http://ml.seasar.org/archives/seasar-dotnet/2005-July/000057.html
> >
> >
> > 07/12/17 に gates ms さんは書きました:
> > > はじめまして。SKYと申します。
> > >
> > > S2Container.NETでトランザクションを初めて使用しているのですが、
> > > WindowsXPで開発したWebサービスを
> > > WindowsServerへ配置したところ、S2が初期化できずに困った事態になりました。
> > > 同様の現象に遭遇されたことがある方がいらっしゃいましたら、
> > > アドバイスいただきたく、メールさせていただきます。
> > >
> > > 困っているのは以下の現象です。
> > >
> > > <現象>
> > > Windows Server
> > >
> 2003にWebサービスアプリケーションを配置し、Webサービスクライアントからリクエストすると、以下のエラーが発生する。
> > >
> > > System.EnterpriseServices.RegistrationException:
> > > このタスクを実行するには、管理者資格情報が必要です。システム管理者にお問い合わせください。 --->
> > > System.EnterpriseServices.RegistrationException: アセンブリ
> > > 'Seasar, Version=1.2.8.0 , Culture=neutral,
> > > PublicKeyToken=1d0d0c484d50ca62' を登録できませんでした。 --->
> > > System.UnauthorizedAccessException: レジストリ キー
> > >
> 'HKEY_CLASSES_ROOT\Seasar.Framework.Util.CaseInsentiveSet'
> > > へのアクセスが拒否されました。
> > >
> > >
> > >
> これはどうも、SeasarをCOMとして登録しようとする際に、ASP.NETの実行アカウントに管理者権限がないため発生しているようだということは、なんとなくわかりました。
> > >
> このようなケースではいくつか解決策が考えられると思います。WebアプリケーションでS2のトランザクションを実際に使用した経験のある方もいらっしゃると思いますが、
> > > 具体的にどのように解決されていますでしょうか?
> > >
> > > ご教授いただきたく。よろしくお願いいたします。
> > >
> > >
> > > _______________________________________________
> > > 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
>
>


-- 
Kazuya Sugimoto
Microsoft MVP Visual Developer - Solutions Architect
http://d.hatena.ne.jp/sugimotokazuya/


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