8 Replies Latest reply on Oct 31, 2012 3:22 PM by alkaline1984

    Getting an error when trying to run "Create" from swis

    alkaline1984

      I'm running "Create" command from wsdl file using PHP SOAP interface.

       

      Here is my SOAP request:

      <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://schemas.solarwinds.com/2007/08/informationservice" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns2="http://schemas.solarwinds.com/2007/08/informationservice/propertybag">

          <SOAP-ENV:Body>

              <ns1:Create>

                  <ns1:entityType>Orion.Websites</ns1:entityType>

                  <ns1:properties>

                      <ns2:item>

                          <ns2:key xsi:type="xsd:string">WebsiteID</ns2:key>

                          <ns2:type xsi:type="xsd:string">System.Int32</ns2:type>

                          <ns2:value xsi:type="xsd:int">4</ns2:value>

                      </ns2:item>

                      <ns2:item>

                          <ns2:key xsi:type="xsd:string">ServerName</ns2:key>

                          <ns2:type xsi:type="xsd:string">System.String</ns2:type>

                          <ns2:value xsi:type="xsd:string">test.server.com</ns2:value>

                      </ns2:item>

                      <ns2:item>

                          <ns2:key xsi:type="xsd:string">IPAddress</ns2:key>

                          <ns2:type xsi:type="xsd:string">System.String</ns2:type>

                          <ns2:value xsi:type="xsd:string">127.0.0.1</ns2:value>

                      </ns2:item>

                      <ns2:item>

                          <ns2:key xsi:type="xsd:string">Port</ns2:key>

                          <ns2:type xsi:type="xsd:string">System.Int32</ns2:type>

                          <ns2:value xsi:type="xsd:int">443</ns2:value>

                      </ns2:item>

                      <ns2:item>

                          <ns2:key xsi:type="xsd:string">Type</ns2:key>

                          <ns2:type xsi:type="xsd:string">System.String</ns2:type>

                          <ns2:value xsi:type="xsd:string">additional</ns2:value>

                      </ns2:item>

                      <ns2:item>

                          <ns2:key xsi:type="xsd:string">SSLEnabled</ns2:key>

                          <ns2:type xsi:type="xsd:string">System.Int32</ns2:type>

                          <ns2:value xsi:type="xsd:int">1</ns2:value>

                      </ns2:item>

                      <ns2:item>

                          <ns2:key xsi:type="xsd:string">DisplayName</ns2:key>

                          <ns2:type xsi:type="xsd:string">System.String</ns2:type>

                          <ns2:value xsi:type="xsd:string">Test</ns2:value>

                      </ns2:item>

                      <ns2:item>

                          <ns2:key xsi:type="xsd:string">Description</ns2:key>

                          <ns2:type xsi:type="xsd:string">System.String</ns2:type>

                          <ns2:value xsi:type="xsd:string">Some test Website</ns2:value>

                      </ns2:item>

                      <ns2:item>

                          <ns2:key xsi:type="xsd:string">InstanceType</ns2:key>

                          <ns2:type xsi:type="xsd:string">System.Type</ns2:type>

                          <ns2:value xsi:type="xsd:string">Orion.Websites</ns2:value>

                      </ns2:item>

                      <ns2:item>

                          <ns2:key xsi:type="xsd:string">Uri</ns2:key>

                          <ns2:type xsi:type="xsd:string">System.Uri</ns2:type>

                          <ns2:value xsi:type="xsd:string">swis://SSBOSSW1.OS.COM/Orion/Orion.Websites/WebsiteID=1</ns2:value>

                      </ns2:item>

                  </ns1:properties>

              </ns1:Create>

          </SOAP-ENV:Body>

      </SOAP-ENV:Envelope>

       

      And here is the error I get:

      There was an error while trying to deserialize parameter http://schemas.solarwinds.com/2007/08/informationservice:properties. Please see InnerException for more details.The specified type is abstract: name='Type', namespace='', at <Type xmlns=''>. at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderType.Read3_Type(Boolean isNullable, Boolean checkType) at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderType.Read4_Type()System.InvalidOperationExceptionThere is an error in XML document (1, 2). at System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events) at System.Xml.Serialization.XmlSerializer.Deserialize(TextReader textReader) at SolarWinds.InformationService.Serialization.XmlStrippedSerializer.DeserializeFromStrippedXml(String strippedXml) at SolarWinds.InformationService.Addons.PropertyBag.ReadXml(XmlReader reader) at System.Runtime.Serialization.XmlObjectSerializerReadContext.ReadIXmlSerializable(XmlSerializableReader xmlSerializableReader, XmlReaderDelegator xmlReader, XmlDataContract xmlDataContract, Boolean isMemberType) at System.Runtime.Serialization.XmlDataContract.ReadXmlValue(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context) at System.Runtime.Serialization.XmlObjectSerializerReadContext.ReadDataContractValue(DataContract dataContract, XmlReaderDelegator reader) at System.Runtime.Serialization.XmlObjectSerializerReadContext.InternalDeserialize(XmlReaderDelegator reader, String name, String ns, Type declaredType, DataContract& dataContract) at System.Runtime.Serialization.XmlObjectSerializerReadContext.InternalDeserialize(XmlReaderDelegator xmlReader, Type declaredType, DataContract dataContract, String name, String ns) at System.Runtime.Serialization.DataContractSerializer.InternalReadObject(XmlReaderDelegator xmlReader, Boolean verifyObjectName, DataContractResolver dataContractResolver) at System.Runtime.Serialization.XmlObjectSerializer.ReadObjectHandleExceptions(XmlReaderDelegator reader, Boolean verifyObjectName, DataContractResolver dataContractResolver) at System.Runtime.Serialization.DataContractSerializer.ReadObject(XmlDictionaryReader reader, Boolean verifyObjectName) at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.DeserializeParameterPart(XmlDictionaryReader reader, PartInfo part, Boolean isRequest)System.InvalidOperationExceptionThere was an error while trying to deserialize parameter http://schemas.solarwinds.com/2007/08/informationservice:properties. Please see InnerException for more details. at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.DeserializeParameterPart(XmlDictionaryReader reader, PartInfo part, Boolean isRequest) at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.DeserializeParameter(XmlDictionaryReader reader, PartInfo part, Boolean isRequest) at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.DeserializeParameters(XmlDictionaryReader reader, PartInfo[] parts, Object[] parameters, Boolean isRequest) at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.DeserializeBody(XmlDictionaryReader reader, MessageVersion version, String action, MessageDescription messageDescription, Object[] parameters, Boolean isRequest) at System.ServiceModel.Dispatcher.OperationFormatter.DeserializeBodyContents(Message message, Object[] parameters, Boolean isRequest) at System.ServiceModel.Dispatcher.OperationFormatter.DeserializeRequest(Message message, Object[] parameters) at System.ServiceModel.Dispatcher.DispatchOperationRuntime.DeserializeInputs(MessageRpc& rpc) at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage41(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage4(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage3(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage2(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage1(MessageRpc& rpc) at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)System.InvalidOperationException

       

      I've already specified the type for the "type" element, which is xsi:type="xsd:string". Don't know why do I still get this error. Can someone please point me in the right direction? Thank you!