我已經使用restEasy編寫了一個寧靜的服務並部署到了JBoss。我有一個web.xml玷污爲:部署到JBoss 7的Resteasy戰爭抱怨沒有發現「org.resteasy.plugins.server.servlet.ResteasyBootstrap」
<?xml version="1.0" encoding="UTF-8"?>
<web-app>
<display-name>Web Application</display-name>
<listener>
<listener-class>org.resteasy.plugins.server.servlet.ResteasyBootstrap</listener-class>
</listener>
<listener>
<listener-class>org.resteasy.plugins.spring.SpringContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>Resteasy</servlet-name>
<servlet-class>org.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Resteasy</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>
然而,當我部署該war文件,它產生的錯誤信息:
20:06:46,225 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-8) MSC00001: Failed to start service jboss.deployment.unit."orderservice-develop
er.war".POST_MODULE: org.jboss.msc.service.StartException in service jboss.deployment.unit."orderservice-developer.war".POST_MODULE: Failed to process
phase POST_MODULE of deployment "orderservice-developer.war"
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:119) [jboss-as-server-7.1.0.Final.jar:7.1.0
.Final]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [rt.jar:1.7.0_03]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [rt.jar:1.7.0_03]
at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_03]
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS011093: Could not load component class org.resteasy.plugins.server.se
rvlet.ResteasyBootstrap
at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.processComponentConfig(InterceptorAnnotationProcessor.java:113)
at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.deploy(InterceptorAnnotationProcessor.java:54)
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:113) [jboss-as-server-7.1.0.Final.jar:7.1.0
.Final]
... 5 more
Caused by: java.lang.ClassNotFoundException: org.resteasy.plugins.server.servlet.ResteasyBootstrap from [Module "deployment.orderservice-developer.war
:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120) [jboss-modules.jar:1.1.1.GA]
at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.processComponentConfig(InterceptorAnnotationProcessor.java:111)
... 7 more
看起來它找不到類「org.resteasy .plugins.server.servlet.ResteasyBootstrap」。實際上,我已經深入瞭解War文件中部署的所有jar文件,並在「resteasy-jaxrs-2.3.1.GA」中找到了這個類。
這個班怎麼不能拿起來?我的web.xml有什麼問題嗎?
感謝您的回覆。我已經添加提供 到我的POM中,以便再戰坦克不包含在戰爭文件中。但是,我仍然遇到同樣的錯誤。那我怎麼寫web.xml呢?我應該把它留空嗎? –
Kevin
2012-02-22 21:12:02
您(大部分)不需要JEE6中的web.xml。除了加載Spring的東西。除了Spring配置以外,什麼都取出。 – Perception 2012-02-22 21:34:40