<?xml version="1.0" encoding="ISO-8859-1"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title><![CDATA[Forum du club des développeurs et IT Pro - Format d'échange (XML, JSON...)]]></title>
		<link>https://www.developpez.net/forums/</link>
		<description><![CDATA[Forum d'entraide sur la manipulation de formats d'échange (XML, JSON...). Avant de poster -> FAQ Java/XML et FAQ XML.]]></description>
		<language>fr</language>
		<lastBuildDate>Sat, 30 May 2026 11:37:05 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>15</ttl>
		<image>
			<url>https://forum.developpez.be/images/misc/rss.png</url>
			<title><![CDATA[Forum du club des développeurs et IT Pro - Format d'échange (XML, JSON...)]]></title>
			<link>https://www.developpez.net/forums/</link>
		</image>
		<item>
			<title><![CDATA[[XSD] problème de génération de classe XSD]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2177709&amp;goto=newpost</link>
			<pubDate>Tue, 24 Jun 2025 13:27:22 GMT</pubDate>
			<description><![CDATA[Bonjour, 
J'ai récupéré il y...]]></description>
			<content:encoded><![CDATA[<div>Bonjour,<br />
J'ai récupéré il y a quelques temps un projet java plein de technologies obsolètes, et je dois le faire évoluer.<br />
Le projet est en java 8 et je dois le passer en 17 avec toutes les évolutions des divers paquets utilisés.<br />
Parmi ceux là, j'ai dû faire évoluer la génération automatique de certaines de mes classes qui se faisait via org.jvnet.jaxb2.maven2.<br />
<br />
A l'origine, dans mon pom j'avais un plugin défini comme ceci : <br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
&lt;plugin&gt;
        &lt;groupId&gt;org.jvnet.jaxb2.maven2&lt;/groupId&gt;
        &lt;artifactId&gt;maven-jaxb2-plugin&lt;/artifactId&gt;
        &lt;version&gt;<span style="color: #cc66cc;">0</span>.<span style="color: #cc66cc;">14</span>.<span style="color: #cc66cc;">0</span>&lt;/version&gt;
        &lt;executions&gt;
          &lt;execution&gt;
            &lt;goals&gt;
              &lt;goal&gt;generate&lt;/goal&gt;
            &lt;/goals&gt;
            &lt;configuration&gt;
              &lt;schemaDirectory&gt;$<span class="br0">&#123;</span>project.basedir<span class="br0">&#125;</span>/src/main/resources/xsd&lt;/schemaDirectory&gt;
              &lt;bindingDirectory&gt;$<span class="br0">&#123;</span>project.basedir<span class="br0">&#125;</span>/src/main/resources/xsd&lt;/bindingDirectory&gt;
              &lt;schemaIncludes&gt;
                &lt;include&gt;schema1.xsd&lt;/include&gt;
              &lt;/schemaIncludes&gt;
              &lt;strict&gt;true&lt;/strict&gt;
              &lt;!-- For including equals,hashcode and toString methods in generated code --&gt;
              &lt;plugins&gt;
                &lt;plugin&gt;
                  &lt;groupId&gt;org.jvnet.jaxb2_commons&lt;/groupId&gt;
                  &lt;artifactId&gt;jaxb2-basics&lt;/artifactId&gt;
                  &lt;version&gt;<span style="color: #cc66cc;">1</span>.<span style="color: #cc66cc;">11</span>.<span style="color: #cc66cc;">1</span>&lt;/version&gt;
                &lt;/plugin&gt;
                &lt;!-- For including xml annotations in generated code --&gt;
                &lt;plugin&gt;
                  &lt;groupId&gt;org.jvnet.jaxb2_commons&lt;/groupId&gt;
                  &lt;artifactId&gt;jaxb2-basics-annotate&lt;/artifactId&gt;
                  &lt;version&gt;<span style="color: #cc66cc;">1</span>.<span style="color: #cc66cc;">1</span>.<span style="color: #cc66cc;">0</span>&lt;/version&gt;
                &lt;/plugin&gt;
                &lt;plugin&gt;
                  &lt;groupId&gt;org.jvnet.jaxb2_commons&lt;/groupId&gt;
                  &lt;artifactId&gt;jaxb2-value-constructor&lt;/artifactId&gt;
                  &lt;version&gt;<span style="color: #cc66cc;">3.0</span>&lt;/version&gt;
                &lt;/plugin&gt;
              &lt;/plugins&gt;
              &lt;args&gt;
                &lt;arg&gt;-Xequals&lt;/arg&gt;
                &lt;arg&gt;-XhashCode&lt;/arg&gt;
                &lt;arg&gt;-XtoString&lt;/arg&gt;
                &lt;arg&gt;-Xannotate&lt;/arg&gt;
                &lt;arg&gt;-Xvalue-constructor&lt;/arg&gt;
              &lt;/args&gt;
            &lt;/configuration&gt;
          &lt;/execution&gt;
        &lt;/executions&gt;
      &lt;/plugin&gt;</pre></td></tr></table></code><hr />
</div>j'avais ensuite deux schéma XSD dont l'un était appelé par l'autre :<br />
<br />
<br />
schema1.xsd <br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
&lt;?xml version=<span style="color: #FF0000;">&quot;1.0&quot;</span> encoding=<span style="color: #FF0000;">&quot;UTF-8&quot;</span>?&gt;
&lt;xsd:schema xmlns:monProjet=<span style="color: #FF0000;">&quot;urn:monprojet&quot;</span> xmlns:xsd=<span style="color: #FF0000;">&quot;http://www.w3.org/2001/XMLSchema&quot;</span>
  targetNamespace=<span style="color: #FF0000;">&quot;urn:monprojet.paquet1&quot;</span> elementFormDefault=<span style="color: #FF0000;">&quot;qualified&quot;</span> attributeFormDefault=<span style="color: #FF0000;">&quot;unqualified&quot;</span> version=<span style="color: #FF0000;">&quot;1.00&quot;</span>
  xmlns:iso=<span style="color: #FF0000;">&quot;urn:monprojet:isotypes&quot;</span>&gt;
  &lt;xsd:<span style="color: #0000ff;">import</span> namespace=<span style="color: #FF0000;">&quot;urn=monprojet:isotypes:v1.00&quot;</span> schemaLocation=<span style="color: #FF0000;">&quot;schema2.xsd&quot;</span> /&gt;
...</pre></td></tr></table></code><hr />
</div>schema2.xsd<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
&lt;?xml version=<span style="color: #FF0000;">&quot;1.0&quot;</span> encoding=<span style="color: #FF0000;">&quot;UTF-8&quot;</span>?&gt;
&lt;xsd:schema xmlns:iso=<span style="color: #FF0000;">&quot;urn:monprojet:isotypes:v1.00&quot;</span> xmlns:xsd=<span style="color: #FF0000;">&quot;http://www.w3.org/2001/XMLSchema&quot;</span>
  targetNamespace=<span style="color: #FF0000;">&quot;urn:monprojet:isotypes:v1.00&quot;</span> elementFormDefault=<span style="color: #FF0000;">&quot;qualified&quot;</span> attributeFormDefault=<span style="color: #FF0000;">&quot;unqualified&quot;</span>
  version=<span style="color: #FF0000;">&quot;1.00&quot;</span>&gt;</pre></td></tr></table></code><hr />
</div><br />
lors du build du projet mes classes était générées en un seul exemplaire dans les deux paquets en fonction du schéma (1 ou 2) dans lequel elles étaient définies.<br />
<br />
aujourd'hui mon plugin est défini ainsi :<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
           &lt;plugin&gt;
                &lt;groupId&gt;org.apache.cxf&lt;/groupId&gt;
                &lt;artifactId&gt;cxf-xjc-plugin&lt;/artifactId&gt;
                &lt;version&gt;<span style="color: #cc66cc;">4</span>.<span style="color: #cc66cc;">1</span>.<span style="color: #cc66cc;">0</span>&lt;/version&gt;
                &lt;executions&gt;
                    &lt;execution&gt;
                        &lt;id&gt;cxf-xjc&lt;/id&gt;
                        &lt;phase&gt;generate-sources&lt;/phase&gt;
                        &lt;goals&gt;
                            &lt;goal&gt;xsdtojava&lt;/goal&gt;
                        &lt;/goals&gt;
                        &lt;configuration&gt;
                                &lt;xsdOption&gt;
                                    &lt;xsd&gt;$<span class="br0">&#123;</span>project.basedir<span class="br0">&#125;</span>/src/main/resources/xsd/schema1.xsd&lt;/xsd&gt;
                                    &lt;packagename&gt;monprojet.paquet1&lt;/packagename&gt;
                                &lt;/xsdOption&gt;
                            &lt;/xsdOptions&gt;
                        &lt;/configuration&gt;
                    &lt;/execution&gt;
                &lt;/executions&gt;
            &lt;/plugin&gt;</pre></td></tr></table></code><hr />
</div>Les classes sont bien générées, mais elle sont toutes générées dans le même paquets, et du coup le projet ne fonctionne pas (vu qu'elles sont recherchées dans un paquet qui n'existe pas)<br />
Si j'ajoute la référence de mon schéma2.xsd dans le pom, elles sont générées en double, et le projet ne fonctionne pas non plus.<br />
<br />
Si vous pouvez m'aider, ça serait super.<br />
Merci.<br />
Louve.</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f194/java/general-java/format-d-echange-xml-json/"><![CDATA[Format d'échange (XML, JSON...)]]></category>
			<dc:creator>Louve-69</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2177709/java/general-java/format-d-echange-xml-json/probleme-generation-classe-xsd/</guid>
		</item>
	</channel>
</rss>
