我使用Jersey和Guice作为IOC容器。我想知道是否可以将ExceptionMapper与特定URI相关联。这样做的原因是,我希望根据访问的URI对同一异常进行不同的映射。例如,假设我的自定义异常有以下两个异常映射器:
public class MyExceptionMapperForFirstURI implements
ExceptionMapper<MyException> {..return response based on first URI..}
publi
我如何注册一个catch-allexceptionapper,它不拦截WebApplicationException,Jersey为其提供特殊处理
更新:我提交了此功能请求:看看它在课堂上是如何完成的。您不需要注册一个异常apper来捕获Jersey未捕获的所有异常。相反,您让它们冒泡到Servlet容器(例如Tomcat),容器将它们转发到正确的Servlet进行进一步处理
ExceptionMapper的主要和唯一目的是将特定于业务的异常转换为HTTP响应。换句话说,让应用程序控制异常事件流
我将我的项目添加到maven jersey rest服务依赖项中。它工作得很好,但是如果我尝试部署WebLogic11g,就会出现这个错误
[HTTP:101216]Servlet:“jersey serlvet”无法在Web应用程序“PstnIptalv1.war”中启动时预加载。java.lang.LinkageError:加载程序约束冲突:在解析引用类的类加载程序(weblogic/utils/classloaders/ChangeAwareClassLoader的实例)字段“DATETI
标签: Jersey
dropwizardjava.util.logging
我添加了这一行
environment.jersey().register(new LoggingFeature(Logger
.getLogger(LoggingFeature.class.getName()), Level.OFF,
LoggingFeature.Verbosity.PAYLOAD_TEXT, null));
在我的运行(配置,环境)方法中查看和
只有当级别设置为关闭并且我的所有请求/响应消息都记录为错误时,我才会在日志中获取内容,但为什么会出
我正在尝试使用jersey客户端测试post请求,尽管我将头设置为如下所示,但我得到的响应是,内容类型头必须是application/vnd.api+json。请参阅以下代码:
String input = "{\r\n" +
" \"data\": {\r\n" +
" \"attributes\": {\r\n" +
" \"email\": \"emailqwszxwe@
我可以启动grizzly并使用以下代码在其上部署Jersey Web服务
protectedhttpserver create()抛出可丢弃的{
ResourceConfig rc=new PackagesResourceConfig(“com.resource”、“com.provider”);
HttpServer服务器=GrizzlyServerFactory.createHttpServer(uri,rc);
返回服务器;
}
但是有没有办法加载web.xml而不是ResourceCo
我使用以下web.xml在Jersey web应用程序中提供对jsp的支持。唯一的问题是使用多个@PathParam会导致应用程序返回406 Not acceptable。我认为这是web.xml中的过滤器中的一个问题,因为单个@PathParams可以正常工作。我完全错了吗
任何关于修复的建议,我们都将不胜感激
<?xml version="1.0" encoding="UTF-8"?>
<!-- This web.xml file is not required when
此资源方法如何生成json或xml结果
我应该解析requestaccept头并进行if/else分支,还是将这样做
给我
@GET
@Produces({"application/xml", "application/json"})
public String doGetAsXmlOrJson() {
...
}
一个关于如何实现doGetAsXmlOrJson()的示例会很好。As states
@products注释用于指定MIME媒体类型或
资源可以生成并发送回客户端的表示
因
将不带尾随斜杠的路由请求重定向到具有其他匹配路径的匹配控制器的功能。这似乎有效,所以
GET /something
已正确路由到终结点
@Path("/something/")
public Response doSomething() {
...
}
通常情况下,这很好,这是我所期望的行为,但在某些情况下,我希望以不同的方式对待这两者
例如,我有一个端点服务于动态html,它包含静态资源的相对路径。当请求没有尾随斜杠时,将删除资源404
我知道我可以在html中切换到绝对路径,但我
我在我的资源类中声明了以下方法
@Path("{id:\\d+}")
@PUT
@Consumes({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
public Response putPerson(@PathParam("id") long id, Person person) {
logger.debug("Going to update the person with
我想学习使用ApacheCXF的RESTfulWeb服务。除了官方的CXF网站外,您能推荐其他参考资源吗?在哪里可以通过示例使用了解所有这些注释
还有一个问题是“这些注释是否会因apache CXF或Jersey等实现框架或任何其他框架的不同而有所不同?”查看Jersey用户指南-其中有一节介绍JAX-RS,它解释了这些注释并应与任何其他JAX-RS实现配合使用:查看Jersey用户指南-其中有一节介绍了JAX-RS,解释了这些注释并应与任何其他JAX-RS实现配合使用:
这些注释是否会因apa
我使用Jersey创建了一些REST服务,这些服务使用SPENGO进行身份验证。我正在使用Jersey客户端创建验收测试。我想知道如何使用Jersey客户端设置SPENGO头。我查看了过滤器,但并不真正理解它。如果有人能提供一个代码示例,我们将不胜感激
标签: Jersey
resteasyjboss-eap-6
我需要在JBoss EAP 6.3中禁用默认的rest轻松搜索。
我需要在JBoss以及weblogic和websphere中部署相同的EAR,因此无法对特定于JBoss的web.xml进行更改
Java类:
package com.first;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
@Path("/hel
我希望我的AOP建议能够处理当前正在执行的Jersey资源的HttpContext。示例提到用户可以获得请求和身份验证等,但是如何获得通知上下文中的任何值呢
当前我的资源定义如下所示:
@Singleton
@Path("/persist")
public class ContentResource {
@PUT
@Consumes({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XM
我正在使用com.yammer.dropwizard.config.Environment addProvider方法在Jersey中注册提供程序。我也有一个自定义提供程序,它执行与dropwizard自己的MessageBodyWriterProvider类似的任务
Jersey似乎选择了内置MessageBodyWriter,而不是我的自定义MessageBodyWriter。因此我认为,如果我删除已注册的内置提供程序并注册我自己的,它将正常工作
是否有方法删除已添加的具有类名的提供程序或其
下面是我的webservice方法的签名,它接受带有content-type=multipart/form-data的附件
@POST @Path("/saveimg")
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response saveAttachment( @FormDataParam("files") InputStream fileInputStream,
标签: Jersey
jax-rsmedia-typehttp-status-code-415
我有一个jax-RS端点,我正试图用text/xml-req来命中它。我得到一个http 415,我不明白为什么。这是信息。有什么想法吗?谢谢
@Path("/bid")
@Produces("text/xml;charset=ISO-8859-1")
@Consumes({"text/xml", "application/xml"})
@Resource
public class BidController {
@RolesAllowed("blah")
@POST
public Respo
如何在web.xml的jersey 2.22.1中配置声明性绑定,而不使用应用程序基类并以编程方式注册它?您可以声明一个来注册特定的(逗号分隔的)资源/提供程序/功能。比如说
<init-param>
<param-name>jersey.config.server.provider.classnames</param-name>
<param-value>
org.foo.myresources.MyDogReso
我在POM中有以下依赖项
The service Code looks like below. I have defined @PATH in main class.
@POST
@Timed
@Produces(MediaType.MULTIPART_FORM_DATA)
@ResponseStatusOverride(httpStatus = 202)
public MetaLinks CreateEdmUpload(@ApiParam(hidden = t
JAX-RS(Jersey)无法反序列化以下内容:
{
"coverageStores": ""
}
现在coverageStores应该是一个对象,所以我希望json是:
{
"coverageStores": null
}
相反,但事实并非如此
有没有办法告诉JAX-RS像处理空对象一样处理该空字符串?我看到了关于接受空字符串作为空对象,但我希望在理想情况下将其与注释一起使用。FWISW,我最后是这样做的:
private static JacksonJsonProvider jacks
标签: Jersey
apache-poiaws-api-gatewaytomcat8xlsx
我有一个使用Jersey编写的REST端点,看起来像这样,我试图上传一个excel文件,并使用ApachePOI读取其内容
@Path("/batch")
@POST
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Produces(MediaType.APPLICATION_JSON)
public Response batchUploadAssets(@HeaderParam(HttpHeaders.AUTHORIZATIO
阅读的文档使我认为ClientFilters是按照添加顺序处理的。然而,我看到了相反的情况。以下是我正在测试的代码,与文档中显示的代码类似:
ClientFilter filter1 = new ClientFilter() {
@Override
public ClientResponse handle(ClientRequest cr) throws ClientHandlerException {
System.out.println("Modify Req
我想将jax-rs注释接口(客户机代理)的方法参数绑定到一个pojo类中。作为jax-rsim的一个实现,使用Jersey。我如何才能实现与RestEasy@Form annotation相同的功能,而不是jersey?我没有发现任何有用的东西
Resteasy示例:
public class MyForm {
@FormParam("stuff")
private int stuff;
@HeaderParam("myHeader")
private String
以下是我在Jersey中使用的方法签名,当我调试/运行程序时,我得到的错误如下:
资源类com.xxxxxx.xxxxx.xxxxxx.xxxxxx.xxxxxx上的[FATAL]方法public javax.ws.rs.core.Response com.xxxxx.xxxxx.xxxxx.xxxxxx(java.lang.String、java.lang.String、java.lang.String、javax.ws.rs.container.ContainerRequestContext
我一直在寻找解决这个问题的办法,但没有成功。我发现的最新帖子可以追溯到2010年。我正在使用jersey 1.12和嵌入式grizzly 2.2.1
如果我理解正确,除非我将jersey资源部署在servlet容器下,否则我无法将HttpServletRequest注入其中。有解决办法吗?在我的例子中,我们有一个独立的Jersey集群作为负载平衡器在nginx后面运行。
因此,解决方法是将远程地址作为请求头传递,请求头也可以从Jersey轻松访问:
proxy_set_header X-
我用的是1.13号球衣和弹簧。我有一个ContextResolver,定义如下:
@Provider
public class ThemeSourceContextResolver implements ContextResolver<ThemeSource> {
@Context private HttpServletRequest request;
@Override
public ThemeSource getContext(Class<?&g
我在Jetty 9.0.4中运行Jersey 2.2 Servlet,以服务REST请求
大多数情况下,一切都很好,请求都得到了满足,但我从未见过泽西岛课程的日志。我找不到任何文件表明我需要牺牲什么鸡来实现泽西2.2
所以我的第一个问题是-我需要做什么才能让Jersey生成一些日志
当请求确实运行错误时(例如,因为无法解析Json请求体),Jersey将抛出一个ContainerException,并显示类似于“无法反序列化java.util.ArrayList实例的START_对象令牌”在这一
我使用glassfish4.0作为我的应用服务器。glassfish的RESTWebService实现是Jersey。据我所知,Jersey已经升级到2.7,但glassfish-one的版本是2.0
如何在我的glassfish4.0应用服务器中将Jersey升级到2.7?还有其他JavaEE实现,比如JSF
通常weblogic 12c不支持jax rs 2.0,但借助weblogic自带的jax rs共享库,可以将jax rs版本从1.1升级到2.0。问题是库的实现是jersey 2.5,它不能满足我的需要。我在weblogic上找到了一个关于升级jersey版本的链接,看起来有点复杂。用我的运动衫版本2.13替换运动衫jars 2.5是否足够?我还需要做什么吗?我创建了一个简单的maven项目,用2.19 jersey共享库为weblogic生成war文件。
我已经用weblogic 12.1.
我正在使用Jersey客户端v1.18.1。
我正在对BE中的API执行GET请求。
通过使用嗅探器,我看到响应正确地到达了客户端,但是一旦响应被解析,它看起来就像是客户端截取了它(就内容大小而言,响应很长)。
是否有配置可用于在客户端中启用长响应?
还有其他想法吗
谢谢
M.我必须更改输出过滤器的日志大小的输出。除非你做这样的事情,否则它不会向你展示很多东西。~200k是一个相当夸张的代码,但它不是生产代码,所以我不在乎
public static final Logger logger =
在将swagger.json加载到ui之前,是否有方法编辑它。
我的要求是在将swagger.json加载到UI之前对其进行操作,swagger团队是否提供了任何钩子来实现这一点您应该能够在将json加载到UI之前对其进行操作
/api docs端点是Swagger为文档服务而调用的。您可以实现在服务端点时发生的自定义功能
例如(在Node.JS中):
默认url是/api docs,因此您可以覆盖它。此外,您还可以通过添加带有端点值的查询参数url,将Swagger文档拆分为多个端点
例如,您
我有以下项目:
网络
休息
服务
有谁能告诉我,在什么地方保存类的代码最好,而扩展了Jersey的org.glassfish.Jersey.server.ResourceConfig.Wether类。它应该在Web project或Rest project中?在我的项目中,我将ResourceConfig类保持在ResourceClass(实际的RESTClass)附近。在您的案例中,哪个应该是Rest项目
我这样做的原因如下
ResourceConfig控制资源的加载方式,因此我认为将它
我试图熟悉JAX-RS,下面是我的代码片段
WebTarget target; // this object reference was created successfully
public Client[] getClients() {
return target.request().get(Client[].class); // NOTE target is not null
}
这是记录的异常
Caused by: javax.ws.rs.NotFoundExce
标签: Jersey
analyticsvisitor-statistic
如何使用google analytics在我的主页上显示访问者数量
我希望这在我的Jersey web应用程序中
谢谢
去
单击“创建项目”
创建凭据-OAuth 2.0客户端ID
选择应用程序类型:Web应用程序
在IAM和ADMIN下,选择“服务帐户”并创建服务
帐户
选择角色到项目->所有者
选中“提供新私钥”并选择P12。(它将下载此文件)
复制此服务帐户id
登录到您的谷歌分析帐户
单击左下角的“管理”
单击“用户管理”选项卡
将此服务帐户id粘贴到“添加权限”字段中,然后单击“添
我正在使用swagger来记录我的restapi
我不想自动生成文档,所以我使用带注释的swagger JAXR
@GET
@Path("/news/{id}")
@Produces(MediaType.APPLICATION_JSON)
@ApiResponses(value = {
@ApiResponse(code = 200, message = "News found", response = NewsEntry.class)})
NewsEntry是我的模型,它
我正在实现jersey restful web服务,以从JavaBean类获取application/json mime类型。下面给出的是资源类代码
@GET
@Produces({"application/json"})
public synchronized Flights getFlightList() {
return myFlights;
}
这里,如果返回对象Flight仅在Flight使用jaxb编码时转换为json对象。对于普通的
这里怎么了
The ResourceConfig instance does not contain any root resource classes.
Dec 10, 2010 10:21:24 AM com.sun.jersey.spi.spring.container.servlet.SpringServlet initiate
SEVERE: Exception occurred when intialization
com.sun.jersey.api.container.Conta
我认为这是不可能的,但在扔掉它之前我需要确认
我有一个使用此模式的GET REST端点
/networks/{networkId}/publishers/{publisherId}/ratings
我面临的问题是,publisherId的id中可能有“/”,就像id可以是opt/foo/bar一样,我们无法控制这个id,它是由我们的客户提供给我们的
所以
/networks/68/publishers/opt/foo/bar/ratings-显然不起作用,获取url不正确。
/网络/68/出版
下面是使用Grizzly容器部署示例资源的示例。
它使用一个定义为类的资源,相反,我想定义一个带有注释的接口,并让资源类实现该接口
现在的问题是Grizzly抱怨它找不到资源:
com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
在主类上,其中“com.mycompany.pack”是包含实现类的包
标签: Jersey
jax-rsjava-ee-6security-context
我正在使用JavaEE、JAX-RS和Jersey编写一个API。通过这样做,我实现了自己的安全上下文和安全过滤器
看看像这样的问题()我已经看到了@Secure注释,但是它做什么呢?我希望这是一个注释,可以查询安全上下文的IsSecurity方法,就像@RoleAllowed检查用户是否有权访问特定方法一样。如果是这样的话,有没有这样一种方法可以通过注释来实现呢?或者我一直坚持使用@Context来获取安全上下文,并且仅仅从中获取。安全的@Secure注释似乎是一种自定义注释。JAX-RS/J
我已经从Jersey 1.7升级到2.16,Jersey似乎无法找到我的资源(见下面的堆栈)。知道发生了什么事吗?我尝试在扩展ResourceConfig的自定义应用程序类中初始化,但没有成功
2015-02-27 10:48:58,276 WARN main [AbstractLifeCycle]- FAILED Resources: java.lang.NullPointerException
java.lang.NullPointerException
at org.glass
泽西岛的@消费和@生产有什么不同?我对Jersey Restful服务感到困惑。@使用的是指定资源从客户端接受的MIME类型@products,但是,指定资源为客户端提供的MIME类型。例如,资源可能接受应用程序/json(@消费)并返回文本/plain(@产生)
完美的答案!
在使用Jersey客户端API时,是否可以使用Jackson作为JSON数据的序列化器/封送器,而不是JAXB
如果是这样的话,如何配置它?好的,我发现了,它毕竟很简单:
ClientConfig cc = new DefaultClientConfig();
cc.getClasses().add(JacksonJsonProvider.class);
Client clientWithJacksonSerializer = Client.create(cc);
JacksonJsonPro
我想在使用WebTarget调用Restful服务时记录未知的传入JSON属性。返回值应为JSON格式。我正在考虑为我的ObjectMapper设置一个反序列化ProblemHandler。但是在哪里以及如何设置呢
WebTarget tgt = ...;
DummyResult result = tgt.request()
.post(Entity.entity(callParam, MediaType.APPLICATION_JSON_TYPE),
DummyResult.c
如我所见,我可以使用autosearch annotation@Service来创建singleton,通过@Inject来使用它。比如:
@Service
class MyService {
//.....
}
@Service
class MyOtherService {
@Inject MyService myService;
//.....
}
但希望使用依赖于环境的选项创建服务。
我可以使用AbstractBinder这样做:
final R
我使用Urinfo访问RESTfulWeb服务中的查询参数,如下所示
@GET
@Produces("text/plain")
@Path("/association")
public Response Association(
@Context UriInfo uriInfo){
String clinicianId = uriInfo.getQueryParameters().g
标签: Jersey
jax-rsquery-parameters
我有一个Rest服务接受QueryParam,其中的值有&以及如何传递它并将其作为查询参数接受
这里我附上我使用的源代码。
我也打电话给你
http://localhost:7001/Rest/GetInfo?type=J&Y
as & is the seperator its taking only till J.
if i use "\" then its not working.
http://localhost:7001/Rest/GetInfo?type=J\&
我想在java.net/jira中对jersey提出一个问题:
但我看不到任何匿名注册或创建问题的方法。问题可以在其网站上为Jersey打开。链接已断开。说java.net网站已经关闭了hanks@VisruthCV我编辑了答案,指出了Jersey目前跟踪问题的地方。
标签: Jersey
jersey-2.0jersey-client
我有一个Jersey客户端和服务器。我看到这种行为:
在客户端,我发布了一个请求
在服务器中,我看到请求并开始处理它
然后,在服务器仍在处理请求时,我突然收到一个状态为504的空响应
我已经将客户端属性设置为读取和连接超时时间远远高于我得到空响应的时间,经过进一步分析-网关超时是由于客户端和服务器之间的负载平衡器造成的
在负载平衡器中重新配置超时解决了该问题
标签: Jersey
jax-rsjdeveloperweblogic11goid
我正试图从头开始一个基于Jersey/1.7的项目(而不是复制现有项目并在上面添加新代码,这是我的客户通常做的),以便了解东西是如何工作的。我被困在一个非常早期的阶段,试图处理一个简单的HTTP请求:
package com.example.foo.view.rest;
import javax.ws.rs.Path;
import javax.annotation.security.RolesAllowed; // package javax.annotation.security does
上一页 1 2 3 4 5 6 7 8 9 ...
下一页 最后一页 共 15 页