locked
ASP Webアプリケーションで、SPSite の作成時 (new) に FileNotFoundException が発生する RRS feed

  • 質問

  • 開発環境
     OS:Windows Server 2008 R2
     DB:SQL Server 2008 standard
     SharePoint Foundation 2010(x64)
     Visual Studio 2012(.Net FrameWork3.5)

    WebからSharePointにファイルをアップロードする機能を実装してるのですが
    SPSite test = new SPSite("File URL");の箇所でFileNotFoundExceptionとなってしまいます。
    プラットフォームターゲットをAnyCPUで設定しているのですがうまくいきません。
    ためしにコンソールアプリで動かすと正常に動作します。
    コンソールアプリで問題なく動作するのに、ASP.NETアプリから呼び出すとエラーになってしまう理由がよくわかりません。
    SharePointの設定の問題なのでしょうか?

    • 編集済み vifam1980 2014年9月24日 5:20
    2014年9月23日 10:46

回答

  • コンソールで動かすとエラーはよくあるのですが、ASP .NET側でエラーは珍しいですね。

    思いつく所としては、アプリケーションプールユーザーの権限不足ぐらいです。

    SharePointの診断ログにFileNotFoundExceptionのスタックトレースが出力されていると思いますので、それを記述頂ければもう少しアドバイスできるかもしれません。

    • 回答としてマーク vifam1980 2014年9月25日 6:34
    2014年9月24日 11:04

すべての返信

  • コンソールで動かすとエラーはよくあるのですが、ASP .NET側でエラーは珍しいですね。

    思いつく所としては、アプリケーションプールユーザーの権限不足ぐらいです。

    SharePointの診断ログにFileNotFoundExceptionのスタックトレースが出力されていると思いますので、それを記述頂ければもう少しアドバイスできるかもしれません。

    • 回答としてマーク vifam1980 2014年9月25日 6:34
    2014年9月24日 11:04
  • たけさとさんが述べられているように、アプリケーションプールユーザーの実行権限がないのが要因であれば、
    フルコントロール権限で処理を実行させれば良いと思います。

    SPSecurity.RunWithElevatedPrivileges メソッド
    2014年9月25日 1:17
  • たけさと様

    返信遅れて申し訳ございません。

    SharePointの診断ログを確認したのですが
    FileNotFoundExceptionのスタックトレースがが見当たりませんでした。

    ただ下記のような警告が出力されていましたので記述いたします。
    Alternate access mappings have not been configured.  Users or services are accessing the site http://test001 with the URL http://localhost.  This may cause incorrect links to be stored or returned to users.  If this is expected, add the URL http://localhost as an AAM response URL.  For more information, see: http://go.microsoft.com/fwlink/?LinkId=114854"/> f19e48a7-9f32-43e8-86f1-67f5605e0610

    ご指摘のアプリケーションプールに管理者権限をもったユーザーを追加して
    テストしてみましたが結果はかわりませんでした。

    SharePointの設定のような気がしてきました。


    2014年9月25日 6:02
  • 出力されているメッセージが関係あるとすると、「全体管理」-「代替アクセスマッピング」における「領域のパブリックURL」で指定されているURLを、SPSiteで指定しているかどうかご確認してください。

    また、エラーが発生している画面は、Visual Studioのデバッグ用のIISでホストされていたりはしませんか?(F5でデバッグ実行した際の現象ではないことの確認です)

    また、FileNotFoundExceptionは、画面に表示されているということでよろしいでしょうか。その場合、下記URLを参考にweb.configを編集し、エラーの詳細が表示されるようにしてから、再度、エラー画面の詳細を教えて頂けますでしょうか。
    http://msdn.microsoft.com/ja-jp/library/ee231550.aspx

    2014年9月26日 9:40
  • たしかに、たけさとさんが書かれているように代替アクセスマッピングのようなエラーですね。

    test001 のURLのサイトに localhost のURLでアクセスしているよ、というのがエラー内容ですね。

    2014年10月3日 6:48