SIF_Error not populated when received by ADK in SIF_Response

Bug #873253 reported by Matt Stevenson
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Open ADK for C#/.NET
New
Undecided
Unassigned

Bug Description

ADK version: 2.3.0.4

When the SIF_Response contains a SIF_Error, this is not populated when the OnQueryResults() method is called by the ADK.

Instead, the following is found in the log files:

"SIFException in QueryResults message handler for SIF_Response" - this message is logged by the ADK. In the agent code, the exception is caught and the message is as follows:

"SIF_Response missing mandatory element: [Category=1; Code=6] SIF_Response missing mandatory element. SIF_ObjectData is a required element of SIF_Response"

As far as I can tell the message is valid (see below), as according to the specification, a SIF_Response can contain either SIF_ObjectData, or SIF_Error.

Example messages:

Request:

<SIF_Message Version="2.0r1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.sifinfo.org/uk/infrastructure/2.x">
 <SIF_Request>
  <SIF_Header>
   <SIF_MsgId>4062D4957B9246F5824A6B934FEE1363</SIF_MsgId>
   <SIF_Timestamp>2011-10-12T18:15:39.45425Z</SIF_Timestamp>
   <SIF_Security>
    <SIF_SecureChannel>
     <SIF_AuthenticationLevel>0</SIF_AuthenticationLevel>
     <SIF_EncryptionLevel>0</SIF_EncryptionLevel>
    </SIF_SecureChannel>
   </SIF_Security>
   <SIF_SourceId>GSIF</SIF_SourceId>
   <SIF_Contexts>
    <SIF_Context>SIF_Default</SIF_Context>
   </SIF_Contexts>
  </SIF_Header>
  <SIF_Version>2.*</SIF_Version>
  <SIF_MaxBufferSize>393216</SIF_MaxBufferSize>
  <SIF_Query>
   <SIF_QueryObject ObjectName="LearnerPersonal" />
  </SIF_Query>
 </SIF_Request>
</SIF_Message>

Response:

<SIF_Message Version="2.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.sifinfo.org/uk/infrastructure/2.x">
 <SIF_Response>
  <SIF_Header>
   <SIF_MsgId>E47C68796CD14855BD65F1B7BB407FFD</SIF_MsgId>
   <SIF_Timestamp>2011-10-12T18:17:26.0768512Z</SIF_Timestamp>
   <SIF_Security>
    <SIF_SecureChannel>
     <SIF_AuthenticationLevel>0</SIF_AuthenticationLevel>
     <SIF_EncryptionLevel>0</SIF_EncryptionLevel>
    </SIF_SecureChannel>
   </SIF_Security>
   <SIF_SourceId>Groupcall</SIF_SourceId>
   <SIF_DestinationId>GSIF</SIF_DestinationId>
  </SIF_Header>
  <SIF_RequestMsgId>4062D4957B9246F5824A6B934FEE1363</SIF_RequestMsgId>
  <SIF_PacketNumber>1</SIF_PacketNumber>
  <SIF_MorePackets>No</SIF_MorePackets>
  <SIF_Error>
   <SIF_Category>12</SIF_Category>
   <SIF_Code>1</SIF_Code>
   <SIF_Desc>Agent could not process the SIF_Request at this time</SIF_Desc>
   <SIF_ExtendedDesc>Exception in Publisher.onRequest message handler: Groupcall.Xporter.Client.XporterClientException: Job (Sif-Request) Failed EGCSqlException:(EGCSimsNetAppDomainException) COM Error: (80131604) Source: mscorlib, Desc: Exception has been thrown by the target of an invocation. in the following ---- SELECT * FROM gcx_sif_schoolinfo ---- at Groupcall.Xporter.Client.Objects.Jobs.RunAndWait(JobsJob theJob, IDictionary`2 jobParams, TimeSpan timeout) at Groupcall.Sif.Agent.XporterHandler.CheckUptoDate(IZone zone, Query query, SifMessageInfo info) at Groupcall.Sif.Agent.XporterHandler.OnRequest(IDataObjectOutputStream outStream, Query query, IZone zone, IMessageInfo info) at Edustructures.SifWorks.Impl.MessageDispatcher.dispatchRequest(SIF_Request req)</SIF_ExtendedDesc>
  </SIF_Error>
 </SIF_Response>
</SIF_Message>

Revision history for this message
Jason Lauman (jason-lauman) wrote :

I've added this to our internal defect tracking system and it will scheduled for an upcoming sprint.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.