2

オブジェクト モデルまたは STSADM コマンドを使用して SharePoint に展開すると、Web コントロールで 1 つ以上のパッケージが "エラー" 状態になることがあります。展開すると問題はありませんが、単一のプログラム間に遅延を入れても同様の効果はありません。

正常に展開されなかったプログラムに対して展開を 2 回実行すると、プログラムで実行しようとしない限り、問題なく動作します。その場合、違いはありません。

それは異なるファイルであり、時には何もありません。

私は stsadm -execadmsvcjobs を add と deploy の間、さらには 2 つの deploy バンドルの間でも使用しています。(プログラムで約10個のwspファイルを展開しています)

なぜこれが起こるのかについて誰か考えがありますか?または、実装に到達すると問題が発生するため、それを解決する方法。

4

1 に答える 1

1

問題は、SharePointがアプリプールのリサイクルや完全なiisresetsを実行し、SharePointタイマーサービスを再起動するという事実にあります(ただし、それについては完全にはわかりません)。インストールしたばかりのパッケージSharePointを実際に展開しようとすると、インストールと展開のために作成されたタイマージョブは、基本的に中央管理アプリプールが再び完全に実行されるのを待っています。

ソリューションを撤回している間も同じことが(ある程度再現可能に)起こります。リトラクトプロセスの進行中にソリューション管理ページでF5キーを何度も押すと、十分に速く更新するとハングし、「エラー」が赤で表示されます。

私の解決策は、展開アプリまたはPowerShellで少なくとも中央管理者にWebRequestを作成する(またはSPSite = new SPSite( "centraladminurl")を実行する)ことでした。すべてのデプロイアクションの後にもこれを実行します。

これにより、タイミングの問題(基本的には一種の「競合状態」)を修正する必要があります。

于 2009-11-11T21:30:27.460 に答える