よくある質問(FAQ)

セクション:

インストール

質問: ArcGIS Viewer for Silverlight は ArcGIS Server と同じコンピュータ上にインストールする必要がありますか。

いいえ。ArcGIS Viewer for Silverlight は ArcGIS Server と同じコンピュータ上にインストールする必要はありません。最小要件は次のとおりです。

  • .NET Framework 3.5 SP1 または 4.0 Runtime
  • 静的コンテンツ
  • ASP.NET
  • IIS 管理コンソール

特定のオペレーティング システムへの ArcGIS Viewer for Silverlight のインストールの詳細については、「システム要件」をご参照ください。

基本操作

質問: Application Builder を起動するにはどうすればよいですか。

Application Builder は [スタート] メニューから起動します(開きます)。[スタート] → [すべてのプログラム] → [ArcGIS] → [ArcGIS Viewer for Silverlight 1.0.1] → [ArcGIS Viewer for Silverlight 1.0.1] の順に選択します。または、Web ブラウザを開いて、「http://<コンピュータ名>/builder」と入力して開くこともできます。

質問: ArcGIS Viewer for Silverlight を使用するために ArcGIS API for Silverlight をインストールする必要がありますか。

いいえ。Application Builder を使用して ArcGIS Viewer for Silverlight を構成するために ArcGIS API for Silverlight は必要ありません。ArcGIS API for Silverlight が必要なのは、カスタム アドインを作成することでビューアを拡張するときのみです。この場合は、ArcGIS Extensibility SDK for Silverlight をインストールする必要があります。SDK(Software Development Kit)のインストーラには、ArcGIS Viewer for Silverlight をインストールするためのオプションが含まれています。

質問: 非接続環境やファイアウォールで保護された環境で作業できますか。

ArcGIS Viewer for Silverlight はオンライン サービスで操作するように設計されていますが、一時的に非接続環境で作業する必要が生じることもあります。この場合、Map.xml ファイルから ArcGIS Online Topographic レイヤを削除して、ローカル イントラネットのベースマップに置き換える必要があります。Map.xml ファイルはインストール フォルダにあります(例: C:\inetpub\wwwroot\Builder\Templates\Default\Config)。ArcGIS Online Topographic レイヤを削除せずにベースマップに置き換えた場合、[レイヤの初期化中にエラーが発生しました: Topographic] というメッセージが表示され、Application Builder による構成を続行できなくなります。ファイアウォールで保護された環境で作業する場合は、次の操作も実行する必要があります。(1)Builder\App_Data\Basemaps.xml および Builder\Templates\Default\Config\Tools.xml にあるデフォルトのベースマップ セットを更新します。(2)Builder の設定ユーザ インタフェース(UI)または Builder\App_Data\Settings.xml を使用して ArcGIS Online Sharing とセキュリティ保護された URL を更新します。(3)Builder の設定 UI または Builder\App_Data\Settings.xml のいずれかを使用して、ジオメトリ タスク URL を更新します。

質問: Portal for ArcGIS に接続するにはどうすればよいですか。

Portal for ArcGIS で提供されるコラボレーションおよび共有ツールは ArcGIS Online と同じですが、ホストする場所とユーザが利用できるコンテンツが異なります。Portal for ArcGIS は組織のファイアウォールの背後に配置することができます。または、組織のプライベート インスタンスを Esri がホストおよび管理することもできます。Portal for ArcGIS の設定は、[Application Builder の設定] ページの [アプリケーションの設定] タブに含まれています。

問題: ホーム ページでサイトを編集、コピー、または削除できません。

サイトを編集、コピー、または削除できない状態

ホーム ページでサイトを編集、コピー、または削除しようとすると、上の図のようなエラー([エラーが発生しました: System.Exception: Unable to find site with siteID …])が表示されることがあります。ディスク上の sites.xml 構成ファイルへの書き込みに失敗した可能性があります。この場合、作成と同じセッション内であれば、ホーム ページに URL が表示されます。ただし、この URL はメモリ内のサイト「カタログ」にあるものなので、Builder を更新すると表示されなくなります。

