首页 > 解决方案 > 服务器引发错误:“在反序列化操作“发布”的请求消息正文时出错

问题描述

我在反序列化 XML 时收到以下错误,错误显示 - 2019-08-27 18:49:01 错误 [+0000013560 SchedulerWorker-32]: Publish to xxx failed for Vessel loading for ship: 1234, 错误是:服务器引发的错误:“反序列化操作“发布”的请求消息正文时出错。

我尝试使用 WCFTESTCLIENT 发送一些数据,它工作正常,然后我再次检查了给出错误的 xml。

有一个没有打开标签的日期字段,这可能是问题的原因吗?

附上xml以及错误。

2019-08-27 18:49:01 ERROR [+0000013560 SchedulerWorker-32]: 
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:ns0="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.thy.com/enterprise/integration/framework/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <ns0:Body>
      <ns1:Publish>
         <ns1:message>
            <ns1:CargoRelated>
               <ns1:Date>2019-08-27T21:17:39.240000-06:00</ns1:Date>
               <ns1:Cargo_Number>abc-19-0021-TOT</ns1:Cargo_Number>
               <ns1:CreatedBy>Sammy</ns1:CreatedBy>
            </ns1:CargoRelated>
            <ns1:CargoTimeSheet>
               <ns1:Activities>
                  <ns1:Activity>
                     <ns1:Activity_Code>01_LNG_PI_CLUB</ns1:Activity_Code>
                     <ns1:Activity_Timestamp>2019-08-27T20:55:20</ns1:Activity_Timestamp>
                     <ns1:CreatedBy>Sammy</ns1:CreatedBy>
                  </ns1:Activity>
                  <ns1:Activity>
                     <ns1:Activity_Code>02_LNG_AEOSP</ns1:Activity_Code>
                     <ns1:Activity_Timestamp>2019-08-27T20:55:11</ns1:Activity_Timestamp>
                     <ns1:CreatedBy>Sammy</ns1:CreatedBy>
                  </ns1:Activity>
               </ns1:Activities>
            </ns1:CargoTimeSheet>
            <ns1:CargoDelayRelated>
               <ns1:Delays>
                  <ns1:Delay>
                     <ns1:Delay_Start_Time>2019-08-27T21:15:38</ns1:Delay_Start_Time>
                     <ns1:Delay_End_time/>
                     <ns1:Delay_Code>TERMINAL_READINESS</ns1:Delay_Code>
                     <ns1:Delay_Type>INWARD_DELAY</ns1:Delay_Type>
                     <ns1:CreatedBy>Sammy</ns1:CreatedBy>
                     <ns1:Originator>Vessel</ns1:Originator>
                  </ns1:Delay>
                  <ns1:Delay>
                     <ns1:Delay_Start_Time>2019-08-27T21:15:54</ns1:Delay_Start_Time>
                     <ns1:Delay_End_time>2019-08-27T21:15:56</ns1:Delay_End_time>
                     <ns1:Delay_Code>OTHER</ns1:Delay_Code>
                     <ns1:Delay_Type>OUTWARD_DELAY</ns1:Delay_Type>
                     <ns1:CreatedBy>Sammy</ns1:CreatedBy>
                     <ns1:Originator>Vessel</ns1:Originator>
                  </ns1:Delay>
               </ns1:Delays>
            </ns1:CargoDelayRelated>
         </ns1:message>
      </ns1:Publish>
   </ns0:Body>
</SOAP-ENV:Envelope>
2019-08-27 18:49:01 ERROR [+0000013560 SchedulerWorker-32]: Publish to xxx failed for Vessel loading for vessel: 1234, 
error is: Server raised fault: 'Error in deserializing body of request message for operation 'Publish'.'
2019-08-27 18:49:01 INFO [+0000013560 SchedulerWorker-32]: Traceback (most recent call last):
  File "j5_CLNG_Project\ProductMovements\VesselLoadingService.py", line 233, in publish
  File "j5_CLNG_Project\ProductMovements\WebserviceTools.py", line 209, in publish
  File "C:\Program Files (x86)\j5\framework\python\lib\site-packages\suds\client.py", line 542, in __call__
  File "C:\Program Files (x86)\j5\framework\python\lib\site-packages\suds\client.py", line 602, in invoke
  File "C:\Program Files (x86)\j5\framework\python\lib\site-packages\suds\client.py", line 649, in send
  File "C:\Program Files (x86)\j5\framework\python\lib\site-packages\suds\client.py", line 702, in failed
  File "C:\Program Files (x86)\j5\framework\python\lib\site-packages\suds\bindings\binding.py", line 265, in get_fault
WebFault: Server raised fault: 'Error in deserializing body of request message for operation 'Publish'.'

标签: c#wcfserializationdeserialization

解决方案


推荐阅读