エラーページの表示を切り替える方法

SharePoint 開発をしていると一度は悩む(?)、どこでもキャッチしていない例外(未処理の例外)が起きた時に表示するエラーページを切り替える方法についてまとめました。

切り替え方法

エラーページは SharePoint の IIS サイトの物理フォルダにある web.config の以下の属性の設定により切り替えることができます。 ・SharePoint タグ配下にある SafeMode タグの CallStack 属性 ・system.web タグ配下にある customErrors タグの mode 属性 ・system.web タグ配下にある compilation タグの debug 属性 SharePoint の IIS サイトは以下の場所にあります。 C:\inetpub\wwwroot\wss\VirtualDirectories\80 ←最後の 80 はポート番号 また、_layouts フォルダ配下のアプリケーションページ等で発生した未処理の例外に対するエラーページの表示切り替えを行う場合は、_layouts フォルダ配下にある web.config の customErrors タグの設定も忘れずに行ってください。 _layouts フォルダは以下の場所にあります。 C:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\TEMPLATE\LAYOUTS ※15 フォルダは SharePoint のバージョンにより数字が異なります。2013 の場合は 15 となります。 web.config の各属性の具体的な設定は以下の通りとなります。

読了時間: 1分

カスタムフィールドの JSLink プロパティに指定した JS を変更しても反映されない場合の対処法

カスタムフィールドで JSLink を使う場合に、SPField.JSLink プロパティで指定した JavaScript ファイルがキャッシュされてしまい、JavaScript を変更しても変更内容が反映されないという状況が起きたので、その場合の対処方法を記載します。 ちなみに、以下の条件下以外で JSLink を使ったことがないので、JavaScript ファイルがキャッシュされること自体が普通に起きることなのかどうかは未確認です。 今回開発したカスタムフィールでの JSLink 周りの状態は以下の通り。

  • JSLink プロパティで指定した JavaScript ファイルは、Layouts フォルダ配下の自前のフォルダに配置。
  • ダウンロード最小化戦略フィーチャーはアクティブ状態。
  • JavaScript ファイル内で、RegisterModuleInit 関数で JavaScript ファイルを登録する処理を実行。

対処方法 Visual Studio のデバッグ実行の最中に、カスタムフィールドをリストから一度削除しもう一度付け直すことで、変更後の JavaScript が実行されることを確認しました。 なお、ブラウザの履歴削除や Ctrl+F5、iireset コマンドの実行ではダメでした。

読了時間: 1分

SharePoint app を ASP.NET MVC で作った際にプロジェクトに含まれている JS ファイルについて

はじめに

Visual Studio 2013 では、SharePoint app (apps for SharePoint のこと) を作成する際に、 ・ASP.NET Web Forms Application (初代 ASP.NET の頃から存在するイベントドリブンなフレームワーク) ・ASP.NET MVC Web Application (Model-View-Controller パターンなフレームワーク) のどちらかを最初に選択してプロジェクトを作ります。 image_3_40136282 ※上図の通り、デフォルトは ASP.NET MVC Web Application となっています。 ASP.NET MVC Web Application 形式でプロジェクトを作成すると、モバイルデバイス向け開発に便利ないくつかの JavaScript ファイルが最初からプロジェクトに含まれているのですが、これらの JS ファイルについては Project_Readme.html 等を読んでも特に説明がなく、SharePoint app 開発用の msdn の記事をあさってもなかなか情報が見つかりません。 ということで、プロジェクトに最初から含まれている JS ファイルは何のために使うものなのか調べてみました。 ASP.NET MVC Web Application での開発をバリバリやっていらっしゃる方や、モバイルデバイス向けの開発をされている方にとっては「そんなことも知らないの!?」ということかもしれませんが、古い人間な私には分からなかったので、一応ここにまとめておきます。。。

読了時間: 1分

Office 365 API Tools を使ってみた

はじめに

