Ответ IIS на ошибку 500 после запроса сообщения SOAP (модуль ISAPI) - PullRequest
0 голосов
/ 21 декабря 2011

Здравствуйте, когда я пытаюсь запросить мою веб-службу, развернутую на IIS, я получаю ответ:

HTTP/1.1 500 Internal Server Error
Cache-Control: private
Content-Type: application/soap+xml; charset=utf-8
Server: Microsoft-IIS/7.5
X-AspNet-Version: 2.0.50727
X-Powered-By: ASP.NET
Date: Wed, 21 Dec 2011 12:53:36 GMT
Connection: close

Я настроил Failed Request Tracer для любых модулей, и я надеюсь получить подробные ошибки с помощью stacktrace, но я получил толькоэто:

....

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
 <System>
  <Provider Name="ASPNET" Guid="{AFF081FE-0247-4275-9C4E-021F3DC1DA35}"/>
  <EventID>0</EventID>
  <Version>0</Version>
  <Level>5</Level>
  <Opcode>11</Opcode>
  <Keywords>0x2</Keywords>
  <TimeCreated SystemTime="2011-12-21T12:53:36.787Z"/>
  <Correlation ActivityID="{00000000-0000-0000-0200-0080000000FB}"/>
  <Execution ProcessID="4280" ThreadID="4952"/>
  <Computer>LOBASTOV-A</Computer>
 </System>
 <EventData>
  <Data Name="ConnID">20313736</Data>
  <Data Name="Context ID">{00000000-0000-0000-0200-0080000000FB}</Data>
  <Data Name="Data1">System.Web.Caching.OutputCacheModule</Data>
 </EventData>
 <RenderingInfo Culture="ru-RU">
  <Opcode>AspNetPipelineLeave</Opcode>
  <Keywords>
   <Keyword>Module</Keyword>
  </Keywords>
 </RenderingInfo>
 <ExtendedTracingInfo xmlns="http://schemas.microsoft.com/win/2004/08/events/trace">
  <EventGuid>{06A01367-79D3-4594-8EB3-C721603C4679}</EventGuid>
 </ExtendedTracingInfo>
</Event>
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
 <System>
  <Provider Name="ASPNET" Guid="{AFF081FE-0247-4275-9C4E-021F3DC1DA35}"/>
  <EventID>0</EventID>
  <Version>0</Version>
  <Level>5</Level>
  <Opcode>12</Opcode>
  <Keywords>0x1</Keywords>
  <TimeCreated SystemTime="2011-12-21T12:53:36.787Z"/>
  <Correlation ActivityID="{00000000-0000-0000-0200-0080000000FB}"/>
  <Execution ProcessID="4280" ThreadID="4952"/>
  <Computer>LOBASTOV-A</Computer>
 </System>
 <EventData>
  <Data Name="ConnID">20313736</Data>
  <Data Name="Context ID">{00000000-0000-0000-0200-0080000000FB}</Data>
 </EventData>
 <RenderingInfo Culture="ru-RU">
  <Opcode>AspNetMapHandlerEnter</Opcode>
  <Keywords>
   <Keyword>Infrastructure</Keyword>
  </Keywords>
 </RenderingInfo>
 <ExtendedTracingInfo xmlns="http://schemas.microsoft.com/win/2004/08/events/trace">
  <EventGuid>{06A01367-79D3-4594-8EB3-C721603C4679}</EventGuid>
 </ExtendedTracingInfo>
