ユーティリティ スポットライトSharePoint サイトおよびテンプレート用のアップグレード ツールキット

Luis Câmara Manoel and Peter Skjøtt Larsen

この記事で使用しているコードのダウンロード: Upgrade Toolkit for Windows SharePoint Services Sites and Templates (699KB)

最近 Windows SharePoint Services (WSS) 3.0 がリリースされたことにより、多くの管理者は既存の WSS 2.0 サイトおよびデータを新しい WSS 3.0 環境にアップグレードする作業に直面しています。

WSS 3.0 では、サイトのデータの移行およびサイトの構造のアップグレードを適切に行うための豊富なツールが提供されますが、カスタマイズされたサイトやサイト テンプレートの構造をアップグレードするには、追加の作業が必要になる場合があります。

幸運にも、Microsoft® ソリューション アクセラレータ チームにより、この作業に関するガイダンスとツールが含まれた、Windows® SharePoint® Services サイトおよびテンプレート用のアップグレード ツールキットがリリースされました (補足記事「WSS の関連情報」を参照してください)。このコラムでは、カスタマイズされたサイトを WSS 3.0 環境にアップグレードする作業に関するいくつかの問題と、それらに関連するソリューションについて重点的に説明します。まずは、補足記事「WSS に関する用語」でよく使われる用語の定義を確認してください。

アップグレード プロセス

アップグレードをお勧めする理由について説明しましょう。WSS 3.0 には、アップグレードに対するサイト所有者の興味を引く、次のような多くの新機能が用意されています。

  • ごみ箱 - ユーザーは、誤って削除したドキュメントを復元できるようになります。
  • フォルダ項目レベルのセキュリティ - サイトの管理者は、フォルダにアクセスできるユーザーやグループを制御できるようになります。
  • リストへの電子メールの送信 - SharePoint サイトにあるリスト (ブログの投稿リストなど) に、電子メールでコンテンツを送信できるようになります。
  • [サイトの操作] ボタン - ユーザーは、サイトとページの作成、ページの編集、およびサイトの設定の管理を容易に行うことができるようになります。
  • 階層リンク - ユーザーは、サイト内の現在位置をひとめで把握できるようになります。
  • モバイル ビュー - モバイル ユーザーは、便利なオフライン同期機能を活用できるようになります。
  • RSS フィード - Internet Explorer 7.0 や Outlook® 2007 などの RSS 対応プログラムで、リストから情報を取得できるようになります。
  • ドキュメント ライブラリでのバージョン管理 - マイナー バージョンを管理したり、編集前のドキュメントのチェックアウトを制御したりできるようになります。

サイトとテンプレートのアップグレード プロセスが成功するかどうかは、実際にサーバーを WSS 3.0 にアップグレードする前とアップグレードした後に実行する特定の手順 (図 1 を参照) によって決まるため、サイトとテンプレートのアップグレード要件を定義することは、WSS 3.0 のアップグレード戦略全体の中でも重要な手順です。サイトの所有者とサーバーの管理者は協力して、どのサイトとテンプレートをインスタンス化して WSS 3.0 環境にアップグレードする必要があるかを決定する必要があります。アップグレードするカスタム サイトを選択したら、アップグレード作業を開始できます。

図 1 WSS サイトとサイト テンプレートのアップグレード ワークフロー

図 1** WSS サイトとサイト テンプレートのアップグレード ワークフロー **(画像を拡大するには、ここをクリックします)

カスタマイズされたサイト テンプレートを特定する

サイトがカスタマイズされているかどうかを確認するにはどうすればよいでしょうか。WSS 3.0 で提供される、アップグレード前のスキャン ツールを実行すると、ファーム全体のサイト テンプレートに加えられた変更に関するレポートが生成されます。移行を開始する前にこのツールを実行して、特に注意が必要なサイト テンプレートを特定する必要があります。

このツールを実行すると、図 2 のような XML 形式のレポートが提供されます。unghostedPage 要素は、サイトがカスタマイズされていることを示しています。

Figure 2 サイト テンプレートに加えられた変更に関して、アップグレード前のスキャン ツールから提供されるレポート

