java rest jar包_如何将jar文件添加到java rest api项目中?

我有一个非常简单的REST API,它使用了2.x(Glassfish) . 当我什么都不做但输出你好世界字符串时,它工作 . 但是当我添加几个 jar 并在一行代码中使用它时,会抛出许多类 java.lang.NoClassDefFoundError 错误 . 我没有编译或语法错误 . 错误是很长的,所以如果我在其中提出了大量的垃圾,请原谅 .

我看到很多解决这个问题的方法,但我不明白他们的术语,例如你的类路径需要修复等 .

谁能告诉我如何添加一个在代码中导入的jar文件?

Code

package com.rest.example;

import java.io.File;

import javax.ws.rs.GET;

import javax.ws.rs.Path;

import javax.ws.rs.PathParam;

import javax.ws.rs.core.Response;

import com.infineon.essence_210.api.Component;

import com.infineon.essence_210.api.EssenceDBMgr;

@Path("/testEssence") public class HelloWorld {

@GET

@Path("/{param}")

public Response getMsg(@PathParam("param") String msg){

String output = "Welcome to the world of Rest : "+msg;

Component comp = null;

File file = new File("C:\\MYFILE.xml");

try {

comp = EssenceDBMgr.getInstance().lookupComponent(file); //

} catch (Exception e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}

return Response.status(200).entity(output).build();

}

}

eclipse控制台出错(剪短但问你是否想要全部)

SEVERE:Servlet [exampleServlet]的Servlet.service()在路径[/ RestApi]的上下文中引发异常[org.glassfish.jersey.server.ContainerException:java.lang.NoClassDefFoundError:com / sun / xml / bind / marshaller / NamespacespacePrefixMapper],原因是java.lang.ClassNotFoundException:com.sun.xml.bind.marshaller.NamespacePrefixMapper,位于org.apache.catalina.loader的org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1320) . 位于org.apache的java.security.SecureClassLoader.defineClass(未知来源)的java.lang.ClassLoader.defineClass(未知来源)的java.lang.ClassLoader.defineClass1(本地方法)中的WebappClassLoader.loadClass(WebappClassLoader.java:1173)位于org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:880)的.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2477)org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java) :1290)在org.apache.catalina.loader.WebappClassLoader.load com.infineon上com.infineon.essence.jaxb.Unmarshaller.unmarshal(Unmarshaller.java:108)的com.infineon.com(Unmarshaller.java:88)上的类(WebappClassLoader.java:1173) .essence_210.api.Essence.unmarshal(Essence.java:201)at com.infineon.essence_210.api.Essence.unmarshal(Essence.java:223)at com.infineon.essence_210.api.Essence.unmarshal(Essence.java) :229)com.infineon.essence_210.api.Esi.Essence.EssenceDB上的com.infineon.essence_210.api.Essence . (Essence.java:80)com.infineon.essence_210.api.EssenceDBMgr.unmarshal(EssenceDBMgr.java:223) . .lookupComponent(EssenceDBMgr.java:1331)位于sun.reflect.NativeMethodAccessorImpl.invoke(未知来源)的sun.reflect.NativeMethodAccessorImpl.invoke0(本地方法)的com.rest.example.HelloWorld.getMsg(HelloWorld.java:23)处 . 在org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory $ 1.in的java.lang.reflect.Method.invoke(未知来源)的sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源)在org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher $ 1.run(AbstractJavaResourceMethodDispatcher.java:144)的org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher)中的voke(ResourceMethodInvocationHandlerFactory.java:81) .java:161)org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider $ ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:160)at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java :99)org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389)org.glassfish的org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347) . 在org.glfish.jersey.server.ServerRuntime $ 2.run(ServerRuntime.java:317)的org.gl上的jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102)在org.glassfish.jersey.internal.Errors.process的org.glassfish.jersey.internal.Errors $ 1.call(Errors.java:267)上的assfish.jersey.internal.Errors $ 1.call(Errors.java:271) Ergs.java:315)org.glassfish.jersey.internal.Errors.process(Errors.java:297)org.glassfish.jersey.internal.Errors.process(Errors.java:267)org.glassfish.jersey位于org.glassfish.jersey.server.Server.Dunler.handle上的org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:298)的.process.internal.RequestScope.runInScope(RequestScope.java:317)(ApplicationHandler.java) :1154)org.glassfish.jersey.servet.WebComponent.serviceImpl(WebComponent.java:471)org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:425)org.glassfish.jersey.servlet . ServletContainer.service(ServletContainer.java:383)atOrg.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:336)位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter的org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:223) ApplicationFilterChain.java:291)org.apache上的org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)中的.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)位于org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java) :219)org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)org.apache.catalina.core . org.apache.catalina.valve上的StandardHostValve.invoke(StandardHostValve.java:142)位于org.apache.catalina.valve.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610)的s.ErrorReportValve.invoke(ErrorReportValve.java:79)org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:534)org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1081)at org.apache.coyote.AbstractProtocol $ AbstractConnectionHandler.process (AbstractProtocol.java:658)org.apache.coyote.http11.Http11NioProtocol $ Http11ConnectionHandler.process(Http11NioProtocol.java:222)at org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun(NioEndpoint.java:1566) )atg.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.run(NioEndpoint.java:1523)at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)at java.util.concurrent.ThreadPoolExecutor $ Worker.run (未知来源)org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run(TaskThread.java) :61)在java.lang.Thread.run(未知来源)

restful restful所需要的jar包 ========================================= Restlet, a RESTful Web framework for Java ========================================= http://www.restlet.org ----------------------------------------- Native REST support * Core REST concepts have equivalent Java classes (UniformInterface, Resource, Representation, Connector for example). * Suitable for both client-side and server-side web applications. The innovation is that that it uses the same API, reducing the learning curve and the software footprint. * Restlet-GWT module available, letting you leverage the Restlet API from within any Web browser, without plugins. * Concept of "URIs as UI" supported based on the URI Templates standard. This results in a very flexible yet simple routing with automatic extraction of URI variables into request attributes. * Tunneling service lets browsers issue any HTTP method (PUT, DELETE, MOVE, etc.) through a simple HTTP POST. This service is transparent for Restlet applications. Complete Web Server * Static file serving similar to Apache HTTP Server, with metadata association based on file extensions. * Transparent content negotiation based on client preferences. * Conditional requests automatically supported for resources. * Remote edition of files based on PUT and DELETE methods (aka mini-WebDAV mode). * Decoder service transparently decodes compressed or encoded input representations. This service is transparent for Restlet applications. * Log service writes all accesses to your applications in a standard Web log file. The log format follows the W3C Extended Log File Format and is fully customizable. * Powerful URI based redirection support similar to Apache Rewrite module. Available Connectors * Multiple server HTTP connectors available, based on either Mortbay's Jetty or the Simple framework or Grizzly NIO framework. * AJP server connector available to let you plug behind an Apache HTT
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值