<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Everything is wrong &#187; REST</title>
	<atom:link href="http://everythingiswrong.free.fr/index.php/tag/rest/feed/" rel="self" type="application/rss+xml" />
	<link>http://everythingiswrong.free.fr</link>
	<description>Un blog dédié à l&#039;informatique en général</description>
	<lastBuildDate>Wed, 06 Oct 2021 21:20:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Appliation J2EE6 avec JBoss 7 et Maven</title>
		<link>http://everythingiswrong.free.fr/index.php/2011/08/03/appliation-j2ee6-avec-jboss-7-et-maven/</link>
		<comments>http://everythingiswrong.free.fr/index.php/2011/08/03/appliation-j2ee6-avec-jboss-7-et-maven/#comments</comments>
		<pubDate>Wed, 03 Aug 2011 18:57:10 +0000</pubDate>
		<dc:creator>Yan</dc:creator>
				<category><![CDATA[Eclipse IDE]]></category>
		<category><![CDATA[Java J2EE]]></category>
		<category><![CDATA[Maven]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[JBoss]]></category>
		<category><![CDATA[JSF]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[Tests]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://yan.langlois.free.fr/wordpress/?p=1535</guid>
		<description><![CDATA[Modèle d'applications J2EE6 avec JBoss 7 comportant : JSF2, JPA, EJB3, REST.]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">JBoss propose un certain nombre d&#8217;archetypes dont un qui génère  une application J2EE6 pour JBoss 7 : org.jboss.spec.archetypes:jboss-javaee6-webapp. Or, par défaut, maven ne connait pas cet archetype. Voici comment réussir à l&#8217;utiliser dans Eclipse.</p>
<p style="text-align: justify;">Avant toute chose, il faut vérifier que maven est configuré pour aller chercher des librairies sur le repository JBoss : le fichier settings.xml (~/.m2/settings.xml ou $MAVEN_HOME/conf/settings.xml) doit contenir  le code XML suivant :</p>
<pre class="brush: xml; toolbar: true;">&lt;settings&gt;
 ...
  &lt;profiles&gt;
    ...
    &lt;profile&gt;
      &lt;id&gt;jboss-public-repository&lt;/id&gt;
      &lt;repositories&gt;
        &lt;repository&gt;
          &lt;id&gt;jboss-public-repository-group&lt;/id&gt;
          &lt;name&gt;JBoss Public Maven Repository Group&lt;/name&gt;
          &lt;url&gt;https://repository.jboss.org/nexus/content/groups/public-jboss/&lt;/url&gt;
          &lt;layout&gt;default&lt;/layout&gt;
          &lt;releases&gt;
            &lt;enabled&gt;true&lt;/enabled&gt;
            &lt;updatePolicy&gt;never&lt;/updatePolicy&gt;
          &lt;/releases&gt;
          &lt;snapshots&gt;
            &lt;enabled&gt;true&lt;/enabled&gt;
            &lt;updatePolicy&gt;never&lt;/updatePolicy&gt;
          &lt;/snapshots&gt;
        &lt;/repository&gt;
      &lt;/repositories&gt;
      &lt;pluginRepositories&gt;
        &lt;pluginRepository&gt;
          &lt;id&gt;jboss-public-repository-group&lt;/id&gt;
          &lt;name&gt;JBoss Public Maven Repository Group&lt;/name&gt;
          &lt;url&gt;https://repository.jboss.org/nexus/content/groups/public-jboss/&lt;/url&gt;
          &lt;layout&gt;default&lt;/layout&gt;
          &lt;releases&gt;
            &lt;enabled&gt;true&lt;/enabled&gt;
            &lt;updatePolicy&gt;never&lt;/updatePolicy&gt;
          &lt;/releases&gt;
          &lt;snapshots&gt;
            &lt;enabled&gt;true&lt;/enabled&gt;
            &lt;updatePolicy&gt;never&lt;/updatePolicy&gt;
          &lt;/snapshots&gt;
        &lt;/pluginRepository&gt;
      &lt;/pluginRepositories&gt;
    &lt;/profile&gt;

  &lt;/profiles&gt;

  &lt;activeProfiles&gt;
    &lt;activeProfile&gt;jboss-public-repository&lt;/activeProfile&gt;
  &lt;/activeProfiles&gt;
  ...
&lt;/settings&gt;
</pre>
<p style="text-align: justify;">Ensuite, pour créer le projet dans Eclipse, il faut commencer par installer le catalogue JBoss : <em>Windows -&gt; Preferences&#8230;</em> puis dans la fenêtre <em>Maven -&gt; Achetypes</em> cliquer sur le bouton  <em>Add Remote Catalog&#8230;</em> Saisir <a href="https://repository.jboss.org/nexus/content/groups/public/archetype-catalog.xml" target="_blank">https://repository.jboss.org/nexus/content/groups/public/archetype-catalog.xml</a> dans l&#8217;intitulé Catalogue File et JBoss dans Description. Après l&#8217;opération, il ne reste plus qu&#8217;à accéder au wizard de création d&#8217;un projet Maven (<em>File -&gt; New -&gt; Project&#8230;</em> puis <em>Maven project</em>) et de sélectionner l&#8217;archetype jboss-javaee6-webapp.</p>
<p style="text-align: center;"><img class="aligncenter" src="http://yan.langlois.free.fr/wordpress/wp-content/uploads/jboss-javaee6-webapp.png" alt="" width="577" height="488" /></p>
<p style="text-align: justify;">Le squelette de l&#8217;application est celui-ci :</p>
<p class="wp-caption" style="text-align: justify;">/home/&#8230;/jboss-webapp-j2ee6<br />
|&#8211; pom.xml<br />
|&#8211; readme.html<br />
|&#8211; readme.md<br />
`&#8211; src<br />
|&#8211; main<br />
|   |&#8211; java<br />
|   |   `&#8211; test<br />
|   |       `&#8211; jboss_webapp_j2ee6<br />
|   |           |&#8211; controller<br />
|   |           |   `&#8211; MemberRegistration.java<br />
|   |           |&#8211; data<br />
|   |           |   `&#8211; MemberListProducer.java<br />
|   |           |&#8211; model<br />
|   |           |   `&#8211; Member.java<br />
|   |           |&#8211; rest<br />
|   |           |   |&#8211; JaxRsActivator.java<br />
|   |           |   `&#8211; MemberResourceRESTService.java<br />
|   |           `&#8211; util<br />
|   |               `&#8211; Resources.java<br />
|   |&#8211; resources<br />
|   |   |&#8211; import.sql<br />
|   |   `&#8211; META-INF<br />
|   |       `&#8211; persistence.xml<br />
|   `&#8211; webapp<br />
|       |&#8211; index.html<br />
|       |&#8211; index.xhtml<br />
|       |&#8211; resources<br />
|       |   |&#8211; css<br />
|       |   |   `&#8211; screen.css<br />
|       |   `&#8211; gfx<br />
|       |       |&#8211; banner.png<br />
|       |       `&#8211; logo.png<br />
|       `&#8211; WEB-INF<br />
|           |&#8211; beans.xml<br />
|           |&#8211; faces-config.xml<br />
|           `&#8211; templates<br />
|               `&#8211; default.xhtml<br />
`&#8211; test<br />
|&#8211; java<br />
|   `&#8211; test<br />
|       `&#8211; jboss_webapp_j2ee6<br />
|           `&#8211; test<br />
|               `&#8211; MemberRegistrationTest.java<br />
`&#8211; resources<br />
`&#8211; arquillian.xml</p>
<p style="text-align: justify;">Ce qui équivaut à une application de départ avec un exemple JSF2 s&#8217;appuyant sur une base de données  embarquée avec quelques classes constituant un modèle MVC, un exemple de service web REST, et un exemple de test unitaire avec Arquillian. A noter aussi, l&#8217;utilisation d&#8217;un EJB3 archivé dans un WAR et non un EAR comme il aurait fallu le faire avec J2EE5.</p>
<p style="text-align: justify;">Pour déployer l&#8217;application il faut la packager et utiliser le plugin JBoss de déploiement déjà configuré par l&#8217;archetype (<em>maven package jboss-as:deploy</em>). Attention, pour que tout se déroule correctement, il faudra avoir démarré votre serveur <a href="http://www.jboss.org/jbossas" target="_blank">JBoss7</a> au préalable.</p>
]]></content:encoded>
			<wfw:commentRss>http://everythingiswrong.free.fr/index.php/2011/08/03/appliation-j2ee6-avec-jboss-7-et-maven/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
