2010-10-17 5 views
1

Quelqu'un peut-il me fournir un exemple de travail de pom.xml qui est utilisé pour construire et déployer l'archive d'oreille sur jboss 5.1.0.
Dans mon application, j'ai deux modules - web (archive .war) et java (.jar). Je suis en train de accoplish la tâche ci-dessus en utilisant le pom.xml suivantCadre de couture, maven-ear-plugin et Jboss as 5.1.0

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
<modelVersion>4.0.0</modelVersion> 
<parent> 
    <artifactId>tp</artifactId> 
    <groupId>com.domain.project</groupId> 
    <version>0.1</version> 
</parent> 
<groupId>com.domain.project</groupId> 
<artifactId>build</artifactId> 
<version>0.1</version> 
<packaging>ear</packaging> 
<name>project</name> 

<repositories> 
    ... 
</repositories> 

<build> 

    <finalName>project</finalName> 
    <plugins> 
     <plugin> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>jboss-maven-plugin</artifactId> 
      <version>1.4.1</version> 
      <configuration> 
       <jbossHome>/opt/jboss-5.1.0.GA</jbossHome> 
       <hostName>localhost</hostName> 
       <serverName>default</serverName> 
       <port>8080</port> 
       <fileNames> 
        <fileName>${basedir}/target/${build.finalName}.ear</fileName> 
       </fileNames> 
      </configuration> 
     </plugin> 

     <plugin> 
      <artifactId>maven-ear-plugin</artifactId> 
      <version>2.4.2</version> 
      <configuration> 
       <generateApplicationXml>true</generateApplicationXml> 
       <jboss> 
        <modules> 
         <webModule>web.war</webModule> 
         <ejbModule>core.jar</ejbModule> 
        </modules> 
        <version>5</version> 
        <loader-repository>com.domain.project:loader=project</loader-repository> 
       </jboss> 
       <modules> 
        <webModule> 
         <groupId>com.domain.project</groupId> 
         <artifactId>web</artifactId> 
         <bundleDir>/</bundleDir> 
        </webModule> 
        <javaModule> 
         <groupId>com.domain.project</groupId> 
         <artifactId>core</artifactId> 
         <bundleFileName>core.jar</bundleFileName> 
        </javaModule> 

       </modules> 
      </configuration> 
     </plugin> 

    </plugins> 
</build> 

<dependencies> 
    <dependency> 
     <groupId>com.domain.project</groupId> 
     <artifactId>core</artifactId> 
     <version>0.1</version> 
    </dependency> 
    <dependency> 
     <groupId>com.domain.project</groupId> 
     <artifactId>web</artifactId> 
     <version>0.1</version> 
     <type>war</type> 
    </dependency> 
    <dependency> 
     <groupId>org.jboss.el</groupId> 
     <artifactId>jboss-el</artifactId> 
     <version>1.0_02.CR4</version> 
     <type>jar</type> 
    </dependency> 
    <dependency> 
     <groupId>org.jboss.seam</groupId> 
     <artifactId>jboss-seam</artifactId> 
     <version>2.2.0.GA</version> 
     <type>jar</type> 
    </dependency> 
    <dependency> 
     <groupId>org.jbpm</groupId> 
     <artifactId>jbpm-jpdl</artifactId> 
     <version>3.2.2</version> 
     <type>jar</type> 
    </dependency> 
</dependencies> 

Cependant, je reçois l'exception suivante
org.jboss.deployers.spi.DeploymentException: Impossible de métadonnées de processus

On dirait que le fichier application.xml ou jboss-app.xml n'est pas bien généré ... Toute aide sera appréciée.

Répondre

1

Il semble difficile (ou du moins prendre du temps) de reproduire la structure et le problème de votre projet. Pour cette raison, ma suggestion serait d'utiliser l'archétype annoncé dans Getting started with JBoss Seam and Maven in 10 seconds! pour créer un exemple d'application (avec une construction qui fonctionne comme prévu) et d'imiter la configuration.

Pour démarrer un projet, exécutez la commande suivante:

 
$ mvn archetype:generate \ 
     -DarchetypeGroupId=de.akquinet.jbosscc \ 
     -DarchetypeArtifactId=jbosscc-seam-archetype \ 
     -DarchetypeVersion=1.2 \ 
     -DarchetypeCatalog=http://seam-archetype.sourceforge.net/jbosscc-seam-archetype/1.2/archetype-catalog.xml 
... 
Define value for property 'groupId': : com.domain.project 
Define value for property 'artifactId': : seam-demo 
Define value for property 'version': 1.0-SNAPSHOT: : 
Define value for property 'package': com.domain.project: : 
Define value for property 'seamVersion': : 2.2.0.GA 
Confirm properties configuration: 
groupId: com.domain.project 
artifactId: seam-demo 
version: 1.0-SNAPSHOT 
package: com.domain.project 
seamVersion: 2.2.0.GA 
Y: : 
... 
[INFO] BUILD SUCCESS 
... 

Et cd dans le répertoire seam-demo, exécutez mvn install et les deux application.xml et le jboss-app.xml sera généré dans le module de l'oreille. Puis, en utilisant la configuration jboss-maven-plugin que vous avez fournie pour déployer dur l'oreille sur un JBoss démarré, j'ai travaillé pour moi.

+0

Pascal Thivent merci .. mais le problème est que j'ai une structure de projet déjà implémentée à la main ... et je ne peux pas le changer ... donc je ne peux pas utiliser cet archétype ... merci quand même – Andrew

+0

@ Andrew Si vous relisez ma réponse attentivement, vous verrez que je suggère de ** imiter ** la configuration de l'oreille (qui fonctionne, contrairement au vôtre) que vous obtiendriez avec l'archétype, pas pour remplacer votre projet existant structure ... –

+0

oh .... désolé Pascal ... merci ... je fais un essai ... – Andrew

Questions connexes