C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[4]: .Net Remothingで訳のわからないエラー


(過去ログ 66 を表示中)

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■38633 / inTopicNo.1)  .Net Remothingで訳のわからないエラー
  
□投稿者/ カイジ (1回)-(2009/07/22(Wed) 10:43:01)

分類:[C#] 

Visual Studio 2005
C#

お世話になります。
ご存じの方いらっしゃいましたらご教授をお願い致します。

クライアント側からサーバ側に.Netリモーティングを試みているのですが、
RemotingExceptionでキャッチしたメッセージが解読不能です・・・。
「???…」は一体何を意味しているのでしょうか?


System.ArgumentNullException: DispatchChannelSink. ????????????????????????????????????????????????????????????????????????????????????????????????
??????????????????: requestMsg
?????? System.Runtime.Remoting.Channels.DispatchChannelSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream)
?????? System.Runtime.Remoting.Channels.BinaryServerFormatterSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream)
?????? System.Runtime.Remoting.Channels.Http.HttpHandlerTransportSink.HandleRequest(HttpContext context)
?????? System.Runtime.Remoting.Channels.Http.HttpRemotingHandler.InternalProcessRequest(HttpContext context)

引用返信 編集キー/
■38634 / inTopicNo.2)  Re[1]: .Net Remothingで訳のわからないエラー
□投稿者/ みきぬ (541回)-(2009/07/22(Wed) 10:57:34)
方針1.おそらく文字化けしているので、例外を catch してメッセージの文字コードを変換して表示させてみる。

方針2.英語の部分を拾って、Google で検索する。
例えば「ArgumentNullException DispatchChannelSink」を条件にすべての言語で(←ここ重要)検索すると、いくつか似たようなケースが見つかる。
引用返信 編集キー/
■38635 / inTopicNo.3)  Re[2]: .Net Remothingで訳のわからないエラー
□投稿者/ なちゃ (314回)-(2009/07/22(Wed) 11:15:12)
カスタムのチャネルシンクを仕込むと生のメッセージを取り出すことも出来ますが、ちょっと面倒ですね。
あるいはTCP通信のモニタリングが出来るツールを使うとか。

uriかフォーマットの不一致が原因のことが多いように思います。
引用返信 編集キー/
■38636 / inTopicNo.4)  Re[1]: .Net Remothingで訳のわからないエラー
□投稿者/ オショウ (278回)-(2009/07/22(Wed) 11:18:09)
> クライアント側からサーバ側に.Netリモーティングを試みているのですが、
> RemotingExceptionでキャッチしたメッセージが解読不能です・・・。
> 「???…」は一体何を意味しているのでしょうか?

  サーバー側ってOSは何?
  因みにデバッグモードで待ちうけできません?
  サービスで作っても、デバッグモードでコンパイルしてあれば、そのプロセスに
  後からアタッチして、ソースコードデバッグできますが・・・

  で、文字バケですが、HttpServerChannel使っておられますが、そのエンコーディング
  に問題があるのでは?

  私はTcpServerChannel 方ばかり使ってますので、受け渡しする情報の文字列に関して
  はHttp時のエンコーディングに影響されないもので・・・

以上。参考まで
引用返信 編集キー/
■38638 / inTopicNo.5)  Re[3]: .Net Remothingで訳のわからないエラー
□投稿者/ カイジ (2回)-(2009/07/22(Wed) 12:00:04)
みきぬ様、なちゃ様、オショウ様
コメントありがとうございました。

リモートもとのコンストラクタに以下の一行をいれることで解決できました。

//リモート構成ファイルの登録
RemotingConfiguration.Configure(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile, false);

解決済み
引用返信 編集キー/
■38640 / inTopicNo.6)  Re[4]: .Net Remothingで訳のわからないエラー
□投稿者/ なちゃ (315回)-(2009/07/22(Wed) 12:14:10)
多分デフォルトのHTTPチャネルが使われて、デフォルトのsoapフォーマッタになってたのだと思います。

ちなみにリモーティングのチャネルシンクレベルで問題が起こった場合、ユーザーコードまで届かないため、
デバッグなどで簡単には確認する事は出来ないと思います。>オショウさん

また、このようなエラーは例えばフォーマッタの不一致などで起こり、
テキストのエラーレスポンスをクライアント側で無理やりデシリアライズしようとし、
異常を検知して例外にする際に正しくエンコーディングを合わせないための現象です。
これは設定等ではどうしようもなく、独自にチャネルシンクを仕込むなどしないと対処できないです。

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -