search cancel

Error when trying to get a list of Locations or Departments

book

Article ID: 172998

calendar_today

Updated On:

Products

ServiceDesk

Issue/Introduction

When trying to get a list of Locations or Departments from Symantec Management Platform (SMP) it fails with the error message below in SD.DataServices logs. Due to this error, certain high-impact forms in ServiceDesk may not function properly. Forms will remain empty or throw an Application Error after a while. Logs will contain many instances of the error message below. The forms commonly affected are for example (but not limited to):

  • Submit Incident
  • Work Incident
  • Edit Incident

This issue can occur after ServiceDesk 8.x installation or upgrade to ServiceDesk 8.x.

Location Search failed with the following: could not deserialize: LogicBase.Core.IOrchestrationComponent[]
    LogicBase.Framework.ObjectDeserializationError: could not deserialize: LogicBase.Core.IOrchestrationComponent[] ---> System.Exception: could not find type Altiris7.WebServices.Item.GetItemsByNameAndTypeComponent
    at LogicBase.Framework.ArrayTypeConverter.GetObject(ObjectStorageContainer container, ObjectStorageObjectData values, Type arrayType, ObjectStorageErrorHandler errorHandler)
    at LogicBase.Framework.ObjectReadStream.ReadRelationshipConverter(ObjectStorageValue objValue, Type type, ObjectStorageRelationshipTypeConverter converter)
    --- End of inner exception stack trace ---
    at LogicBase.Framework.ObjectReadStream.ReadRelationshipConverter(ObjectStorageValue objValue, Type type, ObjectStorageRelationshipTypeConverter converter)
    at LogicBase.Framework.ObjectReadStream.GetValue[T](String name)
    at LogicBase.Core.Models.AbstractComponentModel.ReadFromStream(ObjectReadStream info)
    at LogicBase.Framework.ObjectStorage.ContainerDeserialize(ObjectStorageContext context, ObjectStorageContainer container)
    at LogicBase.Framework.ObjectStorage.ZipDeserialize(ObjectStorageContext context, Stream stream)
    at LogicBase.Framework.ObjectStorage.Deserialize(FileInfo fromFile)
    at LogicBase.Core.AbstractOrchestrationProject.GetComponentModelPrivate(Model model, Type componentModelType)
    at LogicBase.Core.AbstractOrchestrationProject.GetComponentModel(Model model)
    at LogicBase.Core.ExecutionEngine.EndComponentExecutionDelegate.Execute(IData data, IOrchestrationComponent component, String& outputPath, IExecutionEngine engine, TLExecutionContext context)
    at LogicBase.Core.ExecutionEngine.AbstractExecutionEngine.RunComponent(TLExecutionContext context, IData data, IOrchestrationComponent comp)

Cause

Get Items By Name And Type Component (used in SD.DataServices project) does not exist on the server - more specifically this library: Symantec.Components.Generated7.Altiris.ASDK

The error message is specific to this exact problem. However, the cause can be verified by creating a Workflow project and trying to find this component by name (Get Items By Name And Type Component). You should also be able to navigate to it in components tree: Symantec > SMP 7 > Web Services > Item > Get Items By Name And Type Component

Environment

ServiceDesk 8.0
ServiceDesk 8.1
ServiceDesk 8.5

Resolution

Symantec.Components.Generated7.Altiris.ASDK library deals with SMP integration and can be (re)generated by a project of the same name.

  1. Start Workflow Manager
  2. File > Open Project... > Symantec.Components.Generated7.Altiris.ASDK > Symantec.Components.Generated7.Altiris.ASDK.project
  3. Select Adjust definitions, make sure the correct SMP is selected and click Next >
  4. Make sure ItemManagementService - GetItemsByNameAndTypeComponent is checked
  5. Click Finish
  6. Click Recompile and close
  7. Restart both IIS and Symantec Workflow Service