2008-09-10 8 views
14

既存のWebページにADO.Net Data Service参照機能を追加しています。 Visual Studioのから実行するときにすべてが素晴らしい作品が、私はIISにそれをロールアウトするとき、私は次のエラーを取得する:IISにADO.Net Data Serviceアプリケーションを展開する際の問題

Request Error
The server encountered an error processing the request. See server logs for more details.

私はつまり、デフォルトのページを表示しようとする場合でも、これを取得する:

http://server/FFLookup.svc

私は3.5 SP1をサーバーにインストールしました。

私は何が欠けていて、どの「サーバーログ」がそれを参照していますか?私はそれ以上のエラーメッセージを見つけることができません。

2008-09-10 15:20:19 10.7.131.71 GET /FFLookup.svc - 8082 - 10.7.131.86 Mozilla/5.0+(Windows;+U;+Windows+NT+5.1;+en-US)+AppleWebKit/525.13+(KHTML,+like+Gecko)+Chrome/0.2.149.29+Safari/525.13 401 2 2148074254

は、スタックトレースが返されないあり:

GET以外のIISログのイベントビューアのログ(システムまたはアプリケーション)で何も、何もありません。私が得る唯一の応答は、上記の「要求エラー」です。

おかげ

パトリック

+0

IISマネージャー(Run> inetmgr)を実行し、サービスファイルを右クリックできますか? [参照]をクリックします。 localhostを試してみると、エラーの詳細が表示されることがあります。また、ブラウザのURLに注意してください。 Webサイトが別のポート用に設定されている可能性があります。 –

答えて

13

は、まあ、私は上記のエラーで言及した「サーバー・ログ」を見つけました。

次のタグを追加することにより、web.configファイルでトレースをオンにする必要があります。

<system.diagnostics> 
     <sources> 
     <source name="System.ServiceModel.MessageLogging" switchValue="Warning, ActivityTracing" > 
      <listeners> 
       <add name="ServiceModelTraceListener"/> 
      </listeners> 
     </source> 

     <source name="System.ServiceModel" switchValue="Verbose,ActivityTracing"  > 
      <listeners> 
       <add name="ServiceModelTraceListener"/> 
      </listeners> 
     </source> 
     <source name="System.Runtime.Serialization" switchValue="Verbose,ActivityTracing"> 
      <listeners> 
       <add name="ServiceModelTraceListener"/> 
      </listeners> 
     </source> 
    </sources> 
    <sharedListeners> 
     <add initializeData="App_tracelog.svclog" 
         type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
         name="ServiceModelTraceListener" traceOutputOptions="Timestamp"/> 
    </sharedListeners> 
</system.diagnostics> 

これはあなたのウェブサイトのディレクトリにapp_tracelog.svclogというファイルを作成します。

このファイルを表示するには、SvcTraceViewer.exeユーティリティを使用します。視聴者は、(通信に関する他の多くの情報に加えて)エラーを強調表示する良い仕事をします。

注意:上記のパラメータで作成されたログファイルは非常に高速になります。デバッグ中にのみオンにしてください!

この場合、Oracle Data ProviderのOraDirect.Netのバージョンが正しくないという問題がありました。使用していたバージョンは3.5 SP1をサポートしていませんでした。これは、その後、スタックトレースだけでなく、お使いのブラウザウィンドウにエラーが表示されます

[System.ServiceModel.ServiceBehavior(IncludeExceptionDetailInFaults = true)] 

:冗長にするためには

+0

あなたの問題を解決するのに役立ちましたか?あなたの所見を分かち合うことができれば素晴らしいでしょう。 –

42

はあなたのDataService定義上、次のタグを配置することができ、あなたのデータサービスから生じるエラーを表示します。私のエラーのために

protected override void HandleException(HandleExceptionArgs e) 
{ 
    try 
    { 
    e.UseVerboseErrors = true; 
    } 
    catch (Exception ex) 
    { 
    Console.WriteLine(ex.Message); 
    } 
} 
0

:あなたは、あなたがそれにブレークポイントを置くことができ、あなたのDataServiceクラスでこのメソッドを実装し、例外を参照してくださいので、もしこれのDataServicesに加えて

はHandleExceptionメソッドのすべての例外をスローします同じ名前の2つのメソッド(意図しないオーバーロード)が原因です。

Overloading is not supported but type 'abc' has an overloaded method 'Void SubmitCart(System.String, Int32)'.

サービスをデバッグモードで実行すると分かりました。

関連する問題