2011-09-21 3 views
3
내 .NET 응용 프로그램에서 웹 서비스 작업을 호출 할 때 나는 다음과 같은 예외를 얻고있다

:.NET WebService에 시간 초과 예외

System.Net.WebException : 작업 System.Web.Services에서 시간이 초과되었습니다 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke (문자열에서 System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse에서 .Protocols.WebClientProtocol.GetWebResponse (WebRequest를 요청) (WebRequest를 요청) methodName로, 개체 [] 매개 변수) at org.wvi.hrmgmt.HRManagementServiceserviceage org.wvi.mgmt.hr._ServiceClient.UploadReducedTemplate()에서 nt.LoadReducedTemplate (LoadReducedTemplateRequest LoadReducedTemplateRequest)는

기본적으로, 사용자는 웹 서버로 파일을 업로드하고,이 파일의 내용은 이진 전달되고 웹 서비스 작업을 호출 할 때 입력 매개 변수 중 하나로 파일 크기는 1,397 KB이며이 파일을 처리하도록 선택한 경우 예외가 발생합니다. 반면 상대적으로 작은 크기 인 127KB로 처리되는 파일을 처리하는 것은 성공적인 응답을 제공합니다.

  1. 무한 할 수있는 웹 서비스 제한 시간을 설정 :

    나는 dillema를 해결하기 위해 아래 단계를 수행했다. -> 예외 및 Response.Close()를 추가

  2. 응답은 점점되지 않음 -> IIS 서버에서 Web.config를 편집하고 다음 행을 추가, 응답

  3. 을받지를 -> 여전히 점점 예외

    <system.web> 
        <customErrors mode="Off"/> 
    <httpRuntime executionTimeout="600" maxRequestLength="16384"/> 
    <sessionState timeout="540"/> 
    </system.web> 
    

그러나 아무 소용, 난 여전히 위의 예외를 받고 있어요. GitHub에서 AjaxUpload라는 Javascript 플러그인을 사용하고 있는데 파일 업로드 크기 제한이 있는지 파악할 수 없습니다. 게다가, 파일이 서버에 업로드되고 있다면, 그 파일이 그 플러그인 때문에 문제가 아닐 수도 있습니다.

또 다른 문제는 웹 페이지가 열리면 파일을 업로드 할 때 동일한 예외가 발생한다는 것입니다. 나는 이것이 세션 타임 아웃과 관련이 있다고 추측한다. 그래서 최대 timeout을 지정하는 web.config 파일에 추가 라인을 추가했다. 내가 올바른 길을 가고 있는지 조언 해주세요.

작업을 성공적으로 수행하려면 IIS 서버에 적용해야하는 추가 설정이 있습니까? 그렇지 않으면 내가 누락 된 것이 있습니까? 전에 경험이 있다면 친절하게 제게 알려주십시오.

인해 열리지 프록시의 많은에 당신에게 랄프

답변

0

이 될 수를 너무 많이 감사합니다. 따라서 웹 서비스 참조와 함께 Service.Reference.Config를 삭제하고 서비스 참조를 다시 추가하여 문제가 해결되는지 확인하는 것이 좋습니다.이전의 대답에 추가

0

, 당신은 참조, 프록시 클래스의 실행 시간을 설정하려고 할 수도 있습니다 discussion

그리고 당신은 서비스 호출은 긴 실행중인 작업을 수행하면 긴 시간을하는 것이 좋습니다 전에 말한 것처럼 프록시 클래스에서 타임 아웃을 설정하여 모든 웹 서비스 호출에 대한 아웃을 생성 할 수 있습니다.