Maven生成的ear文件在部署weblogic server期间失败

Maven生成的ear文件在部署weblogic server期间失败,maven,deployment,nullpointerexception,weblogic,jdeveloper,Maven,Deployment,Nullpointerexception,Weblogic,Jdeveloper,我将jdeveloper12.1.2.0.0与OracleWebLogicServer一起使用。Java版本是1.7.0_15。 我有一个基于Oracle ADF的项目。我必须让它变得专业化。 首先,我单击deploy,应用程序ear文件已经创建并在服务器上运行良好。 在我的应用程序中有模型和ViewController项目。 为了实现mavenize,我刚刚为每个项目创建了Maven POM for project,最后为应用程序创建了一个应用程序POM。 最终产品应该是ear文件,以便在带有

我将jdeveloper12.1.2.0.0与OracleWebLogicServer一起使用。Java版本是1.7.0_15。 我有一个基于Oracle ADF的项目。我必须让它变得专业化。 首先,我单击deploy,应用程序ear文件已经创建并在服务器上运行良好。 在我的应用程序中有模型和ViewController项目。 为了实现mavenize,我刚刚为每个项目创建了Maven POM for project,最后为应用程序创建了一个应用程序POM。 最终产品应该是ear文件,以便在带有管理控制台的远程服务器上部署,因此我对应用程序POM进行了一些修改(删除了模型和ViewController模块,然后我可以将包从POM更改为ear)。 当我安装maven时,所有的构建都成功结束了。 在将ear文件部署到Weblogic服务器期间,我得到了

java.lang.ClassNotFoundException: org.apache.myfaces.trinidad.webapp.ResourceServlet
我将以下行添加到我的ViewController pom.xml中:

<dependency>
    <groupId>org.apache.myfaces.core</groupId>
    <artifactId>myfaces-api</artifactId>
    <version>2.2.4</version>
</dependency>
<dependency>
    <groupId>org.apache.myfaces.core</groupId>
    <artifactId>myfaces-impl</artifactId>
    <version>2.2.4</version>
</dependency>
<dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-api</artifactId>
            <version>2.2.13</version>
    </dependency>
    <dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-impl</artifactId>
            <version>2.2.13</version>
    </dependency>
    <dependency>
            <groupId>javax.el</groupId>
            <artifactId>el-api</artifactId>
            <version>2.2</version>
    </dependency>
    <dependency>
            <groupId>org.glassfish.web</groupId>
            <artifactId>el-impl</artifactId>
            <version>2.2</version>
    </dependency>
    <dependency>
            <groupId>javax.el</groupId>
            <artifactId>javax.el-api</artifactId>
            <version>2.2.1</version>
    </dependency>
    <dependency>
            <groupId>javax.faces</groupId>
            <artifactId>javax.faces-api</artifactId>
            <version>2.2</version>
    </dependency>
顺便说一下,我比较了已部署(右键单击应用程序->部署)和由maven ear文件创建的文件。我发现了一些不同之处: Maven生成的ear文件在WEB-INF\lib\although中包含Model-1.0-SNAPSHOT.jar,尽管部署的模型项目的类文件在WEB-INF\classes中

无论如何,当我在第一次maven安装后更新pom.xml中的dependecies部分时,什么都没有发生(它添加了新的dependecies,但是如果我在maven安装后删除了其中的一些,它就会包含它们。?maven clean package?)


非常感谢您的帮助。

为了解决这个问题,我在我的web层pom.xml中使用了以下内容:

<dependency>
    <groupId>org.apache.myfaces.core</groupId>
    <artifactId>myfaces-api</artifactId>
    <version>2.2.4</version>
</dependency>
<dependency>
    <groupId>org.apache.myfaces.core</groupId>
    <artifactId>myfaces-impl</artifactId>
    <version>2.2.4</version>
</dependency>
<dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-api</artifactId>
            <version>2.2.13</version>
    </dependency>
    <dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-impl</artifactId>
            <version>2.2.13</version>
    </dependency>
    <dependency>
            <groupId>javax.el</groupId>
            <artifactId>el-api</artifactId>
            <version>2.2</version>
    </dependency>
    <dependency>
            <groupId>org.glassfish.web</groupId>
            <artifactId>el-impl</artifactId>
            <version>2.2</version>
    </dependency>
    <dependency>
            <groupId>javax.el</groupId>
            <artifactId>javax.el-api</artifactId>
            <version>2.2.1</version>
    </dependency>
    <dependency>
            <groupId>javax.faces</groupId>
            <artifactId>javax.faces-api</artifactId>
            <version>2.2</version>
    </dependency>

com.sun.faces

通过这个链接,它是关于JSF 2.2的,我使用了2.1,但尝试将其删除失败。您是否用类似的问题检查过这个问题?是的,已经检查过了,但不起作用。我们已经解决了。我们在应用程序下创建了一个新项目,用于生成EAR文件。我们将父POM的目标更改为POM,并将模块放回该目标。Maven生成的EAR文件和部署的EAR文件有一些区别。我们复制了一些文件,它在部署期间运行良好。