<?xml version=”1.0” encoding=”utf-8”?>
<summary>
  <sites>
    <site url=”http://mscc-shr-v3-01” storage=”172767226”>
      <webs>
        <web url=”http://mscc-shr-v3-01/Board of Directors-Basic”>
          <unghostedPage url=”http://mscc-shr-v3-01/Board of Directors-Basic/Board Information/
                Forms/default.aspx” />
          <unghostedPage url=”http://mscc-shr-v3-01/Board of Directors-Basic/Board Information/
                Forms/AllItems.aspx” />
          <unghostedPage url=”http://mscc-shr-v3-01/Board of Directors-Basic/Board Information/
                Forms/DispForm.aspx” />
          <unghostedPage url=”http://mscc-shr-v3-01/Board of Directors-Basic/Board Information/
                Forms/EditForm.aspx” />
          <unghostedPage url=”http://mscc-shr-v3-01/Board of Directors-Basic/Board Information/
                Forms/Upload.aspx” />
          <unghostedPage url=”http://mscc-shr-v3-01/Board of Directors-Basic/Board Information/
                Forms/WebFldr.aspx” />
          <unghostedPage url=”http://mscc-shr-v3-01/Board of Directors-Basic/Company Finance and 
                Business Planning/Forms/AllItems.aspx” />
          <unghostedPage url=”http://mscc-shr-v3-01/Board of Directors-Basic/Company Finance and 
                Business Planning/Forms/DispForm.aspx” />
          <unghostedPage url=”http://mscc-shr-v3-01/Board of Directors-Basic/Company Finance and 
                Business Planning/Forms/EditForm.aspx” />

カスタム サイト定義

アップグレードするほとんどのカスタマイズされた WSS 2.0 サイトは、おそらく標準の WSS サイト定義から作成されたテンプレートを基に構築されています。しかし、カスタマイズされたサイト テンプレートの中には、カスタマイズされたサイトの定義を基に構築されたものもあります。カスタマイズされたサイト定義を組織内の開発者が作成した場合や、カスタマイズされたサイト定義を基に構築されたサードパーティ製のアプリケーションまたはテンプレートを購入した場合は、このようなサイト テンプレートが存在する可能性があります。このコラムでは、標準のサイト定義のシナリオのみについて説明します。カスタム サイト テンプレートのシナリオの詳細については、補足記事「WSS の関連情報」を参照してください。

.stp ファイルとサイトが標準のサイト定義を基に構築された (これは、アップグレード サイト定義が WSS 3.0 に存在することを意味します) かどうかを確認したら、サイトのインストールとインスタンス化を開始できます。

特定の WSS 2.0 サイト テンプレートをアップグレードするには、最初にこれらのテンプレートを WSS 2.0 サーバーにインストールする必要があります (図 1 の段階 1 を参照)。次に、インストールされた各テンプレートを基にサイトを作成する必要があります。

このソリューション アクセラレータには、Stsadm.exe コマンドを使用したスクリプトのセットが用意されています (補足記事「ソリューション スクリプト」を参照してください)。これらのスクリプトを使用すると、複数の .stp ファイルのインストール、複数のサイトのインスタンス化、およびアップグレード プロセスが完了したサーバーの一時ファイルの削除を行うプロセスを効率化できます。Stsadm.exe は、SharePoint サーバーおよびサイトを管理するためのあらゆる WSS 操作を提供するコマンド ライン アプリケーションです。このソリューション スクリプトを使用すると、インストールとインスタンス化を一括で行うか、各作業を順番に行うことにより、このプロセスを自動化できます。インストールする .stp ファイルとインスタンス化するサイトが多い場合、大幅に時間を短縮できる可能性があります。

ソリューション スクリプト

このインストールおよびサイト作成プロセスでは、Stsadm.exe を実行する 2 つのスクリプトを使用します。

  • MigInstStp.cmd では、Stsadm.exe の addtemplate 操作を使用してサイト テンプレートをインストールします。この操作には、_SOURCEFILELOCATION、_SOURCEFILENAME、および _FILETITLE パラメータを指定します。
  • MigMakeSite_1.cmd では、新しいサイトを作成します。このスクリプトでは、Stsadm.exe の createweb 操作を実行します。この操作には、_SERVERURL、_SITENAME、_SITETEMPLATENAME、および _SITETITLE パラメータを指定します。

ローカルの WSS 2.0 サーバーで、サイト テンプレート (.stp) ファイルが保存されている場所にアクセスできることを確認してから、これらのスクリプトを実行します。これらのスクリプトを実行するには、サーバーのローカル Administrators グループのメンバであるか、サイトの作成権限を持つ WSS 管理者グループのメンバである必要があります。Windows SharePoint Services サイトおよびテンプレート用のアップグレード ツールキットに付属のガイドには、これらのスクリプトを最大限に活用する方法が詳しく記載されています。.stp ファイルをインストールし、サイトをインスタンス化したら、サーバーのアップグレードを開始できます。WSS 3.0 へのアップグレード方法は、「Windows SharePoint Services 3.0 へのアップグレード」に詳しく記載されています (補足記事「WSS の関連情報」に記載されているリンクから参照できます)。

WSS に関する用語

Windows SharePoint Services では、独特の用語が使用されます。一般的に使用される用語の簡単な説明を次に示します。

