7
使用庫存TomEE +,我無法獲得簡單的JAX-RS資源。我不斷地得到一個錯誤:在TomEE +上使用JAX-RS時「無資源方法」
Jun 30, 2012 5:09:59 PM org.apache.cxf.jaxrs.utils.ResourceUtils checkMethodDispatcher
WARNING: No resource methods have been found for resource class com.tensorwrench.test.BaseResource
Jun 30, 2012 5:09:59 PM org.apache.cxf.jaxrs.utils.ResourceUtils checkMethodDispatcher
WARNING: No resource methods have been found for resource class com.tensorwrench.test.BaseResource
Jun 30, 2012 5:09:59 PM org.apache.cxf.jaxrs.utils.ResourceUtils checkMethodDispatcher
WARNING: No resource methods have been found for resource class com.tensorwrench.test.BaseResource
Jun 30, 2012 5:09:59 PM org.apache.cxf.jaxrs.AbstractJAXRSFactoryBean checkResources
SEVERE: No resource classes found
Jun 30, 2012 5:09:59 PM org.apache.catalina.startup.HostConfig deployWAR
SEVERE: Error deploying web application archive D:\workspace\api\src\main\catalina_base\webapps\testapi-1.0.war
org.apache.cxf.service.factory.ServiceConstructionException
at org.apache.cxf.jaxrs.JAXRSServerFactoryBean.create(JAXRSServerFactoryBean.java:194)
at org.apache.openejb.server.cxf.rs.CxfRsHttpListener.deploy(CxfRsHttpListener.java:126)
at org.apache.openejb.server.cxf.rs.CxfRsHttpListener.deployPojo(CxfRsHttpListener.java:97)
at org.apache.openejb.server.rest.RESTService.deployPojo(RESTService.java:270)
at org.apache.openejb.server.rest.RESTService.afterApplicationCreated(RESTService.java:173)
at org.apache.tomee.webservices.TomeeJaxRsService.afterApplicationCreated(TomeeJaxRsService.java:55)
at org.apache.tomee.catalina.WebDeploymentListeners.afterApplicationCreated(WebDeploymentListeners.java:38)
at org.apache.tomee.catalina.TomcatWebAppBuilder.afterStart(TomcatWebAppBuilder.java:818)
at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:103)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:401)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:168)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:895)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:871)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:962)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1603)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
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)
Caused by: javax.ws.rs.WebApplicationException
at org.apache.cxf.jaxrs.AbstractJAXRSFactoryBean.checkResources(AbstractJAXRSFactoryBean.java:312)
at org.apache.cxf.jaxrs.JAXRSServerFactoryBean.create(JAXRSServerFactoryBean.java:144)
... 23 more
資源類: 包com.tensorwrench.test;
import javax.ws.rs.*;
import javax.ws.rs.core.Response;
@Path("/test")
public class BaseResource {
@GET @Produces("text/plain") @Path("test") Response helloWorld() {
return Response.ok("Hello world","plain/text").build();
}
@GET @Produces("text/plain") String helloWorld2() {
return "Hello world without path!";
}
}
的web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="api" version="3.0"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_3_0.xsd">
<display-name>Service</display-name>
的build.gradle:
apply plugin: 'java'
apply plugin: 'war'
repositories { mavenCentral() }
dependencies {
providedCompile 'org.apache.openejb:javaee-api:6.0-4'
}
version = '1.0'
jar {
manifest {
attributes 'Title': 'Services',
'Version': version
}
}
</web-app>
我已經嘗試了數排列,添加beans.xml文件,刪除,更改註釋的順序,爲Java EE類使用不同的編譯依賴關係。我一直得到這個錯誤。
謝謝,就是這樣。永遠是最難以看到的簡單的事情。 :/ – Nialscorva
不用擔心,我們喜歡嘗試並捕獲[類似的東西](https://issues.apache.org/jira/browse/OPENEJB-453),但目前代碼主要圍繞EJB。爲這個https://issues.apache.org/jira/browse/TOMEE-260添加了一個JIRA –