Вызов Python Zeep wsdl, дающий невозможность привести объект типа «System.Xml.XmlNode[]» к типу «System.IConvertible»Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Вызов Python Zeep wsdl, дающий невозможность привести объект типа «System.Xml.XmlNode[]» к типу «System.IConvertible»

Сообщение Anonymous »

Я получаю сообщение об ошибке «Невозможно привести объект типа «System.Xml.XmlNode[]» к типу «System.IConvertible».» с помощью приведенного ниже вызова веб-сервиса (python 3.6/Zeep Client). Проблема в том, что req_opt_doc_item1 и req_opt_doc_item2 не могут быть оценены с помощью «Val». Без него вызов будет успешным, хотя я не смогу получить желаемые результаты. Оба являются целочисленными типами согласно wsdl. Я думаю, что это не связано с типом данных, но req_opt_doc_item1 и req_opt_doc_item2 не могут быть переданы как массив с двумя элементами в них.
Что мне здесь не хватает?

Код: Выделить всё

def load_documents(doc_id):
try:

cws_req_doc_info_id = {
'CWS_REQ_DOC_INFO_ID': ['DocTitle', 'DocDelTstamp', 'DocContent'],
}

req_doc_info = {
'DocId': doc_id,
'ReqInfo': cws_req_doc_info_id,
}

req_opt_doc_item1 = {
'Id': 'OutputFormat',
'Val': 3,
}

req_opt_doc_item2 = {
'Id': 'LoadDDocType',
'Val': 0,
}

cws_req_opt_doc_item = {
'CwsReqOptDocItem': [req_opt_doc_item1, req_opt_doc_item2]
}

# Prepare the ReqOptDoc data
req_opt_doc = {
'Options': cws_req_opt_doc_item
}

# Construct the request payload
load_doc_contents = {
'UserCredential': user_credential,
'ReqDocInfo': req_doc_info,
'ReqOptDoc': req_opt_doc
}

# print(load_doc_contents)

response = client.service.LoadDocContents(**load_doc_contents)
return response

except Exception as wsdl_err:
cyp.write_log_file(True, True, email_id, this_script_name, str(wsdl_err) + '\n')
exit(-1)
Вызывается с помощью ниже

Код: Выделить всё

    {
"UserCredential":{
"CredentialType":"UserIdPassword",
"DomainName":"XXXXXXX",
"UserName":"XXXXX",
"Password":"XXXXX",
"CypWsUserId":"",
"CredentialData":""
},
"ReqDocInfo":{
"DocId":"13930063  ",
"ReqInfo":{
"CWS_REQ_DOC_INFO_ID":[
"DocTitle",
"DocDelTstamp",
"DocContent"
]
}
},
"ReqOptDoc":{
"Options":{
"CwsReqOptDocItem":[
{
"Id":"OutputFormat",
"Val":3
},
{
"Id":"LoadDDocType",
"Val":0
}
]
}
}
}
Попытка инициировать вызов веб-службы, чтобы получить ответ от сервера. В сообщении запроса возникла проблема с приведением типов.

Подробнее здесь: https://stackoverflow.com/questions/791 ... ml-xmlnode
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»