locked
カスタマイズチームサイトのコピーについて(データはコピーせず) RRS feed

  • 質問

  • いつもお世話になっております。
    Share POint2013のシステム管理業務を行っております。
    経験が浅く、基本的な事(もしくは理解していない)で申し訳ないのですが、質問させてください。

    ユーザーより、カスタマイズ(TeamSite上でフォームの作成など。SP Designerやコードありません。) したTeamSiteを他のチームでも活用できるので、同じフォーマットのTeamSiteを新規で作って欲しいとの依頼があり、どのようにすれば良いか分からず困っております。
    考えているのは既存のカスタマイズしたTeamSiteをTemplateとして保存して、作成したTemplateから新しいTeamSiteを作成しようと考えております。
    私の行った作業を下記に記載致します。

    - 対応1:
    Save as Templateでxxxx.wspを作成し、新しいブランクTemplateで作成したTeamSiteのソリューションにアップロード・Active化し新規作成したブランクテンプレートを開き、<Custom>タブから有効になったTemplateを選択。
    <<結果>>
    下記エラーがによりtempalteを反映できませんでした。
    The SPWebTemplate named TEAM_SITE#0 cannot be found. The SPWebTemplate matching the BaseTemplateName and BaseConfigurationID of the WebTemplate declared by feature {2d45633e-a4e5-4d8e-8fc1-d1b42e3acb13} could not be found.

    - 対応2:
    ファームソリューションにテンプレート(*.wsp)を追加・展開し、サイトコレクション作成時のテンプレートのリストに追加。
    *) Enable-SPFeatureは実行していません。

    参考資料:URLの転載に問題がある場合には申し訳ありません。その場合削除致します。
    追加・展開方法:
    http://sharepoint-techblog.blogspot.jp/2013/07/sharepoint2013_12.html

    追加・展開中の問題への対応:
    http://ybbest.wordpress.com/2011/09/10/how-to-fix-%E2%80%9Cinstall-spsolution-admin-svc-must-be-running-in-order-to-create-deployment-timer-job%E2%80%9D/

    <<結果>>
    ファームソリューションの追加・展開はできたのですが、Central Administrationからサイトコレクションの作成画面で選択できるTemplateに表示されません。

    質問1:どのようにすれば、既存のTeamSiteのデザインだけをコピーして新しいTeamSiteが作れますでしょうか?

    質問2: ソリューションとはなんなんでしょうか?TemplateのSharePoint上の名称との理解で良いでしょうか?

    以上、お手数ですがご教授お願いいたします。

    2014年9月25日 4:14

回答

  • 対応1については、以下の手順と認識しましたが間違いないでしょうか。

    1.「サイトの設定」-「テンプレートとしてサイトを保存」を選択してテンプレートを保存。
    2.「ソリューションギャラリー」から作成されたxxx.wspファイルをダウンロード。
    3.「全体管理」から新しく、<テンプレートを後で選択>を指定して、サイトコレクションを作成。
    4.新しいサイトコレクションのルートサイトで「ソリューションギャラリー」にxxx.wspファイルをアップロード。
    5.新しいサイトコレクションのルートサイトで、アップロードしたテンプレートを指定。
    6.記述頂いたエラーが発生。


    質問1への回答
    テンプレート化した元のサイトは、サイトコレクションのルートサイトでしょうか。それともサブサイトでしょうか。
    サイトコレクションのルートサイトは特別なサイトなので、テンプレートをルートサイトとして利用したいのであれば、元のテンプレートも、ルートサイトをテンプレート化したものだけにした方が良いと思います。
    (要は、サブサイトをテンプレート化したものを使っているのがエラーの原因ではないかと推測しています)
    推測が誤っている、もしくは、単純にエラーを解消したいのであれば、
    Get-SPFeature 2d45633e-a4e5-4d8e-8fc1-d1b42e3acb13
    で、エラーとなっているFeatureを特定し、テンプレート化する前のサイトにおいてdeactivateしてから、再テンプレート化すれば、エラーは解消するかもしれません。
    ただ、ルートサイトを再利用したいのであれば、サイトコレクション自体をテンプレートと考え、サイトコレクションのバックアップ・リストアで対応するのが自然なような気がします。

    質問2への回答
     SharePoint 2010までは、サイトテンプレートとソリューションは分かれていたので分かりやすかったと思います。
     SharePoint 2013では、サイトテンプレートもソリューションとして扱われるようになったので、混乱をまねいているかと思います。ソリューションについては、インターネット上に説明がたくさんあるので調べて頂くとよいかと思いますが、ソリューションの方が大きな概念で、その一部(ソリューションで実現できる機能の一部)として、サイトテンプレートがあるイメージです。

    • 回答の候補に設定 佐伯玲 2014年9月29日 0:42
    • 回答としてマーク YNaka_1 2014年9月29日 1:36
    2014年9月26日 5:45