対処法: Windows XP 32 ビット版(x86)システムの場合、ASPNET アカウントの設定が正しくないために、権限(つまり、ディレクトリへの書き込み)の問題が発生した可能性があります。対策としては、App_Data フォルダ内の構成ファイルの ASPNET に対して明示的に権限を付与します(親の App_Data フォルダの権限が正しく継承されていない可能性があります)。App_Data フォルダは、ディスク上の Application Builder のディレクトリ(例: C:\inetpub\wwwroot\Builder)にあります。

問題: アプリケーション ファイルへのアクセス時にエラーが発生します。

以前作成したサイトをホーム ページで編集しようとすると、以下のようなエラーが表示されることがあります。これは、Web ルート(例: C:\Inetpub\wwwroot)に clientaccesspolicy.xml または crossdomain.xml ファイルが存在しないことを示しています。clientaccesspolicy.xml ファイルの構造および機能の詳細については、「ネットワーク セキュリティのアクセス制限(Silverlight)」をご参照ください。また、http://services.arcgisonline.com/clientaccesspolicy.xml で、ArcGIS Online で使用されるポリシー ファイルの一例を確認することもできます。

[アプリケーション ファイルへのアクセス時にエラーが発生] メッセージ

レイヤの追加

問題: カスタム ベースマップを作成しましたが、ギャラリーをクリックしても何も反応しません。

ArcGIS Server ベースマップの URL が正しく入力されているかどうか確認してください。ダイナミック マップ サービスはベースマップとして使用できないので注意してください。詳細については、「ベースマップの構成」をご参照ください。

問題: サーバからデータを読み込めません。

  1. ArcGIS Server のサービスにアクセスする場合は、ArcGIS Services Directory が設定されていて、正しく機能しているか確認してください。ブラウザで、http://<ホスト>/arcgis/rest/services に移動します。詳細については、Services Directory のメイン ページをご参照ください。
  2. サービスの REST(Representational State Transfer)エンドポイントが使用可能であることを確認してください。Silverlight/WPF アプリケーションで定義した URL をコピーしてブラウザに貼り付けます。次に例を示します。http://<ホスト>/arcgis/rest/services/USA/MapServer
  3. Silverlight アプリケーションがアクセスするデータ(サービス)と同じサーバまたはドメインでホストされていない場合、リモート サーバ上に clientaccesspolicy.xml が必要です。詳細については、次の FAQ をご参照ください。
  4. レイヤ上で InitializationFailure イベントを使用して、エラーが発生するかどうか確認し、エラー メッセージを照会します。
  5. Fiddler、Silverlight Spy、FireBug(FireFox アドオン)などの HTTP 通信照会用の標準ツールを使用して、HTTP リクエストとレスポンスを表示します。

問題: Silverlight アプリケーションのドメイン以外の外部データ ソースからデータを読み込めません。

リモート サーバからデータにアクセスするには、リモート サーバの Web サーバのルート ディレクトリ(例: c:\inetpub\wwwroot)に clientaccesspolicy.xml ファイルが必要です。ArcGIS Viewer for Silverlight は Microsoft Silverlight プラットフォーム上に構築されます。セキュリティ上の理由から、Web ブラウザは、Silverlight アプリケーションを起点とした同一の Web ドメイン以外のデータにアクセスすることを許可しません。ただし、サーバからアクセスする許可が付与されている場合、Silverlight アプリケーションはドメイン全体のデータを読み込むことができます。リモート サーバ上に clientaccesspolicy.xml という小さいファイルを置くことで、Silverlight は、そのサーバのサービスに接続できるようになります。詳細については、「Making a Service Available Across Domain Boundaries」をご参照ください。clientaccesspolicy.xml ファイルの構造および機能の詳細については、「ネットワーク セキュリティのアクセス制限(Silverlight)」をご参照ください。また、http://services.arcgisonline.com/clientaccesspolicy.xml で、ArcGIS Online で使用されるポリシー ファイルの一例を確認することもできます。

