1

関連するリストとリスト インスタンスを使用して WebPart をインストールする機能を開発中です。リストの展開時に、次のメッセージがログに記録されます。

Failed to determine definition for Feature with ID
'cdca545a-333a-4b3f-ba15-ac3cdbb12312'.
Skipping this feature for element querying consideration. 

(わかりやすくするために改行を追加)

問題のある機能を特定するために機能を検索することを提案するさまざまなブログの記事を読みました。Sharepoint 12 ディレクトリを検索するために、サブディレクトリの検索をサポートするバージョンのgrepをダウンロードしましたが、次のコマンドは開発 VM またはライブ サーバーで一致するものを見つけることができませんでした。

grep -S cdca545a-333a-4b3f-ba15-ac3cdbb12312 <path to \12\>

次のようなこともありません。

grep -S -i cdca545a <path to \12\>

私の開発マシンは、Windows 2003 R2、Windows Sharepoint Service 3.0 SP1、Visual Studio 2008 with STSDev 2008 で構成されています。

現在、機能はデプロイされていますが、リストをインスタンス化することはできません。ログ ファイルのノイズを調べて、問題の根本を突き止めようとしています。

4

2 に答える 2

3

SharePoint ファームにインストールされている機能定義を列挙してみてください。インストールされている各機能の機能 ID と表示名を出力するサンプル コードを次に示します。

SPFeatureDefinitionCollection featureDefinitions = SPFarm.Local.FeatureDefinitions;
foreach (SPFeatureDefinition featureDefinition in featureDefinitions)
{
    Console.WriteLine("{0}: {1}", featureDefinition.Id, featureDefinition.DisplayName);
}
于 2009-03-31T15:24:45.953 に答える
0

よくわかりませんが、問題はリスト インスタンス機能に関連している可能性があります。

機能の要素マニフェストでは、リスト インスタンスの作成時に使用するリスト定義を含む機能を指す必要がある属性「FeatureId」を定義できます。

したがって、ここで考えられるエラーの原因が 2 つあります。

  1. この FeatureId が定義されていない場合、機能は、リスト定義が同じ機能 (リスト インスタンス機能) 内で定義されていると想定します。定義とインスタンスに 2 つの別個のフィーチャーがある場合、このエラーが発生する可能性があります。

  2. 既に述べたように、FeatureId は、使用するリスト定義を定義する機能の GUID でなければなりません。この GUID は、リスト定義機能の FeatureId ではなく、MOSS 内で作成されたときのリスト インスタンス自体の識別子であると想定して、新しく生成されたものに置き換えた可能性があります。

私は自分でこの問題を経験したことがないので、エラーの理由が何であるかを推測することしかできませんでした.

おそらく、このブログ エントリは、今後の調​​査に役立つ可能性があります。

于 2009-03-31T15:49:22.493 に答える