Tag: resteasy

RESTEasy Mock vs. Exception Mapper vs. Context

RESTEasy模拟框架在没有exception映射器的情况下工作正常 – 收到请求并返回具有预期内容的实体。 注册exception映射器并强制exception后,当RESTEasy的内部调用ResteasyProviderFactory.getContextData(type)时调用失败,返回null,导致意外的错误消息:“无法找到类型的上下文数据:javax.servlet.http.HttpServletRequest” 。 无法在网上任何地方找到RESTEasy模拟加上exception映射器的任何示例,也无法找到有关错误的任何有用信息。 客户类: package com.foo; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = “foo-type”, propOrder = { “name” }) @XmlRootElement(name = “foo”) public class Foo { protected String name; public String getName() { return name; } public void setName(String value) { this.name = value; } } 对象工厂: package […]

如何仅在特定方法中使用RESTEasy PreProcessInterceptor?

我正在编写REST API,使用RestEasy 2.3.4.Final。 我知道拦截器将拦截我的所有请求,并且PreProcessInterceptor将是第一个(在所有事情之前)被调用。 我想知道如何在调用特定方法时调用此Interceptor。 我试图使用PreProcessInterceptor和AcceptedByMethod,但我无法读取我需要的参数。 例如,我只需要在调用此方法时运行我的Interceptor: @GET @Produces(“application/json;charset=UTF8”) @Interceptors(MyInterceptor.class) public List listByName(@QueryParam(“name”) String name) {…} 更具体地说,我需要在所有具有@QueryParam(“name”)方法中运行我的拦截器 在它的签名上,这样我就可以抓住名字并在所有事情之前做点什么。 可能吗? 我试图捕获Interceptor中的“name”参数,但我无法做到这一点。 有人可以帮帮我吗?

找不到类型的响应对象的MessageBodyWriter:java.util.Array媒体类型列表:text / html – in Resteasy

我正在开发RESTEasy示例。 在这个例子中,我使用所有最新的依赖项并部署om tomcat 8.x版本。 我可以成功部署应用程序,但是当我启动url时: http:// localhost:8080 / RESTfulExample / rest / restwebservice / list ,我看到以下错误即将发生。 请指导这里出了什么问题。 org.jboss.resteasy.core.NoMessageBodyWriterFoundFailure: Could not find MessageBodyWriter for response object of type: java.util.ArrayList of media type: text/html at org.jboss.resteasy.core.ServerResponseWriter.writeNomapResponse(ServerResponseWriter.java:66) at org.jboss.resteasy.core.SynchronousDispatcher.writeResponse(SynchronousDispatcher.java:466) at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:415) at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:202) at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:221) at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56) at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at […]

来自客户端的超时webservice呼叫

我正在使用RestEasy Client调用Web服务。 一个要求是,如果呼叫运行超过5秒,则中止/超时。 我如何使用RestEasy Client实现这一目标? 我只看到服务器端超时,即如果在一定时间内未满足,则Rest Easy websevice将超时请求。

如何生成WADL文件?

我使用RESTeasy实现编写了RESTful Web服务,并将EJB转换为JSON。 现在我正处于开发客户端的道路上。 我正在使用Netbeans。 我怎样才能生成WADL文件? 之后我会生成客户端存根没有任何问题。 拜托,你能告诉我怎么做吗? 或许你知道不同的简单方法。 非常感谢! 阿尔乔姆

GAE上的Resteasy multipart / data-form文件上传

我正在尝试使用resteasy 2.0.1.GA将带有文件的表单上传到GAE应用程序中,使用建议如何使用jax-rs上传多部分/表单文件? 的index.html Rest.java @Path(“”) public class Rest { @POST @Path(“/rest/upload”) @Consumes(“multipart/form-data”) public String postContent(@MultipartForm UploadForm form) { System.out.println(form.getData().length); System.out.println(form.getName()); return “Done”; } } UploadForm.java public class UploadForm { private String name; private byte[] data; @FormParam(“name”) public void setPath(String name) { this.name = name; } public String getName() { return name; } @FormParam(“file”) public void […]

设置响应标头不使用filter – RESTeasy

我正在尝试使用RESTeasy在RESTful端点的响应中设置标头值。 我知道我可以使用@HeaderParam读取头参数,但我想更改响应的头参数的值。 如何在不使用filter的情况下执行此操作?

无法找到MessageBodyReader

我有这个界面: @Path(“inbox”) public interface InboxQueryResourceTest { @POST @Path(“{membershipExternalId}/query”) @Consumes(MediaType.APPLICATION_XML) @Produces(“multipart/mixed”) public MultipartOutput query(@PathParam(“membershipExternalId”) final String membershipExternalId, @QueryParam(“page”) @DefaultValue(“0”) final int page, @QueryParam(“pageSize”) @DefaultValue(“10”) final int pageSize, @QueryParam(“sortProperty”) final List sortPropertyList, @QueryParam(“sortReversed”) final List sortReversed, @QueryParam(“sortType”) final List sortTypeString, final InstanceQuery instanceQuery) throws IOException; } 我已经实现了返回MultipartOutput的方法。 我从Fiddler发布了一个xml查询,我收到的结果没有任何问题。 但我已经为同一个界面做了集成测试,我发送相同的对象,我把响应像: final MultipartOutput multiPartOutput = getClient().query(getUserRestAuth(), 0, 25, null, […]

JBOSS 7.1.0错误 – 无法找到类org.jboss.resteasy.core.AsynchronousDispatcher的公共构造函数

我正在尝试将我的基于Spring MVC的REST应用程序迁移到Jboss 7.1.0。 在启动时,Jboss初始化显示一切都已正确启动,所有war文件都已成功部署。 我在Spring MVN和Jboss的RestEasy服务之间进行集成时遇到了很多问题,我想知道这是否是jboss resteasy与Spring MVN之间的另一个冲突。 当我向REST服务发出请求时,我收到以下错误: 12:52:31,541 INFO [org.springframework.web.context.ContextLoader] (MSC service thread 1-5) Root WebApplicationContext: initialization completed in 3035 ms 12:52:31,845 INFO [org.jboss.web] (MSC service thread 1-5) JBAS018210: Registering web context: /MyRestService 12:52:31,875 INFO [org.jboss.as] (MSC service thread 1-5) JBAS015874: JBoss AS 7.1.0.Final “Thunder” started in 53526ms – Started 390 of 468 […]

JAX-RS资源生命周期性能影响

我知道默认情况下,JAX-RS端点生命周期是每个请求一次 ,因此可以将请求特定信息注入到实例中。 我们还可以创建一个端点Singleton,意味着每个应用程序一次 ,其中请求特定信息不能注入到实例中,而是可以将其注入到请求的方法中。 1.所以我想知道哪种方法在性能方面更好 ,无论是每次请求还是每次应用一次 。 2.我还想了解这些方法的优缺点,以及注入请求的具体信息 3.您希望在API应用程序中使用哪种方法 注意:到目前为止,我一直在使用按请求一次的方法,但我总是怀疑这是否有效,绝对是使编码更容易和可重用。