草庐IT

java - 在 Jersey 中使用名称绑定(bind)注释

@NameBinding注释如何在Jersey中工作以对特定资源方法或资源类应用过滤器?考虑以下注释:@NameBinding@Retention(RetentionPolicy.RUNTIME)@Target({ElementType.METHOD,ElementType.TYPE})public@interfaceSomeAnnotaion{}它是如何工作的? 最佳答案 名称绑定(bind)名称绑定(bind)是一个概念,它允许对JAX-RS运行时说特定的过滤器或拦截器将仅为特定的资源方法执行。当过滤器或拦截器仅限于特定资源方法

java - 使用 jersey-1.7 在 Google Appengine 上上传多部分文件

我使用Jersey在GoogleAppengine上编写了一个应用程序来处理简单的文件上传。这在jersey1.2上工作正常。在以后的版本(当前1.7)中,引入了@FormDataParam来处理多部分/表单输入。我正在使用jersey-multipart和mimepull依赖项。似乎新的做法是在AppEngine中创建临时文件,我们都知道这是非法的...自从Jersey现在应该与AppEngine兼容后,我是否遗漏了什么或做错了什么?@POST@Path("upload")@Consumes(MediaType.MULTIPART_FORM_DATA)publicvoidupload

java - 在 apache tomcat 7.0 上运行时出现 jersey 2.7 问题

我正在使用apachetomcat7.0和eclipse创建一个Jersey应用程序。我在eclipse中创建了一个动态web项目,并将资源文件定义为:-importjavax.ws.rs.GET;importjavax.ws.rs.Path;importjavax.ws.rs.Produces;importjavax.ws.rs.core.MediaType;//PlainoldJavaObjectitdoesnotextendasclassorimplements//aninterface//TheclassregistersitsmethodsfortheHTTPGETreque

java - 使用 Jersey 2.13 时出现 ClientAbortException

我在我的Web应用程序中使用Jersey2.13来异步检索数据。在某些情况下,请求需要一些时间(即执行复杂报告时),直到它们的响应返回给客户端。当客户端不等待异步响应(离开页面、关闭浏览器等)时,抛出ClientAbortException。此行为符合预期,但它正在用堆栈跟踪淹没我的日志文件,因为在响应返回之前取消的每个异步请求都会打印堆栈跟踪。堆栈跟踪看起来像这样:Oct15,20142:25:23PMorg.glassfish.jersey.server.ServerRuntime$ResponderwriteResponseSEVERE:AnI/Oerrorhasoccurred

java - 自定义 Jersey 参数抛出异常时的MultiException

注意:重现此问题的所有代码可在https://gist.github.com/SrikanthRao/c9fc35e6fe22a74ab40c获得。http://localhost:8080/date/bean?date=2014-13-23(使用BeanParam)产生"{"code":500,"message":"处理您的请求时出错。它已被记录(ID48be9aa43bd49547)。"}"没有将MultiExceptionMapper添加到Jersey。如果我将MultiExceptionMapper添加到jersey,上面的url结果为“日期不是YYYY-MM-DD格式或无效”

java - 使用 Joda DateTime 作为 Jersey 参数?

我想在Jersey中使用Joda的DateTime作为查询参数,但Jersey不支持开箱即用。我假设实现InjectableProvider是添加DateTime支持的正确方法。有人可以为我指出DateTime的InjectableProvider的良好实现吗?或者是否有值得推荐的替代方法?(我知道我可以在我的代码中从Date或String进行转换,但这似乎是一个次要的解决方案)。谢谢。解决方案:我在下面修改了Gili的回答,以在JAX-RS而不是Guice中使用@Context注入(inject)机制。更新:如果您的服务方法参数中未注入(inject)UriInfo,这可能无法正常工

java - 如何在 tomcat 7 的 Jersey 2 中使用异步回调

如何在tomcat服务器中使用jersey2的异步回调。我在Jersey手册中找到了一些示例:https://jersey.java.net/documentation/latest/user-guide.html#d0e8496.但是当我试图用这个测试下面的代码时,问题就出现了:https://jersey.java.net/documentation/latest/user-guide.html#d0e8615Jersey2手册中提到的代码。-----------------------------------------------------------------------

java - 防止 Jersey 客户端在发布大文件时导致内存不足错误

当使用Jersey将大文件作为InputStream放置时客户端,似乎文件的全部内容在发送到服务器之前被缓冲到内存中。当JVM耗尽堆空间时,这会导致大文件出现问题。如何在Jersey客户端中防止这种行为?服务器端的JAX-RS资源方法在发送数据时似乎没有这个问题。例如:WebResourcedataUploadResource=buildDataUploadResource();dataUploadResource.type(getMimeType()).put(getLargeInputStream()); 最佳答案 为了防止这种

java - 在 osgi 中使用 jersey-client 时出错 - 未提供生成器

当我尝试从Jersey客户端创建WebTarget时出现以下异常。我的代码Clientclient=ClientBuilder.newClient();WebTargetbaseTarget=client.target("http://127.0.0.1:9000");异常堆栈跟踪java.lang.IllegalStateException:Nogeneratorwasprovidedandthereisnodefaultgeneratorregisteredatorg.glassfish.hk2.internal.ServiceLocatorFactoryImpl.internal

java - 使用 Jersey 返回 String 的 JSON 表示

我正准备使用Jersey设置REST-Web服务。目前我对JSON中字符串或其他值类型的正确表示有点困惑。这里有两个片段:@GET@Path("user")@Produces(MediaType.APPLICATION_JSON)publicUseruser(){returnnewUser("reini","admin");}在浏览器中调用此方法将显示一个“良好”的JSON字符串,如下所示:{"name":"reini","role":"admin"}我的第二种方法是这样的:@GET@Path("hello/{name}")@Produces(MediaType.APPLICATION