2012-07-25 237 views
5

我试图通过部署的IntelliJ IDEA 11.0我的应用程序,它给我以下错误:错误配置应用程序监听

09:35:52,997 WARN [JAXWSDeployerHookPreJSE] Cannot load servlet class: org.springframework.web.servlet.ViewRendererServlet 
09:35:52,999 INFO [TomcatDeployer] deploy, ctxPath=/my-portlet-1.0, warUrl=.../tmp/deploy/tmp555932443707493677my-portlet-1.0-exp.war/ 
09:35:53,386 ERROR [0]] Error configuring application listener of class org.springframework.web.context.ContextLoaderListener 
java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358) 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204) 
    ... 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
    at java.lang.Thread.run(Thread.java:662) 
09:35:53,391 ERROR [0]] Skipped installing application listeners due to previous error(s) 
09:35:53,391 ERROR [StandardContext] Error listenerStart 
09:35:53,391 ERROR [StandardContext] Context [/my-portlet-1.0] startup failed due to previous errors 
09:35:53,402 WARN [ServiceController] Problem starting service jboss.web.deployment:war=my-portlet-1.0.war,id=-135869088 
org.jboss.deployment.DeploymentException: URL file:/C:/JBOSS/jboss-portal-2.7.2/server/default/tmp/deploy/tmp555932443707493677my-portlet-1.0-exp.war/ deployment failed 
    at org.jboss.web.tomcat.service.TomcatDeployer.performDeployInternal(TomcatDeployer.java:386) 
    at org.jboss.web.tomcat.service.TomcatDeployer.performDeploy(TomcatDeployer.java:104) 
    ... 
    at sun.rmi.transport.Transport.serviceCall(Transport.java:155) 
    at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535) 
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790) 
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
    at java.lang.Thread.run(Thread.java:662) 
09:35:53,407 ERROR [MainDeployer] Could not start deployment: file:C:/Users/Abbas/Projects/my-app/my-portlet/target/my-portlet-1.0.war 
org.jboss.deployment.DeploymentException: URL file:/C:/JBOSS/jboss-portal-2.7.2/server/default/tmp/deploy/tmp555932443707493677my-portlet-1.0-exp.war/ deployment failed 
    at org.jboss.web.tomcat.service.TomcatDeployer.performDeployInternal(TomcatDeployer.java:386) 
    at org.jboss.web.tomcat.service.TomcatDeployer.performDeploy(TomcatDeployer.java:104) 
    ... 
    at java.lang.Thread.run(Thread.java:662) 
[2012-07-25 09:35:53,431] Artifact my-portlet:war: Error during artifact deployment. See server log for details. 

有谁知道如何解决这个问题?

+0

你可以发布你的项目的依赖关系(使用pom.xml文件或库)? – jelies 2012-07-25 10:17:14

+0

pom.xml:http://pastebin.com/35Efzzrc – abg 2012-07-25 10:48:28

+1

这很奇怪,因为'org.springframework.web.context.ContextLoaderListener'在org.springframework-3.0.4.RELEASE.jar里面,并且存在于你的pom中。 xml文件。检查你的classpath/war文件,并确保这个jar放在正确的位置。 – jelies 2012-07-25 11:01:02

回答

0

的ContextLoaderListener是org.springframework.web-3.0.4.RELEASE.jar

你提到一个叫org.springframework-3.0.4.RELEASE.jar文件,这是不同的。

也许你在你的依赖文件中有一个错字?

0

其实我也面临同样的问题,浪费了很多时间。我意识到,这实际上是一个非常愚蠢的错误。您必须更改了pom文件并更新了依赖关系。但是一旦我们这样做了,Maven依赖关系的jar文件将从部署Assembly中移除。

所有你需要做的是:

  • 右键单击项目文件夹。
  • 点击属性。
  • 单击Web部署程序集。
  • 检查是否列出了Maven依赖关系。
  • 如果不是点击添加按钮
  • 从列表中选择maven依赖项并完成,应用并确定!

希望这能解决您的问题。如果你还有它!

相关问题