を私は(例えば)を含むスキーマを持っている...のxsi:XS以内に解析されたときはnilが検証に失敗した:任意の
<xsd:complexType name="mytype">
<xsd:sequence>
<xsd:any maxOccurs="unbounded" processContents="skip"/>
</xsd:sequence>
</xsd:complexType>
...と、この要素を含むいくつかのXML ...
<MYELEMENT xmlns = "http://www.mynamespace.co.uk/types" xsi:nil = "true"/>
...「mytype」を返すSOAPコールがあります。私は上記を含むXMLを取り戻すとき、私は次のエラーを取得する:
caused by: org.xml.sax.SAXException: validation error: #cvc-elt.3.1 Element "{http://www.mynamespace.co.uk/types}MYELEMENT" is not nillable. ({com.tibco.xml.validation}COMPLEX_E_ELEMENT_NOT_NILLABLE)
これは、TIBCO 5.5デザイナー内で実行されるSOAP呼び出しです。私はTIBCOが世界で最も知られたツールではないことを理解しています。私が本当にこの質問から抜け出したいのは、エラーが期待される動作かどうか(要素に定義された名前空間があるためでしょうか?)です。
私はprocessContents="skip"
が何かを許可するべきだと思ったでしょうか?
情報を入力するだけで、名前空間http://www.mynamespace.co.uk/typesをSOAP受信者が利用できるようになります。 nillable="true"
の有無にかかわらず、スキーマに「MYELEMENT」が定義されているかどうかにかかわらず、このエラーが発生します。私は顧客からXMLを受け取っているため、MYELEMENTからxsi:nil = "true"を削除することはできません。
おそらくMYELEMENTのタイプはhttp://www.mynamespace.co.uk/types:mytypeですか?完全なスキーマとインスタンスを投稿できますか? – kennethmay
私はその動作がエラーにならないことを検証しました。スキーマの名前が指定されていても、MYLLEMENTがスキーマ内にあるかどうかは気にしないでください。問題はTIBCOの問題です。 – Erad
実際に私が言っておくべきことは、MYELEMENTの親は "mytype"型でなければならないということです。 – kennethmay