すべての返信

  • 対応1については、以下の手順と認識しましたが間違いないでしょうか。

    1.「サイトの設定」-「テンプレートとしてサイトを保存」を選択してテンプレートを保存。
    2.「ソリューションギャラリー」から作成されたxxx.wspファイルをダウンロード。
    3.「全体管理」から新しく、<テンプレートを後で選択>を指定して、サイトコレクションを作成。
    4.新しいサイトコレクションのルートサイトで「ソリューションギャラリー」にxxx.wspファイルをアップロード。
    5.新しいサイトコレクションのルートサイトで、アップロードしたテンプレートを指定。
    6.記述頂いたエラーが発生。


    質問1への回答
    テンプレート化した元のサイトは、サイトコレクションのルートサイトでしょうか。それともサブサイトでしょうか。
    サイトコレクションのルートサイトは特別なサイトなので、テンプレートをルートサイトとして利用したいのであれば、元のテンプレートも、ルートサイトをテンプレート化したものだけにした方が良いと思います。
    (要は、サブサイトをテンプレート化したものを使っているのがエラーの原因ではないかと推測しています)
    推測が誤っている、もしくは、単純にエラーを解消したいのであれば、
    Get-SPFeature 2d45633e-a4e5-4d8e-8fc1-d1b42e3acb13
    で、エラーとなっているFeatureを特定し、テンプレート化する前のサイトにおいてdeactivateしてから、再テンプレート化すれば、エラーは解消するかもしれません。
    ただ、ルートサイトを再利用したいのであれば、サイトコレクション自体をテンプレートと考え、サイトコレクションのバックアップ・リストアで対応するのが自然なような気がします。

    質問2への回答
     SharePoint 2010までは、サイトテンプレートとソリューションは分かれていたので分かりやすかったと思います。
     SharePoint 2013では、サイトテンプレートもソリューションとして扱われるようになったので、混乱をまねいているかと思います。ソリューションについては、インターネット上に説明がたくさんあるので調べて頂くとよいかと思いますが、ソリューションの方が大きな概念で、その一部(ソリューションで実現できる機能の一部)として、サイトテンプレートがあるイメージです。

    • 回答の候補に設定 佐伯玲 2014年9月29日 0:42
    • 回答としてマーク YNaka_1 2014年9月29日 1:36
    2014年9月26日 5:45
  • たけさと様

    返信ありがとうございます。また、また私からの返信が遅くなり申し訳ありませんでした。
    対応1についての手順はたけさと様に記載頂いた手順で間違いありません。

    弊社では基本サブサイトを使用しない事としている為、作成したテンプレートはトップサイトを使用しております。

    また、ご教授頂きました「Get-SPFeature 2d45633e-a4e5-4d8e-8fc1-d1b42e3acb13」を実行したところ、サイトコレクションの「Web Template feature of exported web template xxxxxxxxx」Featureでした。xxxxのところには「テンプレートとしてサイトを保存」をしたサイト名が入っております。
    このFeatureはソリューションを使用する為に有効にしたもので、無効にするとソリューションでActivateしたテンプレートが選択できなくなります。。。
    また、テンプレート作成元のサイトで確認したのですが、「テンプレートとしてサイトを保存」を選択すると自動で上記Featureが作成され、有効になっておりました。
    テンプレートの作成に必要なFeatureなのだと理解しております。その為元にテンプレート作成元で事前に無効にする事もできませんでした。

    たけさと様のご指摘の通り、サイトのバックアップ・リストアでの対応が通常なのだと理解致しました。
    今回のユーザーに関してはデータはコピーせずなので、カスタマイズされたリストを「Save list as template」でテンプレート化して、
    新規のサイトにすべてのリストテンプレートをコピーして対応しようと考えております。

    ソリューションに関しては、インターネット・書籍(一目で分かるSP2013のサイトカスタマイズ&開発編)で勉強いたします。

    最後になりましたが、たけさと様ご返信ありがとうございました。
    大変勉強になりました!!

    今後とも、宜しくお願い致します。


    2014年9月29日 1:36