Pergunta

Eu estou tentando descobrir o que os bits eu preciso ligar juntos para empacotar uma JAXB POJO a um documento XOM, e vice-versa.

métodos marechal da interface Marshaller JAXB levar vários alvos, como Result, mas nenhum deles tem um adaptador XOM. Irritantemente, a API XOM tem uma implementação XOMResult, mas do pacote protegido, e só usado internamente.

Existe alguma outra maneira que eu puder marechal de / para XOM sem recorrer a corda ou byte buffers?

Foi útil?

Solução

Eu não tenho certeza se você é adversa ao uso de DOM para alcançar este objetivo, como você está provavelmente usando XOM para evitar DOM! De qualquer forma, utilizando uma pasta tal como descrito JAXB aqui juntamente com XOM de DOMConverter , você pode ir de JAXB para DOM para XOM sem o uso de uma corda ou um buffer de byte.

É muito ruim que XOM não tem um utilitário para criar um documento XOM de um SAX ContentHandler, desde JAXB também suporta triagem para uma instância desse objeto. XOM tem um SAXConverter que pode criar um ContentHandler a partir de um documento, mas não o contrário.

Aqui é um segmento que se refere a isso na XOM interesse lista de discussão

Outras dicas

Eu encontrei projeto antigo nux :

http: //acs.lbl. gov / software / nux // api / nux / XOM / piscina / XOMUtil.html

jaxbMarshal / jaxbUnmarshal usar DOMConverter; - (

b. http://acs.lbl.gov/software/nux /api/nux/xom/io/StaxUtil.html ... também inclui uma implementação XOM Builder que usa um analisador StAX em vez de um parser SAX; além de uma implementação XMLStreamReader leitura de um documento XOM subjacente ou fragmento; além de outras ferramentas.

StaxUtil.createXMLStreamReader (root Node) Constrói e retorna uma StAX XMLStreamReader implementação analisador pull que lê a partir de um subjacente XOM nó; tipicamente um documento ou fragmento de (sub); Ideal para a conversão eficiente de uma árvore XOM para SOAP / AXIOM, JAXB 2, JiBX ou XMLBeans, por exemplo, quando incrementalmente converter resultados XQuery através de um unmarshaller, talvez em combinação com um StreamingPathFilter.

Pode ser isso pode ajudar?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top