искали на Google/различных других сайтах в течение некоторого времени ...axis2/C: неправильный тип элемента или нулевой узел (om_element.c)
Синопсис: Невозможно сериализовать/объект Deserialize, неправильно тип элемента или нулевой узел (om_element.c).
Сгенерированный код:
xsi_type_attri = axiom_attribute_create (env, "type", "LocomotiveInformationTransaction", xsi_ns);
//The following line results in ERROR:
axiom_element_add_attribute (parent_element, env, xsi_type_attri, parent);
Ошибка (от wlis.log)
[error] om_element.c(283) Wrong element type or null node
часть файла WSDL:
<?xml version="1.0" encoding="UTF-8"?>
<!-Created by TIBCO WSDL->
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:ns0="http://www.nscorp.com" xmlns:tns="http://www.nscorp.com" xmlns:ns1="java:com.nscorp.wlis.locoinfo" name="Untitled" targetNamespace="http://www.nscorp.com">
<wsdl:types>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.nscorp.com" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="java:com.nscorp.wlis.locoinfo"/>
<xs:element name="UpdateLocoStatus" nillable="true" type="ns1:LocomotiveInformationTransaction"/>
<xs:element name="UpdateLocoStatusResponse" nillable="true" type="ns1:LocomotiveResponse"/>
<xs:element name="isAliveResponse" nillable="true" type="xs:string"/>
</xs:schema>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:stns="java:com.nscorp.wlis.locoinfo" xmlns="java:com.nscorp.wlis.locoinfo" targetNamespace="java:com.nscorp.wlis.locoinfo" elementFormDefault="qualified" attributeFormDefault="qualified">
<xsd:complexType name="ArrayOfCondition">
<xsd:sequence>
<xsd:element name="Condition" nillable="true" type="stns:Condition" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
Единственное, что я мог видеть, это было пространство имен, которое было . В этом случае это выглядело (после прохождения кода и множества операторов журнала отладки) он использовал по умолчанию пространство имен xsi . Пробовал жесткое кодирование «ns1» как пространство имен для LocomotiveInformationTransaction, но это не решило проблему.
Пожалуйста, дайте мне знать, если вам нужна дополнительная информация.
Спасибо за ответ. Я сейчас посмотрю на это. – user1798810