我有一個JMS消息傳遞應用程序讀取和寫入MQ隊列。消息數據是字符串格式和xml格式(減去像xml版本等常規標題標記)。我正在尋找讀入,寫出和驗證xsd模式的最佳方法,但是所有關於處理文件的例子都會談到。Jaxp XML解析和驗證,而不寫入文件
是否有任何方法(教程那裏)採取一個XML字符串;讀取它並對其進行驗證,並對xml字符串執行相同的操作(無需寫入磁盤即可創建驗證並寫出)?
將不勝感激任何指針。
我有一個JMS消息傳遞應用程序讀取和寫入MQ隊列。消息數據是字符串格式和xml格式(減去像xml版本等常規標題標記)。我正在尋找讀入,寫出和驗證xsd模式的最佳方法,但是所有關於處理文件的例子都會談到。Jaxp XML解析和驗證,而不寫入文件
是否有任何方法(教程那裏)採取一個XML字符串;讀取它並對其進行驗證,並對xml字符串執行相同的操作(無需寫入磁盤即可創建驗證並寫出)?
將不勝感激任何指針。
退房在Java SE的javax.xml.validation中的API,特別是用來驗證對XML架構的XML內容Validator類:
用一個StringReader在字符串上,將閱讀器傳遞給JAXB方法來讀取內容。
謝謝大家我設法將以下內容排序。
馬歇爾:
的JAXBContext的JAXBContext = JAXUtility.getContext(packageLocation); StringWriter sw = new StringWriter(); Marshaller m = jaxbContext.createMarshaller(); m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT,Boolean.TRUE); (o UnadvisedDeal){m.marshal((UnadvisedDeal)o,sw);
和解組:
的JAXBContext的JAXBContext = JAXUtility.getContext(packageLocation); Unmarshaller um = jaxbContext.createUnmarshaller(); ud =(UnadvisedDeal)um.unmarshal(new StringReader(sw.toString()));
感謝您的幫助