SharePoint Conference 2014 で発表された Office 365 API。 この Office 365 API を Visual Studio 2013 からより手軽に利用できるようにするためのツールとして先日リリースされた、Office 365 API Tools を早速使ってみましたので、使用方法など残しておきたいと思います。

読了時間: 2分

SharePoint ソリューションの開発環境を構築する

はじめに

SharePoint 2013 のソリューションを開発するための環境を構築する方法を説明します。 なお、SharePoint 用アプリや Office 用アプリの開発環境構築については、以下の記事をご参照ください。 SharePoint 用アプリおよび Office 用アプリの開発環境を構築する SharePoint ソリューションの開発環境は、SharePoint と Visual Studio を同居させる必要がありますので、全開発環境に SharePoint をインストールすることとなります。 そのため、全開発環境にサーバー OS も必要になり、非常にコストがかかることとなります。 従って、開発期間が短いのであれば、評価版で環境をそろえるということも検討されるとよいかと思います。

読了時間: 1分

.NET CSOM による SharePoint Online への接続

はじめに

.NET 版の Client Side Object Model を使って SharePoint Online に接続するためのサンプルコードをご紹介します。

サンプルコード

以下は、SharePoint Online に接続するための部分的なコードになります。

1: SecureString securePassword = new SecureString();
2: foreach (char passwordChar in password)
3: {
4: securePassword.AppendChar(passwordChar);
5: }
6:  
7: ClientContext context = new ClientContext(siteUrl);
8: context.Credentials =
9: new SharePointOnlineCredentials(accountName, securePassword);

サンプルコードの説明

1行目の SecureString というクラスは、.NET でパスワードなどセキュアな文字列情報を扱うためのクラスで、SharePoint Online へ接続するためのパスワードを格納するために使っています。 SecureString への値の格納は少々面倒なのですが、2行目から5行目の部分で行っています。 この例では、password という string 型の変数にユーザーが指定した SharePoint Online へのパスワードが格納されている前提で、securePassword という変数に1文字ずつパスワード文字列を格納しています。 7行目で SharePoint への接続を管理する ClientContext クラスのインスタンス(context変数)を、接続先サイトの URL (siteUrl変数)を渡して生成しています。 8、9行目では、7行目で生成した ClientContext の Credentials プロパティに SharePointOnlineCredentials クラスのインスタンスを渡しています。 この SharePointOnlineCredentials クラスが SharePoint Online に接続するための資格情報などを持っており、これを使うことで SharePoint Online に接続することができるようになります。 資格情報として、ログインに使用するアカウント名(accountName変数)と、パスワード(securePassword変数)を指定しています。 これらは、SharePoint Online のログインページで入力しているものと同じものになります。

読了時間: 1分

SharePoint の発行ページ用リッチテキストエディタに独自のスタイルを追加する方法。

SharePoint の発行ページ用リッチテキストエディタに独自のスタイルを追加する方法。 http://t.co/In2dZvO6TY

twetter より

読了時間: 1分

SharePoint 2013 ワークフロー開発入門の資料を公開しました

先日の Japan SharePoint Group in 大阪で説明させていただいた「SharePoint 2013 ワークフロー開発入門」の資料を公開しました。 SharePoint ワークフロー開発入門 http://www.slideshare.net/HiroakiOikawa/jpsps20130803oikawa セッションではデモを使った説明をしていたのですが、スライドにその内容は含まれていません。 デモでやった内容は、別の記事として書いていきたいと思います。

読了時間: 1分

SharePoint 用アプリおよび Office 用アプリの開発環境を構築する

はじめに

SharePoint 2013 の SharePoint 用アプリ (apps for SharePoint) および Office 2013 の Office 用アプリ (apps for Office) を開発するための環境を構築します。 開発環境としては、Napa というブラウザ上で動作する簡易開発環境も存在するのですが、今回は Visual Studio を使った開発環境を対象とします。

読了時間: 1分