ASP.NET ASMX 서비스에서 간혹 예외가 발생합니다. 그러나 global.asax Application_Error 메서드는이를 catch하지 않는 것 같습니다. 질문은 이러한 예외를 잡아서 기록하기 위해 전역 오류 처리기를 구성하는 방법입니까?asmx 서비스가 던진 예외는 어떻게 처리합니까?
답변
예외를 던지고있는 ASMX 또는 AJAX JavaScript입니까?
자바 스크립트 인 경우 JS에 예외 처리를 작성한 다음이를 웹 서버로 다시 호출하여 오류 데이터 저장소에서 추적 할 서버로 다시 푸시해야합니다.
ASMX라면 Application_Error에 의해 잡힐 것입니다.하지만 ASMX가 XML 또는 JSON을 반환하기 때문에 사용자가 찾고 있지 않으면 UI에 반드시 표시되지는 않습니다.
클라이언트 측 JavaScript로 서비스 호출을 간단하게 마무리합니다. 서버 측에서 서버 로그에 오류가 로깅되어야합니다. HTTP 500 오류
ASMX 웹 서비스의 기본 문제 (문제가되지 않음)는 서비스 계층 뒤의 모든 예외가 SOAP 예외로 클라이언트에 전달된다는 것입니다. SOAP 예외를 catch 한 다음 내부 예외를 찾아야합니다.
더 나은 방법은 응용 프로그램에서 SOAP 처리기를 구현하는 것입니다. 이것에 의해 SOAP 예외를 직렬화 해, 클라이언트 측에서 그것을 직렬화 복원합니다. 이렇게하면 .net 프레임 워크가 아닌 예외 흐름을 완전히 제어 할 수 있습니다.
HTH
당신은 이것을 올바른 방향으로 가르쳐 주시겠습니까? 현재 예외를 허용하지 않는 전역 예외 처리기를 작성하려고합니다. asmx 파일 외부에서 (대신 사용자 정의 페이로드 오브젝트를 사용하여 오류를 나타 내기를 선호합니다). 출력물은 실제로는 JSON이지 SOAP가 아니지만 asp.net 인프라의이 부분을 무시하는 경험이 없으므로 나를 지적 할 수있는 모든 것이 엄청난 도움이 될 것입니다. – Fred
I [this so answer] (https://stackoverflow.com/a/551532/521554)와 같은 HTTP 모듈이 설명됩니다. 나는 그것을 시험하지 않았다. – LosManos
- 1. 데이터베이스 모델의 예외는 어떻게 처리합니까?
- 2. 일반적인 SP는 관리 대상 SP가 던진 예외를 어떻게 처리합니까
- 3. DataGrid에서 행 사이를 두 번 클릭하여 발생하는 예외는 어떻게 처리합니까?
- 4. 던진 가치에 따라 어떻게 일을합니까?
- 5. 전역 예외는 어떻게 catch합니까?
- 6. 예외는
- 7. Java LinkageError 예외는 어떻게 수정합니까?
- 8. SwingUtilities.invokeAndWait에 의해 던진 예외에 대해 무엇을해야합니까?
- 9. 추적 예외는
- 10. asmx 웹 서비스가 요청을 한 번에 하나씩 처리하도록합니다.
- 11. Windows Server 2008에서 WSE asmx 웹 서비스가 지원됩니까?
- 12. ASMX 웹 서비스가 추상 기본 클래스를 직렬화하지 않습니다.
- 13. 엄청난 숫자는 어떻게 처리합니까?
- 14. Smalltalk는 monkeypatching을 어떻게 처리합니까?
- 15. 파이썬은 메모리를 어떻게 처리합니까?
- 16. pthread_mutex_unlock 실패를 어떻게 처리합니까?
- 17. 이미지를 어떻게 처리합니까?
- 18. "슈퍼"제네릭을 어떻게 처리합니까?
- 19. 디자인 변경은 어떻게 처리합니까?
- 20. NHibernate에서 동시성을 어떻게 처리합니까?
- 21. Subsonic은 어떻게 동시성을 처리합니까?
- 22. 배열 포인터는 어떻게 처리합니까?
- 23. 개발시 SSL을 어떻게 처리합니까?
- 24. 임시 파일을 어떻게 처리합니까?
- 25. 디스패처가 스레드를 어떻게 처리합니까?
- 26. 자선 기부금은 어떻게 처리합니까?
- 27. 이 경고는 어떻게 처리합니까?
- 28. 브라우저가 쿠키를 어떻게 처리합니까?
- 29. CouchDB는 데이터를 어떻게 처리합니까?
- 30. Android에서 커서를 어떻게 처리합니까?
WebMethods에서 시도해 보았습니까? – Kon