【问题标题】:run web application in netbeans在 netbeans 中运行 Web 应用程序
【发布时间】:2012-04-26 14:01:09
【问题描述】:

我正在使用 netbeans 和 apache tomcat 来运行 Web 应用程序。我不断收到此错误:

In-place deployment at C:\WorkingDirectory\Projects\GreenWheelsProject\GreenWheels-Java\green-wheels-project\share-wheels\target\share-wheels
deploy?config=file%3A%2FC%3A%2FDOCUME%7E1%2F0DD4%7E1%2FLOCALS%7E1%2FTemp%2Fcontext600644043101946969.xml&path=/
FAIL - Deployed application at context path / but context failed to start
The module has not been deployed.
See the server log for details.
    at org.netbeans.modules.j2ee.deployment.devmodules.api.Deployment.deploy(Deployment.java:210)
    at org.netbeans.modules.maven.j2ee.ExecutionChecker.performDeploy(ExecutionChecker.java:179)
    at org.netbeans.modules.maven.j2ee.ExecutionChecker.executionResult(ExecutionChecker.java:131)
    at org.netbeans.modules.maven.execute.MavenCommandLineExecutor.run(MavenCommandLineExecutor.java:211)
    at org.netbeans.core.execution.RunClassThread.run(RunClassThread.java:153)

服务器日志是:

אפר 14, 2012 3:55:00 PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Error configuring application listener of class com.sun.faces.config.ConfigureListener
java.lang.ClassNotFoundException: com.sun.faces.config.ConfigureListener
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1523)
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:525)
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:507)
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:126)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4660)
    at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226)
    at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)

אפר 14, 2012 3:55:00 PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Skipped installing application listeners due to previous error(s)

服务器的输出是:

אפר 14, 2012 3:54:59 PM org.apache.catalina.util.LifecycleBase stop
INFO: The stop() method was called on component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]] after stop() had already been called. The second call will be ignored.
אפר 14, 2012 3:54:59 PM org.apache.catalina.startup.HostConfig checkResources
INFO: Undeploying context []
אפר 14, 2012 3:54:59 PM org.apache.catalina.startup.HostConfig deployDescriptor
INFO: Deploying configuration descriptor ROOT.xml from C:\Documents and Settings\נאור\.netbeans\7.1.1\apache-tomcat-7.0.22.0_base\conf\Catalina\localhost
אפר 14, 2012 3:54:59 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(C:\WorkingDirectory\Projects\GreenWheelsProject\GreenWheels-Java\green-wheels-project\share-wheels\target\share-wheels\WEB-INF\lib\javaee-api-6.0.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jstl/core_rt is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jstl/core is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/core is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt_rt is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/fmt is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/functions is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://jakarta.apache.org/taglibs/standard/permittedTaglibs is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://jakarta.apache.org/taglibs/standard/scriptfree is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jstl/sql_rt is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jstl/sql is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/sql is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jstl/xml_rt is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jstl/xml is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/xml is already defined
אפר 14, 2012 3:55:00 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error listenerStart
אפר 14, 2012 3:55:00 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [] startup failed due to previous errors

这是我的 POM:

<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.success</groupId>
  <artifactId>share-wheels</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>share-wheels Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <finalName>share-wheels</finalName>
  </build>
</project>

这里有什么问题??..

编辑:
当我将以下内容添加到 thw pom 文件时,会出现此问题:

<dependency>
    <groupId>javax</groupId>
    <artifactId>javaee-api</artifactId>
    <version>6.0</version>
</dependency>

这是为什么?我需要 HttpServletRequest 的这种依赖关系。我该如何解决这个问题?

【问题讨论】:

  • 尝试从您正在部署的 WAR 中删除 servlet 和 JSTL 类。
  • 哪个 servlet?.. 它在哪里(不在 pom 中)?这是一个新项目。怎么去掉?

标签: java tomcat maven netbeans


【解决方案1】:

右键单击..清理并构建! 我在 netbeans 中开发 Spring Web MVC 应用程序时遇到了这个问题。通常清理和构建工作

【讨论】:

    【解决方案2】:

    使用&lt;scope&gt;provided&lt;/scope&gt; 表示您需要编译该工件,但不要在您的战争中使用它。

    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-api</artifactId>
        <version>6.0</version>
        <scope>provided</scope>
    </dependency>
    

    【讨论】:

    • 为什么我在战争中不需要它?
    • 因为这个jar的相关部分(servlet等)已经包含在你的服务器中了。
    • 那又怎样? :) 当我再次添加它时会发生什么?为什么会坏掉?
    • servlet 规范允许容器拒绝非法定义,例如属于java.... 命名空间的类。这些 API 的作用。
    【解决方案3】:

    我遇到了与 Naor 相同的部署失败。我的 Tomcat webapps 文件夹没有默认 Tomcat dist 附带的管理器模块(我已删除!)。因此,当 NetBeans 尝试在 Web 容器 (Tomcat) 上进行部署时,它会失败,因为没有管理器模块。恢复管理器模块可以解决错误消息。

    【讨论】:

    • 我也遇到了同样的问题,您可以通过确保 Tomcat 中的管理器模块正确来轻松解决它。即使管理器模块存在,也要确保它具有默认管理器模块的所有文件。
    猜你喜欢
    • 2018-07-31
    • 1970-01-01
    • 1970-01-01
    • 2017-05-21
    • 2017-02-13
    • 2012-08-06
    • 1970-01-01
    • 2012-08-25
    • 2011-04-14
    相关资源
    最近更新 更多