ArcGIS Online clientaccesspolicy.xml のコンテンツ

<?xml version="1.0" encoding="utf-8" ?>
<access-policy>
  <cross-domain-access>
    <policy>
      <allow-from http-request-headers="*">
        <domain uri="*"/>
        <domain uri="http://*"/>
      </allow-from>
      <grant-to>
        <resource path="/" include-subpaths="true"/>
      </grant-to>
    </policy>
  </cross-domain-access>
</access-policy>

質問: セキュリティ保護されたサービスにアクセスするためにプロキシ ページをどのように使用したらよいですか。

ArcGIS Viewer for Silverlight では、セキュリティ保護されたサービスをプロキシ経由で追加できます。詳細については、「セキュリティ保護されたマップ サービスの追加」および「プロキシの構成」をご参照ください。

レイヤの操作

質問: ポップアップ ウィンドウと属性テーブルに表示されるフィールドを変更するにはどうすればよいですか。

デフォルトでは、ポップアップ ウィンドウと属性テーブルには、特定のレイヤのすべてのフィールドが表示されます。表示されるフィールドを変更するには、[レイヤの構成] パネルでレイヤを選択して、[構成] をクリックします。[ポップアップ] または [テーブル] オプションを選択し、必要に応じて表示設定を行います。詳細については、「レイヤのフィールドの構成」をご参照ください。

問題: フィーチャを選択できません。選択ツールが無効(グレー表示)になっています。

ArcGIS Server マップ サービスのレイヤ内のフィーチャは選択できません。ArcGIS Server マップ サービス内のレイヤに属しているフィーチャを選択できるようにするには、そのレイヤを [参照] パネルから直接マップに追加する必要があります。追加可能なマップ サービスおよびレイヤのタイプと、それぞれに関連付けられた振舞いについては、「レイヤのタイプ」をご参照ください。

質問: ポイント フィーチャがグループ化(クラスタリング)するのはなぜですか。

フィーチャの数が 1000 を超える場合は、デフォルトでクラスタリングが有効になります。クラスタリング オプションはレイヤごとに設定できます。詳細については、「クラスタリング」および「フィーチャの取得」をご参照ください。

問題: サービスの最初の 500 個または 1000 個のフィーチャしか表示されません。

ArcGIS Server 10.0 以上のマップ サービスから返されるクエリの結果は、デフォルトでは 1000 個のレコードに制限されています。もっと前のバージョンの ArcGIS Server では、この制限が 500 個のレコードに設定されています。ArcGIS Server 10.0 からは、ArcCatalog または ArcGIS Server Manager の [サービス プロパティ] ダイアログ ボックスでこの制限を引き上げることができます。ArcGIS Server 9.3.1 以前のバージョンでは、<ArcGIS のインストール場所>\Server\user\cfg\<構成ファイル名>.cfg の構成ファイルにある MaxRecordCount プロパティを手動で設定する必要があります。

Application Builder では、フィーチャの取得設定をレイヤごとに構成できます。これによって、すべてのフィーチャを一度に取得する(最大レコード数まで)か、マップ上で画面移動を行ったときにフィーチャを取得することができます。デフォルトでは、Application Builder はマップ上で画面移動を行ったときにフィーチャを取得します(オンデマンド)。詳細については、「フィーチャの取得」をご参照ください。

注意注意:

多数のフィーチャを含むレスポンスでは、フィーチャ数が少ないレスポンスよりも多くのリソースを使用します。MaxRecordCount 制限が存在するのはこのためです。MaxRecordCount を増やすことを検討する場合は、新しい制限で予想される使用シナリオをテストして、サービスのパフォーマンスが許容範囲であることを確認してください。

