Java 找不到CORS筛选器-jersey
我已经为这个问题挣扎了很长时间了。它突然开始了,我不知道如何修复它,也不知道我做错了什么。我已经忙了很长一段时间了,哪儿也没去。我试过了,还有很多其他的链接。 当这个开发环境建立起来的时候,我并没有在这里工作,以前从来没有真正使用过jersey 谁能告诉我为什么我会得到:Java 找不到CORS筛选器-jersey,java,jersey,Java,Jersey,我已经为这个问题挣扎了很长时间了。它突然开始了,我不知道如何修复它,也不知道我做错了什么。我已经忙了很长一段时间了,哪儿也没去。我试过了,还有很多其他的链接。 当这个开发环境建立起来的时候,我并没有在这里工作,以前从来没有真正使用过jersey 谁能告诉我为什么我会得到: Fev 28, 2014 4:55:00 PM com.sun.jersey.core.spi.component.ProviderServices getInstances SEVERE: The class <my_
Fev 28, 2014 4:55:00 PM com.sun.jersey.core.spi.component.ProviderServices getInstances
SEVERE: The class <my_package>.jersey.ResponseCorsFilter could not be found. This class is ignored.
Fev 28, 2014 4:55:00 PM com.sun.jersey.server.impl.application.RootResourceUriRules <init>
SEVERE: The ResourceConfig instance does not contain any root resource classes.
Fev 28, 2014 4:55:00 PM org.apache.catalina.core.ApplicationContext log
SEVERE: StandardWrapper.Throwable
com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
at com.sun.jersey.server.impl.application.RootResourceUriRules.<init>(RootResourceUriRules.java:99)
at com.sun.jersey.server.impl.application.WebApplicationImpl._initiate(WebApplicationImpl.java:1331)
at com.sun.jersey.server.impl.application.WebApplicationImpl.access$700(WebApplicationImpl.java:168)
at com.sun.jersey.server.impl.application.WebApplicationImpl$13.f(WebApplicationImpl.java:774)
at com.sun.jersey.server.impl.application.WebApplicationImpl$13.f(WebApplicationImpl.java:770)
at com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:193)
at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:770)
at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:765)
at com.sun.jersey.spi.container.servlet.ServletContainer.initiate(ServletContainer.java:489)
at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.initiate(ServletContainer.java:319)
at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:605)
at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:210)
at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:374)
at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:557)
at javax.servlet.GenericServlet.init(GenericServlet.java:160)
at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1280)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1193)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1088)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5176)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5460)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
这是一个控制器。我用http://localhost:8081/CSI/rest/chart/pa/01012013/01012014/getPA
@Path("chart/pa")
public class PAController {
@GET
@Produces(MediaType.APPLICATION_JSON)
@Path("/{firstParam}/{secondParam}/getPA")
public Response GetPA(@PathParam("firstParam") String p1,
@PathParam("firstParam") String p2) throws Exception {
...
我遗漏了什么吗?解决了问题,忘了发布答案 我正在从另一个开发人员导入WAR文件。起初,它运行良好。但是,突然之间,它停止了。我意识到我丢失了构建路径上的Jersey文件。因为它工作了一段时间,我从没想过它会开始这样的行为 我使用的是Eclipse,所以非常简单: 项目资源管理器->右键单击项目->生成路径->配置生成路径 然后: 添加外部罐子 就这么简单
public class ResponseCorsFilter implements ContainerResponseFilter {
@Override
public ContainerResponse filter(ContainerRequest req, ContainerResponse contResp) {
ResponseBuilder resp = Response.fromResponse(contResp.getResponse());
resp.header("Access-Control-Allow-Origin", "*")
.header("Access-Control-Allow-Methods", "GET, POST, DELETE, PUT, OPTIONS, HEAD");
String reqHead = req.getHeaderValue("Access-Control-Request-Headers");
if(null != reqHead && !reqHead.equals("")){
resp.header("Access-Control-Allow-Headers", reqHead);
}
contResp.setResponse(resp.build());
return contResp;
}
}
@Path("chart/pa")
public class PAController {
@GET
@Produces(MediaType.APPLICATION_JSON)
@Path("/{firstParam}/{secondParam}/getPA")
public Response GetPA(@PathParam("firstParam") String p1,
@PathParam("firstParam") String p2) throws Exception {
...