2016-11-17 2 views
0

Je souhaite connaître l'équivalent EXI de l'unmarshaller JAXB.EXI obtenir JAXB unmarshaller

J'ai regardé les exemples EXI, où j'ai réussi EXIFactory, définir la grammaire, obtenir le XMLReader.

L'exemple crée ensuite un transformateur pour transformer le flux EXI en flux XML.

Cependant, je n'ai pas besoin du flux de sortie. J'ai juste besoin du résultat non-mémorisé pour rester en tant que POJOs en mémoire. J'ai besoin que le résultat soit direct unmarshall d'EXI. J'utilise EXI marshall/unmarshall comme alternative plus rapide au texte XML.

J'ai oublié de dire quelle bibliothèque j'utilisais. Ici, il est:

<groupId>com.siemens.ct.exi</groupId> 
    <artifactId>exificient</artifactId> 
    <version>0.9.6</version> 

Répondre

0

JAXB Marshaller/unmarshaller vous permettent de définir divers mécanismes d'entrée/sortie

par exemple Unmarshaller.unmarshal (source javax.xml.transform.Source)

ou

Marshaller.marshal (Object jaxbElement, résultat javax.xml.transform.Result)

EXIficient implémente

javax .xml.transform.Source (voir com.siemens.ct.exi.api.sax.EXISource)

javax.xml.transform.Result (voir com.siemens.ct.exi.api.sax.EXIResult)

EXISource et EXIResult peuvent être initialisés avec EXIFactory.

Hope this helps,

- Daniel