sabato 22 giugno 2013

Validazione nel marshalling di un xml

Utilizzando JAXB tipicamente quando effettuiamo l'operazione di lettura dall'xml per popolare i nostri oggetti di business (UNMARSHALLING), si può abilitare la validazione in questo modo:


JAXBContext context=JAXBContext.newInstance("it.esempio");
Unmarshaller um= context.createUnmarshaller();
um.setValidating(true);


Nel caso inverso però (il cosiddetto marshalling) non è disponibile questa feature.
Quindi bisogna utilizzare il seguente costrutto:

Item item=....
JAXBContext context=JAXBContext.newInstance("it.esempio");
Marshaller m= context.createMarshaller();
Validator v=context.createValidator();
v.validate(item);
m.marshal(item,new FileOutputStream("newItem.xml");

Nessun commento:

Posta un commento