EAR项目转换为maven - web模块停止工作

时间:2017-04-24 22:31:38

标签: eclipse java-ee ejb war ear

我是EAR应用程序开发的新手。我正在尝试使用以下结构构建应用程序:

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

(我使用Red Hat JBoss Developer Studio作为IDE,使用wildfly作为服务器)

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

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

转换完成后,我的网络模块停止工作。尝试查看欢迎页面返回错误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配置有广泛的描述,但没有一个对我有帮助。我的观点是什么?

提前全部谢谢。

1 个答案:

答案 0 :(得分:2)

你应该为maven建立一个项目如下:

主要项目

--------子项目(EJB)

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

--------儿童项目(EAR)

如果您有netbeans,如果您选择maven企业模板,netbeans会构建一个简单的项目 祝你好运