---
title: "コンテンツAPIのトラブルシューティング"
slug: "troubleshooting-content-apis"
abstract: "コンテンツAPIに関するよくある問題のトラブルシューティングを行いましょう。"
---
# コンテンツAPIのトラブルシューティング

このトピックには、Sitecore開発者がコンテンツAPIを使用する際に経験する一般的な問題のトラブルシューティング情報が含まれています。

## 設定ノードが見つかりませんでした

存在しないデータベースにアクセスしようとSitecore.Configuration.Factory.GetDatabase() メソッドを使おうとした場合、またはweb.configの設定と同じ文字大文字でデータベース名を入力していない場合、ブラウザ上で次のようなメッセージが表示されることがあります:

System.InvalidOperationException: Could not find configuration node

Sitecore.Configuration.Factory.GetDatabase()メソッドに最初のパラメータとして渡された値が、適切な/configuration/sitecore/databases/database要素のID属性と一致していることを確認してくださいweb.config。

## オブジェクト参照はオブジェクトのインスタンスに設定されていません

存在しない、または公開されていない項目にアクセスしようとすると、ブラウザ上で次のようなメッセージが表示されることがあります。

System.NullReferenceException: Object reference not set to an instance of an object

アイテムに指定されたIDやパスが正しく、コードが正しいデータベースにアクセスしていること、アイテムがそのデータベースに存在していること、そしてコンテキストユーザーがアイテムに対してitem:read アクセス権を持っていることを確認しましょう。アイテムやそのデータテンプレートを公開したり、セキュリティユーザースイッチャーやセキュリティ無効化装置を使う必要があるかもしれません。

## アイテムは編集モードではありません

編集モードにせずにアイテムを更新しようとすると、ブラウザ上で次のようなメッセージが表示されることがあります。

Sitecore.Exceptions.EditingNotAllowedException: Item is not in editing mode

セキュリティユーザースイッチャーやセキュリティ無効化装置を使うのではなく、コンテキストユーザーに適切なアクセス権を与えることを推奨します。本ドキュメントのコード例ではセキュリティユーザースイッチャーやセキュリティ無効化装置は使用されていません。これは、論理が成功するためにコンテキストユーザーが必要なアクセス権を持っている必要があります。

## 現在のユーザーはこのアイテムへの書き込み権限を持っていません

コンテキストユーザーが item:writeセキュリティアクセス権を持っていないアイテムを更新しようとすると、ブラウザ上で次のようなメッセージが表示されることがあります。

System.UnauthorizedAccessException: The current user does not have write access to this item

コンテキストユーザーがアイテムに対してitem:writeアクセス権を持っていることを確認してください。セキュリティユーザースイッチャーやセキュリティ無効化装置を使う必要があるかもしれません。

## アクセスを追加する必要があります

コンテキストユーザーがアクセス権限のない項目の下にアイテムを追加しようとすると、ブラウザ上で次のようなメッセージが表示されることがあります。

Sitecore.Exceptions.AccessDeniedException: AddFromTemplate - Add access required

コンテキストユーザーが親アイテムに対してitem:createアクセス権を持っていることを確認してください。セキュリティユーザースイッチャーやセキュリティ無効化装置の使用が必要になるかもしれません。セキュリティユーザースイッチャーやセキュリティ無効化装置の使用について詳しくは、「 *アイテムアクセス権の解決方法*」セクションをご覧ください。

アイテムを作成すると、Sitecoreは自動的に最初のバージョンをコンテキスト言語の初期状態に配置し、そのアイテムのデータテンプレートの標準値で指定しています。

アイテムのワークフロー状態を更新するには、以下の方法を参照できます:

-   Sitecore.Workflows.Simple.Workflow.Start
-   Sitecore.Workflows.Simple.Workflow.Execute