サイト定義 - 特定のサイトの種類を定義するファイルのセットです。サイト定義は、フロントエンド Web サーバー上の特定のフォルダに保存されている .xml ファイル、.aspx ファイル、.ascx ファイル、マスタ ページ ファイル、リスト テンプレート ファイル、およびコンテンツ ファイルから構成されます。WSS では、チーム サイト、空のサイト、およびドキュメント ワークスペースが含まれた標準のサイト定義のセットが既定で提供されます。初期状態では、これらのサイト テンプレートのみがサイト テンプレート ギャラリーに保存されており、[新しい SharePoint サイト] の [テンプレートの選択] の一覧から選択できます。

サイト テンプレート - SharePoint サイトのインスタンス化方法を定義します。新しい SharePoint サイトを作成するには、そのサイトの基になるサイト テンプレートを選択する必要があります。たとえば、標準の "空のサイト" テンプレートを基にして "取締役会" という名前の新しいサイトを作成できます。その後、インスタンス化したサイトにリスト、ライブラリ、Web パーツ、およびその他のカスタマイズを追加できます。これらのカスタマイズを他のユーザーが使用できるようにするには、"Blank Site" (空のサイト) サイト定義を基にした "取締役会" という名前のテンプレートとしてこのサイトを保存します。WSS により、そのカスタマイズされたサイト テンプレートは .stp (サイト テンプレート) ファイルとして保存され、サイト テンプレート ギャラリーに配置され、[新しい SharePoint サイト] ページの [テンプレートの選択] の一覧に表示されるため、ユーザーは後からそのテンプレートを基にして新しいサイトを作成できます。サイト テンプレートは、1 つの .stp ファイルに圧縮された、.xml ファイル、.aspx ファイル、画像ファイルなどの一連のサイト構成ファイルです (.stp ファイルの機能は .cab ファイルの機能に似ています)。これらのファイルの中で最も重要なのは Manifest.xml です。このファイルには、サイトの構造とナビゲーション、リストとライブラリ、Web パーツの配置、カスタム リスト定義、カスタマイズされたサイト テンプレートの基になったサイト定義などの重要な情報が含まれています。

アプリケーション テンプレート - 特定のビジネス プロセスや作業の要件を満たすために開発された Windows SharePoint Services サイト テンプレートです。これらのテンプレートはマイクロソフトによって公開されており、WSS ユーザーはそれらを無償でダウンロードできます。

カスタマイズされたサイト - ユーザー インターフェイスが変更された SharePoint サイトです。

マスタ ページ - サイト全体のインターフェイスに一貫性を持たせるために、バナー、ナビゲーション コントロール、その他のメニューなどの既定のレイアウト情報を保存できる領域です。

ゴースト ページ - コンテンツが WSS コンテンツ データベースに保存されず、サイト定義ファイルから読み取られるページです。ゴースト ページはカスタマイズされていません。

非ゴースト ページ - サイト定義ファイルの状態から変更されており、コンテンツが WSS コンテンツ データベースに保存されるページです。

サーバーのアップグレード後に行うサイトの検査

アップグレード ワークフロー (上記の図 1 を参照) の段階 2 に到達しました。この段階で行う手順を次に示します。

  1. アップグレードしたサイトを開いて検証します。
  2. 既定のマスタ ページを適用します。
  3. 新しいサイトの機能とレイアウトに関する問題を解決します。
  4. 修正後のサイトを新しい WSS 3.0 サイト テンプレートとして保存します。
  5. 新しい WSS 3.0 サイト テンプレートをサーバーに再展開します。
  6. 再展開したサイト テンプレートからサイトを作成します。
  7. 新しいサイトを開いて、サイトが期待どおりに機能するかどうかを確認します。
  8. クリーンアップ プロセスを開始します。

サイト定義へのリセット

アップグレードしたサイトを初めて開いたときの外観は、まだ WSS 2.0 サイトに非常に似ています。サイトの外観を WSS 3.0 サイトの外観に近付けるには、まず新しい WSS 3.0 サイトのサイト定義にリセットする必要があります。これにより、レイアウトに関するほとんどの問題が解決されます。また、Web パーツに対して行われたカスタマイズも、これらの Web パーツがサイト定義ページの [Web パーツ] の領域に表示されていれば、リセット後に失われることはありません。また、この操作により、サイトのすべてのページに既定のマスタ ページが適用されます。

マスタ ページは、その名のとおり、一貫性のある外観を提供するために、バナー、ナビゲーション コントロール、その他のメニューなどの既定のレイアウト情報を保存できる領域です。このため、マスタ ページのデザインを変更し、その変更をサイト全体に反映できるようになります。マスタ ページを適用することにより、WSS 3.0 に固有のすべての機能がアップグレード後のサイトで有効になります。

