【发布时间】:2015-06-20 11:26:48
【问题描述】:
这是我人生中的第一次编程。 现在我必须使用 Java 创建 Web 服务(Rest,但是当 Soap 适合这种情况时,我尝试使用 Soap 方法)。 从自己的 FTP 服务器中的 XML 数据库中提取数据并返回。
使用 Java 或其他方法从 XML 数据转换到 XQuery。
XML DB →REST Web 服务 (XQuery) →XML DB 返回
或者我想选择更简单的方法。
XML 数据库:文本、图片、URL、姓名、年份。
我尝试创建网络服务几周。 安装软件和插件,并检查是否全部运行;
BaseX, Tomcat 7.0.62 本地主机, 泽西 1.19, Eclipse 4.4 Luna 和插件, JAVA 1.8, JDK 8, JAXB
例如,我阅读了教程: http://www.vogella.com/tutorials/REST/article.html http://www.ibm.com/developerworks/data/library/techarticle/dm-0901rodrigues/
但它没有工作。我遇到了以下异常:
enter code here
`javax.servlet.ServletException: Servlet.init() for servlet Jersey REST Service threw exception
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
java.lang.Thread.run(Thread.java:745)`
根本原因:
enter code here
`com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
com.sun.jersey.server.impl.application.RootResourceUriRules.<init>(RootResourceUriRules.java:99)
com.sun.jersey.server.impl.application.WebApplicationImpl._initiate(WebApplicationImpl.java:1359)
com.sun.jersey.server.impl.application.WebApplicationImpl.access$700(WebApplicationImpl.java:180)
com.sun.jersey.server.impl.application.WebApplicationImpl$13.f(WebApplicationImpl.java:799)
com.sun.jersey.server.impl.application.WebApplicationImpl$13.f(WebApplicationImpl.java:795)
com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:193)
com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:795)
com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:790)
com.sun.jersey.spi.container.servlet.ServletContainer.initiate(ServletContainer.java:509)
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.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
java.lang.Thread.run(Thread.java:745)`
我在寻找有用的资源来帮助我解决这个问题时遇到了问题,我希望得到有关如何继续的建议。
【问题讨论】:
-
这东西很难。通常不适合初学者。
-
你需要别人的帮助,比如教授或者试试topcoder吧
-
我对您的问题投了反对票,但请不要因为我们过滤 SO 上的问题很简单而气馁。所以首先欢迎来到SO!不幸的是,您的问题非常不清楚您要达到的目标以及为什么要做您所描述的事情。听起来您几乎迷路了,我觉得您的问题非常不具体,可能不适合 SO。
-
@dirkk 没错。因为我不确定 Web 服务以及如何创建 Web 服务。我现在已经“Web服务可以将计算机连接到计算机”。我现在必须创建 Web 服务。另外,我对使用 stackoverflow 了解不多。
-
你可能想查看这个初学者指南,也许这可以让你开始:swennenhuis.nl/basexfordummies/BaseX_for_dummies.pdf 但是,我觉得你的目标太高了,应该从编程的基础开始,而不是坚持你必须实现一个网络服务。需要这个的人应该找有经验的人来做这个......
标签: java xml web-services rest xquery