comment unmarshaller une String qui contient de l'XML
1. En utilsant ByteArrayInputStream
public ObjectApartirDeStringXML (String stringXML){
.......
JAXBContext jContext=......
Unmarshaller u = jContext.createUnmarshaller();
ByteArrayInputStream input = new ByteArrayInputStream (stringXML.getBytes());
Object jaxbObject = unmarshaller.unmarshal( input);
.........
2 En utilsant StreamSource
JAXBContext jContext=......
Unmarshaller u = jContext.createUnmarshaller();
StringBuffer xmlSb = new StringBuffer( “<?xml version=”1.0″?>…” );
Object o = u.unmarshal( new StreamSource( new StringReader( xmlSb.toString() ) ) );
....
Libellés : XML
Différence entre dependencymanagement and dependencies dans maven?
Les dependances définies sous DependencyManagement peuvent être utlisées par les projets enfants sans être pbligé de leurs spécifier les version
par exemple dans le POM du projet parent
<dependencyManagement>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8</version>
</dependency>
</dependencies>
</dependencyManagement>
et dans le POM du projet enfant
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
</dependencies>
Cela permet de :
Centraliser la gestion des versions des dépendances, sans être obligé à retaper les versions des dépendances dans tous les projets enfants
pour plus d'informations voir la documentation Apache
http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html.
Libellés : Dependences
Pour génerer les classes java en utlisant le JAXB compiler directement dans maven:
Ajouter cela dans le pom du projet java:
<build>
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<generateDirectory>src/main/java/</generateDirectory>
<generatePackage>fr.macompagnie.generation</generatePackage>
<removeOldOutput>false</removeOldOutput>
</configuration>
</plugin>
</plugins>
</build>
puis copier votre xsd dans le repertoire
src/main/resources
puis lancer la commande maven :
mvn generate-resources
vous auriez les classes génerées directement dans votre repertoire
src/main/java/.Libellés : Plugins