</Event>
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
 <System>
  <Provider Name="WWW Server" Guid="{3A2A4E84-4C21-4981-AE10-3FDA0D9B0F83}"/>
  <EventID>0</EventID>
  <Version>1</Version>
  <Level>3</Level>
  <Opcode>16</Opcode>
  <Keywords>0x100</Keywords>
  <TimeCreated SystemTime="2011-12-21T12:53:36.896Z"/>
  <Correlation ActivityID="{00000000-0000-0000-0200-0080000000FB}"/>
  <Execution ProcessID="4280" ThreadID="4952"/>
  <Computer>LOBASTOV-A</Computer>
 </System>
 <EventData>
  <Data Name="ContextId">{00000000-0000-0000-0200-0080000000FB}</Data>
  <Data Name="ModuleName">IsapiModule</Data>
  <Data Name="Notification">128</Data>
  <Data Name="HttpStatus">500</Data>
  <Data Name="HttpReason">Internal Server Error</Data>
  <Data Name="HttpSubStatus">0</Data>
  <Data Name="ErrorCode">0</Data>
  <Data Name="ConfigExceptionInfo"></Data>
 </EventData>
 <RenderingInfo Culture="ru-RU">
  <Opcode>MODULE_SET_RESPONSE_ERROR_STATUS</Opcode>
  <Keywords>
   <Keyword>RequestNotifications</Keyword>
  </Keywords>
  <freb:Description Data="Notification">EXECUTE_REQUEST_HANDLER</freb:Description>
  <freb:Description Data="ErrorCode">Операция успешно завершена.
 (0x0)</freb:Description>
 </RenderingInfo>
 <ExtendedTracingInfo xmlns="http://schemas.microsoft.com/win/2004/08/events/trace">
  <EventGuid>{002E91E3-E7AE-44AB-8E07-99230FFA6ADE}</EventGuid>
 </ExtendedTracingInfo>
</Event>
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
 <System>
  <Provider Name="WWW Server" Guid="{3A2A4E84-4C21-4981-AE10-3FDA0D9B0F83}"/>
  <EventID>0</EventID>
  <Version>1</Version>
  <Level>5</Level>
  <Opcode>1</Opcode>
  <Keywords>0x100</Keywords>
  <TimeCreated SystemTime="2011-12-21T12:53:36.896Z"/>
  <Correlation ActivityID="{00000000-0000-0000-0200-0080000000FB}"/>
  <Execution ProcessID="4280" ThreadID="4952"/>
  <Computer>LOBASTOV-A</Computer>
 </System>
 <EventData>
  <Data Name="ContextId">{00000000-0000-0000-0200-0080000000FB}</Data>
  <Data Name="ModuleName">WindowsAuthenticationModule</Data>
  <Data Name="Notification">536870912</Data>
  <Data Name="fIsPostNotification">false</Data>
 </EventData>
 <RenderingInfo Culture="ru-RU">
  <Opcode>NOTIFY_MODULE_START</Opcode>
  <Keywords>
   <Keyword>RequestNotifications</Keyword>
  </Keywords>
  <freb:Description Data="Notification">SEND_RESPONSE</freb:Description>
 </RenderingInfo>
 <ExtendedTracingInfo xmlns="http://schemas.microsoft.com/win/2004/08/events/trace">
  <EventGuid>{002E91E3-E7AE-44AB-8E07-99230FFA6ADE}</EventGuid>
 </ExtendedTracingInfo>
</Event>

....

А вот мой SOAP запрос:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <ns2:updateBill xmlns:ns2="http://client.ishop.mw.ru/">
      <login>test</login>
      <password>test</password>
      <txn>test</txn>
      <status>1</status>
    </ns2:updateBill>
  </soap:Body>
</soap:Envelope>

Может кто-нибудь помочь мнечтобы понять что такое wrang?Или сказать, как получить подробные ошибки с помощью stacktrace?

Ответы [ 2 ]

0 голосов
/ 22 декабря 2011

Пожалуйста, рассмотрите это как ошибку уровня SOAP (поскольку это не обычный IIS 500). Подробно прочтите протокол SOAP, и вы увидите, в чем причина,

http://www.w3.org/TR/2007/REC-soap12-part0-20070427/

http://www.w3.org/TR/2007/REC-soap12-part2-20070427/

Я предполагаю, что серверное приложение не может обрабатывать запросы SOAP.

0 голосов
/ 22 декабря 2011

Ошибка 0x80070005 означает ERROR_ACCESS_DENIED.Папка Roaming содержит файл конфигурации безопасности CLR.Попробуйте проверить, имеет ли учетная запись, под которой работает служба, разрешение администратора (это также должно разрешить доступ к папке «Временные файлы Интернета»).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...