Tôi đang cố gắng phân tích cú pháp một số XML với EclipseLink MOXy và nó không hoạt động trên đường với thuộc tính xsi
. Nếu tôi loại bỏ điều này, nó phân tích tốt. Tuy nhiên, tôi đã có 100GiB XML để lội qua và thay đổi các tệp nguồn không phải là một tùy chọn.Cách đặt không gian tên nhận biết sai?
Được đề nghị rằng nếu tôi có thể đặt XmlParser.setNamespaceAware(false)
thì nó sẽ hoạt động - nhưng tôi không biết cách cấu hình cái này, mà không phá vỡ ngay vào ruột của MOXy.
<record>
<header>
<!-- citation-id: 14404534; type: journal_article; -->
<identifier>info:doi/10.1007/s10973-004-0435-2</identifier>
<datestamp>2009-04-28</datestamp>
<setSpec>J</setSpec>
<setSpec>J:1007</setSpec>
<setSpec>J:1007:2777</setSpec>
</header>
<metadata>
<crossref xmlns="http://www.crossref.org/xschema/1.0"
xsi:schemaLocation="http://www.crossref.org/xschema/1.0 http://www.crossref.org/schema/unixref1.0.xsd">
<journal>
<journal_metadata language="en">
[...]
Trường hợp ngoại lệ khi tôi nhận được tiền tố xsi:
là hiện nay là:
org.springframework.oxm.UnmarshallingFailureException: JAXB unmarshalling exception; nested exception is javax.xml.bind.UnmarshalException
- with linked exception:
[Exception [EclipseLink-25004] (Eclipse Persistence Services - 2.4.0.v20120608-r11652): org.eclipse.persistence.exceptions.XMLMarshalException
Exception Description: An error occurred unmarshalling the document
Internal Exception: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[13,107]
Message: http://www.w3.org/TR/1999/REC-xml-names-19990114#AttributePrefixUnbound?crossref&xsi:schemaLocation&xsi]
Sự cố ban đầu bạn đang gặp phải là gì? –
@BlaiseDoughan được cập nhật. Thực sự hy vọng bạn có thể giúp :) –
Trong trường hợp sử dụng của bạn, bạn có thể thêm khai báo 'xmlns: xsi' cần thiết không? Chỉ cần kiểm tra trước khi chúng ta đi sâu vào các tùy chọn thay thế. –