我尝试使用Eclipse(MARS),TOmcat 8.x和Jersey 2.2.2来构建Rest服务 我已经完成了很多链接,或者我自己导入了这些项目。但是当我在服务器上运行项目时,我总是找不到404。
链接:(我已下载样本)
https://github.com/kdmalviyan/RestWithJerseyExample
参考:
信息:至少有一个JAR被扫描用于TLD但尚未包含TLD。为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。 2016年4月26日上午9:09:21 org.apache.catalina.util.SessionIdGeneratorBase createSecureRandom 信息:使用[SHA1PRNG]创建用于会话ID生成的SecureRandom实例花费[209]毫秒。 2016年4月26日上午9:09:21 org.apache.jasper.servlet.TldScanner scanJars 信息:至少有一个JAR被扫描用于TLD但尚未包含TLD。为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。 2016年4月26日上午9:09:21 com.sun.jersey.api.core.servlet.WebAppResourceConfig init 信息:在Web应用程序资源路径中扫描根资源和提供程序类: / WEB-INF / lib中 / WEB-INF /类 2016年4月26日上午9:09:22 com.sun.jersey.server.impl.application.WebApplicationImpl _initiate 信息:启动泽西岛申请,版本'泽西岛:1.19 02/11/2015 05:39 AM' 2016年4月26日上午9:09:23 com.sun.jersey.server.impl.application.RootResourceUriRules SEVERE:ResourceConfig实例不包含任何根资源类。 2016年4月26日上午9:09:23 org.apache.catalina.core.ApplicationContext log 严重:StandardWrapper.Throwable com.sun.jersey.api.container.ContainerException:ResourceConfig实例不包含任何根资源类。 at com.sun.jersey.server.impl.application.RootResourceUriRules。(RootResourceUriRules.java:99) at com.sun.jersey.server.impl.application.WebApplicationImpl._initiate(WebApplicationImpl.java:1359) at com.sun.jersey.server.impl.application.WebApplicationImpl.access $ 700(WebApplicationImpl.java:180) at com.sun.jersey.server.impl.application.WebApplicationImpl $ 13.f(WebApplicationImpl.java:799) at com.sun.jersey.server.impl.application.WebApplicationImpl $ 13.f(WebApplicationImpl.java:795) 在com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:193) at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:795) at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:790) 在com.sun.jersey.spi.container.servlet.ServletContainer.initiate(ServletContainer.java:509) at com.sun.jersey.spi.container.servlet.ServletContainer $ InternalWebComponent.initiate(ServletContainer.java:339) 在com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:605) 在com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:207) 在com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:394) 在com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:577) 在javax.servlet.GenericServlet.init(GenericServlet.java:158) 在org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1238) 在org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1151) 在org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1038) 在org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4996) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5285) 在org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) 在org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1408) 在org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1398) 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) 在java.lang.Thread.run(未知来源)
2016年4月26日上午9:09:23 org.apache.catalina.core.StandardContext loadOnStartup 严重:Web应用程序中的Servlet [Jersey Web Application] [/ CrunchifyRESTJerseyExample]抛出了load()异常 com.sun.jersey.api.container.ContainerException:ResourceConfig实例不包含任何根资源类。 at com.sun.jersey.server.impl.application.RootResourceUriRules。(RootResourceUriRules.java:99) at com.sun.jersey.server.impl.application.WebApplicationImpl._initiate(WebApplicationImpl.java:1359) at com.sun.jersey.server.impl.application.WebApplicationImpl.access $ 700(WebApplicationImpl.java:180) at com.sun.jersey.server.impl.application.WebApplicationImpl $ 13.f(WebApplicationImpl.java:799) at com.sun.jersey.server.impl.application.WebApplicationImpl $ 13.f(WebApplicationImpl.java:795) 在com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:193) at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:795) at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:790) 在com.sun.jersey.spi.container.servlet.ServletContainer.initiate(ServletContainer.java:509) at com.sun.jersey.spi.container.servlet.ServletContainer $ InternalWebComponent.initiate(ServletContainer.java:339) 在com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:605) 在com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:207) 在com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:394) 在com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:577) 在javax.servlet.GenericServlet.init(GenericServlet.java:158) 在org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1238) 在org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1151) 在org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1038) 在org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4996) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5285) 在org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) 在org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1408) 在org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1398) 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) 在java.lang.Thread.run(未知来源)
2016年4月26日上午9:09:23 org.apache.catalina.core.ApplicationContext log 信息:将servlet jersey-serlvet标记为不可用 2016年4月26日上午9:09:23 org.apache.catalina.core.StandardContext loadOnStartup 严重:Web应用程序中的Servlet [jersey-serlvet] [/ RESTfulExample]抛出了load()异常 java.lang.ClassNotFoundException:com.sun.jersey.spi.container.servlet.ServletContainer 在org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1305) 在org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1139) at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:518) 在org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:499) 在org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:118) 在org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1102) 在org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1038) 在org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4996) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5285) 在org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) 在org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1408) 在org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1398) 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) 在java.lang.Thread.run(未知来源)
我是否必须执行任何特殊配置才能在Tomcat 8.0上运行我的服务? 在此先感谢。
此致 学习者。
答案 0 :(得分:0)
http://localhost:8080/RESTfulExample/rest/hello/World
根据您的代码点击此网址 在web.xml中,只有带有rest / *的URL将被视为rest服务,而在你的java类中,你提供了hello,之后你必须传递一些东西{param}
,您的输出将是
泽西岛说世界