Выброшено настраиваемое исключение FaultException WCF, но исключение протокола получено клиентом

У меня есть служба WCF, которая закодирована для создания исключения Custom FaultException при определенных условиях. При размещении локально и на нескольких серверах это выполняется, как ожидалось, настраиваемая ошибка, вызванная настраиваемой ошибкой службы, обнаруженной клиентом, но на производственном сервере и сервере UAT настраиваемая ошибка возникает из-за того, что клиент получает исключение протокола (ошибка 500).

Кто-нибудь знает о настройках IIS или сервера, которые могут влиять на этот сервер WCF? Эта проблема сводит меня с ума


person Joe Murphy    schedule 29.06.2013    source источник
comment
Я не знаю ответа на вашу конкретную проблему, но при работе с WCF я обнаружил ведение журнала и отслеживание сообщений, чтобы стать бесценным инструментом для отслеживания подобных проблем.   -  person 500 - Internal Server Error    schedule 30.06.2013
comment
Вы читали это: stackoverflow.com/questions/5022675/   -  person Ilkka    schedule 30.06.2013
comment
После добавления регистрации и трассировки сообщений я вижу, что сервер работает, после отправки сообщения по каналу я вижу, что сообщение было закрыто. На сервере, который не работает, я не вижу записи A message was closed. Есть мысли по этому поводу?   -  person Joe Murphy    schedule 30.06.2013


Ответы (1)


У меня аналогичная проблема,

наш сервер использует стороннюю веб-службу, когда клиент подключается к нашему серверу с той же машины, наш сервер может перехватить исключение сбоя, но если клиент подключается по сети, наш сервер не может обработать исключение сбоя, и получает только «500 Internal Server Error».

Я использовал сниффер для просмотра входящих данных, и я вижу, что веб-сервис отправляет исключение сбоя в обоих случаях, это сторонний веб-сервис, поэтому я не могу его контролировать.

клиенты используют .Net Remotting для подключения к серверу.

Решение:

добавить RemotingConfiguration.CustomErrorsMode = CustomErrorsModes. Выкл.; к серверу удаленного взаимодействия, по какой-то причине он влияет на исключения, которые он (сервер) получает. это не идеальное решение, потому что теперь мы выставляем исключения на наших серверах ...

person Doron    schedule 01.04.2014
comment
Это не совсем ответ на вопрос. Если у вас есть другой вопрос, вы можете задать его, нажав Задать вопрос. Вы также можете добавить вознаграждение, чтобы привлечь больше внимания к этому вопросу, когда у вас будет достаточно reputation. - person C Travel; 02.04.2014
comment
Это не дает ответа на вопрос. Чтобы критиковать или запрашивать разъяснения у автора, оставьте комментарий под его сообщением - вы всегда можете комментировать свои собственные сообщения, и как только у вас будет достаточно репутации, вы сможете комментировать любое сообщение. - person DHN; 02.04.2014