質問: ローカル データは検索できますか。

いいえ。Application Builder に含まれる [検索] ツールは、場所の検索、ArcGIS.com の検索、Web の検索ができるように設計されたものです。ユーザのデータを検索するようには設計されていません。[検索] ツールで対応していない機能については、カスタム アドインを作成することができます。

配置

質問: 別のコンピュータに配置するにはどうすればよいですか。

ビューア アプリケーションを Web アプリケーションに配置する準備ができたら、公開された Web アプリケーション フォルダ(複数可)を開発用コンピュータから、運用コンピュータの Web リソース ディレクトリにコピーします。たとえば、「Site1」という名前の新しいアプリケーションを作成した場合、Site1 フォルダを開発用コンピュータの アプリケーション ディレクトリから運用コンピュータの Web リソース ディレクトリにコピーします。配置する場所と運用 Web サーバの構成方法によっては、コピーしたディレクトリをポイントするための仮想ディレクトリを構成する必要が生じる場合もあります。

注意注意:

運用環境に ArcGIS Viewer for Silverlight をインストールする必要はありません。

質問: ビューアに対してセキュリティを実装するにはどうすればよいですか。

公開されたビューア アプリケーションにログイン ページを追加する場合は、1 つの方法として、ASP.NET フォームベース認証の構成が考えられます。アプリケーションに対するフォームベース認証の構成手順については、ブログの投稿「ArcGIS Viewer for Silverlight security」をご参照ください。

拡張

質問: ArcGIS Viewer for Silverlight を拡張するにはどうすればよいですか。

ArcGIS Viewer for Silverlight では、アドインを作成することでカスタム機能を開発できます。アドインの作成を手助けするために、ビューアでは軽量で柔軟な拡張アプリケーション プログラミング インタフェース(API)が提供されています。この API は、マップおよび選択したレイヤへのアクセス、ダイアログ ボックスに UI を表示するためのメソッド、構成データを格納したり読み込んだりする機能を提供しています。

拡張 API ではビューアと対話する方法は単純なものしか提供されますが、アドインに組み込むことができる機能は制約はありません。アドイン内では、ArcGIS API for Silverlight やネイティブの Silverlight API などを含む Silverlight ライブラリを活用できます。マップやレイヤを自由に操作したり、任意の Silverlight UI を表示したり、コンポーネントを構成可能にしたり、ページ上の他の Silverlight または JavaScript コンポーネントと対話したり、SharePoint または ArcGIS Server によって提供されるような Web サービスを呼び出したりするなど、さまざまなことを実行できます。詳細については、「ArcGIS Viewer for Silverlight の拡張」をご参照ください。

質問: カスタム レイアウトを作成するにはどうすればよいですか。

カスタム レイアウトを作成する最も簡単な方法は、SDK に含まれている ArcGIS Viewer for Silverlight Visual Studio テンプレートを使用して作業を開始することです。レイアウト プロジェクトには、既存のビューア レイアウト(Accordion、Basic、Black Box、Black Box - Reverse、Floating Panels、Glass(デフォルト)、Under Glow、Wings)のそれぞれのコピーがあります。これらを出発点として使用して、Visual Studio または Microsoft Expression Blend のいずれかでレイアウトを変更していきます。手順については、「カスタム レイアウトの作成」をご参照ください。また、ArcGIS Viewer for Silverlight の Resource Center の「」もご参照ください。

問題: アセンブリ 'xyz' はアプリケーション ランタイムにすでに含まれています。

アドインを読み込むときに表示される [アセンブリ 'xyz' はアプリケーション ランタイムにすでに含まれています。] というエラー メッセージは単なる警告で、このメッセージが表示されてもアドインは正しく読み込まれます。この警告メッセージが表示されないようにするには、Visual Studio ソリューションに戻り、ダイアログ ボックスに指定された参照情報で、Copy Local が False になっていることを確認してください。

アドイン警告の配置

6/8/2012