2017-04-24 55 views
0

我是EAR应用程序开发新手。我想用下面的结构来构建应用程序:EAR项目转换为maven - web模块停止工作

  • EAR作为包装下面
  • WEB模块
  • EJB模块

(我使用Red Hat的JBoss Developer Studio中的IDE和野驴作为服务器)

创建上述结构后,我测试了它 - 一切都被罚款。

我想为整个解决方案添加maven支持,所以根据我使用的向导找到的文章:右键单击项目“配置” - >“转换为maven项目”。我先做了ejb和web模块,然后再做耳朵。我还修改了ear pom.xml文件和application.xml文件。

转换完成后,我的Web模块停止工作。试图查看欢迎页面将返回错误404

下面你可以找到EAR pom.xml文件:

<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> 
    <groupId>sri3</groupId> 
    <artifactId>sri3</artifactId> 
    <version>1.0.0</version> 
    <packaging>ear</packaging> 
    <build> 
    <plugins> 
     <plugin> 
     <artifactId>maven-ear-plugin</artifactId> 
     <version>2.10</version> 
     <configuration> 
      <earSourceDirectory>EarContent</earSourceDirectory> 
      <version>7</version> 
      <defaultLibBundleDir>lib</defaultLibBundleDir> 
      <webModule> 
      <groupId>sri3.web</groupId> 
      <artifactId>sri3.web</artifactId> 
      </webModule> 
      <ejbModule> 
      <groupId>sri3.ejb</groupId> 
      <artifactId>sri3.ejb</artifactId> 
      </ejbModule> 
     </configuration> 
     </plugin> 
    </plugins> 
    </build> 
    <dependencies> 
    <dependency> 
     <groupId>sri3.web</groupId> 
     <artifactId>sri3.web</artifactId> 
     <version>1.0.0</version> 
     <type>war</type> 
    </dependency> 
    <dependency> 
     <groupId>sri3.ejb</groupId> 
     <artifactId>sri3.ejb</artifactId> 
     <version>1.0.0</version> 
     <type>ejb</type> 
    </dependency> 
    </dependencies> 
</project> 

下面你可以找到EAR application.xml文件:

<?xml version="1.0" encoding="UTF-8"?> 
<application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/application_7.xsd" id="Application_ID" version="7"> 
    <display-name>sri3</display-name> 
    <module> 
    <web> 
     <web-uri>sri3.web.war</web-uri> 
     <context-root>sri3.web</context-root> 
    </web> 
    </module> 
    <module> 
    <ejb>sri3.ejb.jar</ejb> 
    </module> 
    <library-directory>lib</library-directory> 
</application> 

我发现了几个文章和问题与广泛描述适当的EAR配置,但没有一个帮助我。我忽略了什么?

感谢所有提前。

回答

2

你应该建立对Maven如下项目:

主要项目

--------儿童项目(EJB)

--------儿童项目(WEB)

--------子项目(EAR)

如果你有一个NetBeans,NetBeans中生成一个简单的项目,如果你选择的Maven企业模板 祝你好运

+0

好的。所以如果我很好理解,我应该把所有的项目包括在内,包括一个在父项目中的项目?它应该是什么样的项目? – Piotr

+0

这是一个PAM项目 –

+0

这个项目只包含子项目,如果你看看NetBeans的示例项目,你完全理解结构 –