0

Web サイトのデモのように Web サービス バインディングが設定された radscheduler があります。ローカル マシンで正常に動作し、ローカル イントラネット サーバーでも正常に動作しています。公開サーバーにデプロイすると、次のエラー (スタック トレース) が表示されます。

    [SocketException (0x274c): A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 50.62.137.146:443]
   System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress) +305
   System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Int32 timeout, Exception& exception) +699

[WebException: Unable to connect to the remote server]
   System.Net.WebClient.UploadDataInternal(Uri address, String method, Byte[] data, WebRequest& request) +3298576
   System.Net.WebClient.UploadString(Uri address, String method, String data) +319
   Telerik.Web.UI.SchedulerWebServiceClient.LoadResources(WebClient client, ResourcesPopulatingEventArgs args) +267

[Exception: Unable to retrieve response message]
   Telerik.Web.UI.SchedulerWebServiceClient.HandleWebException(WebException webEx) +311
   Telerik.Web.UI.SchedulerWebServiceClient.LoadResources(WebClient client, ResourcesPopulatingEventArgs args) +364
   Telerik.Web.UI.SchedulerWebServiceClient.GetResources() +421
   Telerik.Web.UI.RadScheduler.BindResourcesFromWebService() +90
   Telerik.Web.UI.RadScheduler.PerformSelect() +117
   Telerik.Web.UI.RadScheduler.CreateChildControls(Boolean bindFromDataSource) +81
   System.Web.UI.Control.EnsureChildControls() +182
   System.Web.UI.Control.FindControl(String id, Int32 pathOffset) +35
   Telerik.Web.ChildControlHelper.FindControlRecursive(String ID, Control root) +211
   Telerik.Web.ChildControlHelper.FindControlRecursive(String ID, Control root) +283
   Telerik.Web.ChildControlHelper.FindControlRecursive(String ID, Control root) +283
   Telerik.Web.ChildControlHelper.FindControlRecursive(String ID, Control root) +283
   Telerik.Web.ChildControlHelper.FindControlRecursive(String ID, Control root) +283
   Telerik.Web.UI.RadAjaxControl.OnPagePreRender(Object sender, EventArgs e) +1450
   System.EventHandler.Invoke(Object sender, EventArgs e) +0
   System.Web.UI.Control.PreRenderRecursiveInternal() +113
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4201

これは、ResourcePopulationMode="ServierSide" を使用している場合にのみ発生します。それを ClientSide に変更すると、機能し、Web サービスが適切に呼び出されます。私はそれを見るためにフィドラーを使用しています。グループ化を使用したいのですが、ClientSide を使用できません。なぜこのエラーが発生するのですか? GetReources メソッドを機能させるためにサーバーで行う必要がある構成設定はありますか? どんな助けでもいただければ幸いです:)ありがとう

4

1 に答える 1

0

これは本当に古いことだと思いますが、user1932424 から尋ねられた Telerik スケジューラの問題をグーグルで調べているときにこれに出会いました。

私の場合は、AWS サーバー (EC2/VPC) のセットアップの問題でした。私がそのサーバー用に設定したセキュリティ グループは、どのポートも発信呼び出しを許可していませんでした。ルールとしてセキュリティ グループに HTTPS アウトバウンド コールを追加した後。この問題は解消され、Scheduler がそれ自体 (.asmx Web サービス) を呼び出してデータを取得できるようになりました。ファイアウォールでこれが発生する可能性があります。確認する簡単な方法は、Web アプリケーションを Web サーバー上でローカルにロードできるかどうかを確認することです。

これが、同様の問題を抱えている他の誰かに役立つことを願っています。

于 2014-07-23T04:40:18.993 に答える