1
客戶端以xml文件發送50k個客戶。我使用Spring Batch's JaxBMarshaller並在Spring Batch作業中運行。如何跳過Spring批處理作業中包含在jaxb集合中的單個jaxb元素驗證?
Spring批處理作業獲取文件,進程和寫入。
問題是,它是全部或無驗證與jaxb。如果我有5萬個對象,並且只有2個對象未通過驗證,我仍然需要49,998個對象來處理業務。
有一個類,javax.xml.bind.ValidationEventHandler;您可以將其設置爲JaxBMarshaller,但它只返回true或false,並且不提供對編組對象的訪問。
我也加入了大塊閱讀器;錯誤仍然會拋出。
示例模式:
<xs:element name="CustomerLists">
<xs:complexType>
<xs:sequence>
<xs:element name="Customer" maxOccurs="unbounded" type="Customer"/>
</xs:sequence>
</xs:complexType>
</xs:element>
示例XML:
<a:CustomerLists xmlns:a="http://foo.com">
<a:Customer>
...
...
...
</a:Customer>
<a:Customer>
...
...
...
</a:Customer>
<a:Customer>
...
...
...
</a:Customer>
</a:CustomerLists>
建議?
event.getLocator()的getObject()返回NULL – pritam
@pritam - 在元帥或解組操作? –
它發生在解組 – pritam