これでサイトの外観と機能はネイティブの WSS 3.0 サイトとほぼ同じになりましたが、ディスカッション掲示板、カスタマイズされた Web パーツ、ハイパーリンク、テーマなど、まだいくつか問題が見つかる可能性があります。

問題の解決

アップグレードおよびカスタマイズされたサイト テンプレートには、さまざまな問題が存在する可能性があります。最も一般的ないくつかの問題と、それらの解決方法に関する簡単な説明を次に示します。

引き続きサイトに WSS 2.0 の既定のスタイル シートが適用されている。 SharePoint Designer で古いスタイル シートを削除します。

Web パーツが存在しないか正しくない場所に配置されている。 SharePoint Designer を使用して Web パーツを移動または挿入します。

Web パーツが正しく機能しない。 WSS 3.0 と互換性がない Web パーツを削除し、対応する Web パーツが WSS 3.0 環境用に構築されているかどうかを Web パーツの開発者に問い合わせます。

カスタマイズされたリストとライブラリが正しく表示されない。 既存のデータを保存してから、カスタマイズされたリストやライブラリを再作成し、保存したデータをインポートします。

有効になった WSS 3.0 の機能を使用できない。 [サイトの機能] で、チームのグループ作業を明示的に有効にすることが必要になる場合があります。

ハイパーリンクが機能しなくなった。 ハードコードされたハイパーリンクは、手動で更新することが必要になる場合があります。

テーマが変更された。 適切な WSS テーマを適用します。

完了間近

プロセスが終わりに近付き、問題もすべて解決されたので、サイトの最終検証を実行しましょう。修正後のサイトを WSS 3.0 サイト テンプレートとして保存し、新しい .stp ファイルのインストールと新しいサイトのインスタンス化 (ここでも、この資料で紹介した便利なスクリプトを使用できます) を行った後、サイトを開いて、すべての問題が解決されたことと、アップグレードされたサイトと .stp ファイルを作業環境内で再配布できる状態になったことを確認する必要があります。

その他のアップグレード方法

この記事で説明した、自動化されたツールやプロセスを使用したテンプレートのアップグレードが必ずしも最適ではないことがあります。大幅にカスタマイズされたサードパーティ製のテンプレートを使用している場合、自力でテンプレートをアップグレードすることは非常に難しく、そのテンプレートの新しいバージョンが開発されるまで待った方がよいこともあります。その他の場合は、WSS 3.0 でまったく新しいテンプレートを作成した後、古いテンプレートの機能を実装することが最善の方法になるでしょう。

アプリケーション テンプレート

マイクロソフトでは、WSS 2.0 と WSS 3.0 用に開発されたアプリケーション テンプレートのセットを提供しています。新しい WSS 3.0 用のテンプレート セットには、WSS 2.0 用のいくつかのアプリケーション テンプレートをアップグレードしたものが含まれています。該当するテンプレートを使用している場合は、WSS 3.0 用にアップグレードされたテンプレートを、使用中の WSS 3.0 環境にアップロードできます。

まだ WSS 3.0 用にアップグレードされていない WSS 2.0 用のアプリケーション テンプレートを使用している場合は、このソリューション アクセラレータで提供される、WSS 3.0 環境で機能するようにアップグレードされた、WSS 2.0 用のアプリケーション テンプレートのセットを使用できます。

まとめ

Windows SharePoint Services サイトおよびテンプレート用のアップグレード ツールキットは、使用中の 2.0 テンプレート、サイト、およびカスタマイズを 3.0 環境でも使用する場合に非常に役立ちます。このトピックの追加情報と、このツールキットの入手方法については、補足記事「WSS の関連情報」に記載されているサイトを参照してください。

このコラムとソリューション アクセラレータの製作に重要な貢献を果たしてくれた Betty Houser に感謝します。

WSS の関連情報

Luis Câmara Manoelは、Microsoft ソリューション アクセラレータ グループのプログラム マネージャです。彼はマイクロソフトに勤務し始めて 1 年になります。以前は、ユタ州プロボにある Novell Inc および Volera で、プロジェクト マネージャとプログラム マネージャを務めていました。Luis の連絡先は、luiscam@microsoft.com (英語のみ) です。

Peter Skjøtt Larsenは、Microsoft ソリューション アクセラレータ グループの製品マネージャです。彼はマイクロソフトで 4 年間、開発とマーケティングを担当しています。以前は、金融、エンジニアリング、および通信業界用のクライアントおよびサーバー ソフトウェアを開発していました。Peter の連絡先は、petela@microsoft.com (英語のみ) です。

© 2008 Microsoft Corporation and CMP Media, LLC. All rights reserved; 許可なしに一部または全体を複製することは禁止されています.