我有一个springboot应用程序,它有一个使用Jersey/JAX-RS注释实现的公共端点。
Hystrix Dashboard是通过@EnableHystrixDashboard启用的,HystrixMetricStreamServlet注册在“/Hystrix.stream”下(如下面的示例所示)
访问…/hystrix.stream时,hystrix命令的度量数据可用,但初学者仪表板页面“/hystrix”为空给出HTTP 404状态代码
你知道为什么不能用球衣穿吗
如果SpringW
标签: Jersey
inputstreamputjersey-clienthttp-status-code-400
在我的代码中,我试图反复构建一个客户端,并向远程端点发送一个输入流:
对于(int i=0;i请检查您的输入流。在我看来,您有以下问题:
在第一次请求时,inputstream处于有效状态,数据可用
在以下请求中,您的流已经结束。因此没有任何内容可读取,您发送的是jersey处理为“错误请求”的空数据
所以试着使用一个inputstream,你可以在每次循环迭代中倒带它
但这可能会破坏使用流的全部意义。谢谢你的回答。事实上,问题正是你所描述的。在第二次迭代中,inputstream提供空数据…如
在我的代码中,我可以看到我正在返回一个有效的对象。此对象恰好包含“用户注释”的集合。在我通过JAX-RS返回响应对象之前,该集合是有效的,并填充了条目。但是,当GET请求完成时,该集合被一个布尔值神秘地替换,该布尔值指示集合是否为空
只是重申一下。有效的非空集合,在GET请求中作为带字段“empty”的布尔值返回
有什么好处?我知道引擎盖下一定有魔法,但它一直在逃避我
@GET
@Path("{issue: \\w+-\\d+}")
@Produces(MediaType.APPLICATION
我在将JSON序列化为Java对象时遇到了一些问题。我尝试从API中检索对象,然后将其存储到Java对象中,但对象始终具有默认的初始化值,而不是我从服务器请求的值。我的客户端API调用如下所示:
JerseyClient client = new JerseyClientBuilder().build();
JerseyWebTarget target = client.register(new JacksonFeature()).target("http://localhos
在我的跑步方法中,我有:
environment.jersey().register(DateTimeParamConverterProvider.class);
但在应用程序启动时,我得到:
ERROR [2015-09-04 15:02:15,405] com.sun.jersey.spi.inject.Errors: The
following errors and warnings have been detected with resource and/or
provider cl
我目前正在使用Jersey返回JSON。我如何返回JSONP呢?例如,我当前的RESTful方法是:
@GET
@Produces(MediaType.APPLICATION_JSON)
public List<Order> getOrders() {
return OrderRepository.getOrders();
}
@GET
@产生(MediaType.APPLICATION_JSON)
公共列表getOrders(){
返回OrderRepository.ge
我有一个Jetty 6.1.9环境,我试图引导一个“爆炸式”战争风格的上下文,但是,我得到了NoClassDefFoundError错误
Jetty env的引导方式如下所示:
public class MyServer {
public static void main(String[] argv) {
jetty_default = jetty_default + "/web-content/jetty-6.1.9";
String jetty_h
我编写了一个标准的多部分文件上传restful服务。当我使用curl测试它时,我不断收到400个错误的请求。结果是有很多原因,但我总是收到同样的400个错误请求。例如,我的应用服务器的临时目录不存在。我希望日志中会抛出一些较低级别的异常,但我什么也看不到。我对Jersey不太熟悉,正在寻找关于如何处理此问题的任何建议,以仍然返回400/错误请求,但不知何故记录更多信息。有什么想法吗?我使用的是jersey 1.x如果在您自己的方法中发生错误,您可以使用作为方法的返回类型。然后可以指定状态代码和返
从我的JAX-RS(Jersey)资源中,我需要获得JerseyServlet的基本URL,该Servlet“发布”了该资源。我尝试按所述注入ServletContext,然后执行以下操作:
return servletContext.getResource("/").toString();
获取此资源的JerseyServlet的“基本”URL
但是,上面的代码返回如下值:
jndi:/localhost/jax-rs-tomcat-test/
在那里我期待着更像:
http://loca
我正在尝试将Java客户端HBase转换为Jboss Web应用程序。当我创建用于HBase访问的独立应用程序概念验证(POC)时,它不需要集成jersey库
但当我在JBossWeb应用程序中集成相同的POC模块时,它抛出了以下异常
13:37:20,261 WARN [org.jboss.modules] (http--0.0.0.0-8080-2) Failed to define class org.apache.hadoop.hdfs.web.resources.UserProvid
我们使用Jetty作为Servlet容器,使用Jersey作为jax-rs实现。我们在实验室中没有遇到任何问题。在Prod中,我们在PUT和GET操作中都遇到间歇性http 404错误。这是jetty标准错误日志中的日志行示例
/opt/apps/someapp/deploymenthome/logs/2016_02_15.stderrout.log:2016-02-15 10:54:42.995:DBUG:oejs.HttpConnection:qtp1968511784-22 - /some
有时,我希望返回一个大的(数MB)二进制对象作为JAX-RS资源方法的响应。我知道对象的大小,我希望在响应上设置内容长度头,我不希望使用分块传输编码
在Jersey 1.x中,我通过自定义MessageBodyWriter解决了这个问题:
public class Blob {
public InputStream stream;
public long length;
}
@Provider
public class BlobWriter extends MessageBod
作为标题,我想问大家“我可以在我的商业应用中使用泽西吗?”。
我读过,但我很困惑
谢谢。可能重复的Jersey是与Glassfish相同的CDDL+GPLv2组合,Glassfish已经有了答案。可能重复的Jersey是与Glassfish相同的CDDL+GPLv2组合,Glassfish已经有了答案。
标签: Jersey
jersey-2.0java-iomoxy
我创建了一个新的ContainerRequestFilter来打印任何传入的新请求有效负载,但前提是HTTP服务器是使用DEBUG\u模式参数启动的。当我在未处于DEBUG\u模式时向REST资源发送请求时,一切正常。
执行此筛选器时:
@Provider
@Priority(Priorities.USER)
public class InboundDebugFilter implements ContainerRequestFilter {
@Override
public void
标签: Jersey
Jwt
jax-rsmedia-typehttp-accept-header
如果我们希望服务器返回JWT响应,那么@products注释中可以使用什么媒体类型
对于应用程序json,我们可以使用
@Produces({MediaType.APPLICATION_JSON})
但是如果我们希望它是应用程序/jwt呢
如果我们在下面使用它,服务器将返回一个错误,说明“未找到响应类的消息正文编写器…”
我想试试这样的东西:
@GET
@产生(“应用程序/jwt”)
公共响应验证(…){
字符串jwt=。。。;
返回Response.ok(jwt.build();
}
这
我需要拦截Jersey资源调用,并在每次ResourceMethod调用之前/之后运行代码。我有一个ModelProcessor,能够拦截呼叫:
for(Resource resource: resourceModel.getResources()) {
for (ResourceMethod resourceMethod : resource.getResourceMethods()) {
Resource.Builder resourceBuilder = Resou
我已使用未经授权的异常扩展了WebApplicationException:
public class UnauthorizedException extends WebApplicationException {
我的REST类扩展了实现authCheck的基类,authCheck是一个子类方法:
try{
authCheck();
RecordingList recordings = CODIRecording.getRecordings(type, timeframe);
r
使用ApacheConnector配置我的Jersey客户端时遇到问题。它似乎忽略了我在WriterInterceptor中定义的所有请求头。当我在WriteTo(WriteInterceptorContext)周围的WriteInterceptor中设置断点时,我可以看出调用了WriteInterceptor。与此相反,我可以观察到,InputStream的修改被保留
下面是一个可运行的示例,演示了我的问题:
公共类ApacheConnector问题演示扩展了Jersey测试{
私有静态最终记
我想实现一个JsonP拦截器,我正在使用Jersey。
(我正在使用带有长轮询的AsyncResponses,我的REST方法返回'void',因此我不能用@JSONP注释它)
我的问题是我不知道如何获取查询参数。我需要知道“回调”方法的名称
我还尝试了一个常规的Servlet过滤器。它工作了,但奇怪的是我得到了methodname(){myjson}而不是
medhodname({myjson})
所以我试着用新泽西的方式。似乎我需要一个WriterInterceptor,但如何获取查询参数
如何强制Jersey为下面的示例中的嵌套类生成JSON输出
当我使用清单实例创建server sent OutboundEvent时,清单是一个嵌套类,不会生成JSON输出
只要我将清单重构到一个单独的外部类中,一切都正常工作
public class Listings {
private List<Listing> listings;
public class Listing {
private String name;
publ
我是一名c++和c#开发者。我想尝试使用jersey+jetty创建restful web服务。我想知道jersey除了使用java中的JAX-RS库之外还提供了什么?XML声明性web服务是否算数 也许会帮助你消除困惑。如果您想知道Jersey提供的所有东西,但这不在规范中,那么这个问题太宽泛了,无法回答(应该关闭),但是您可以阅读并与整个Jersey进行比较,这是JAX-RS标准的实现。事实上,jersey最棒的是支持多个容器和用于测试目的的嵌入式模式。我喜欢这件运动衫,并为此推荐它。社区非
我用的是运动衫
这是我的jboss部署结构:
<?xml version="1.0" encoding="UTF-8" ?>
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
<deployment>
<exclusions>
<module name="org.jboss.resteasy.resteasy-atom-provider
标签: Jersey
jersey-2.0jersey-clientjersey-1.0
我有一个非常笑脸的客户,如下所示。如果客户端和服务器在同一台机器上
response.getEntity(String.class)
线路只需纳秒,但若客户机和服务器位于不同的机器上,则需要250-300毫秒。我在球衣1号和球衣2号上都试过,但结果没有改变。你知道吗
package com.mkyong.client;
import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.ClientResponse
在Jersey的用户指南教程之后,我创建了一个基于jax-rs的小型RESTWeb应用程序。这是启动服务器的主类
public class Main {
// Base URI the Grizzly HTTP server will listen on
public static final String BASE_URI = "http://localhost:8080/myapp/";
/**
* Starts Grizzly HTTP server exposing JAX-RS r
问题的简短版本:
使用Jersey,如何在运行时确定@products类型
问题的长版本:
我使用jersy编写了一个REST调用,如下所示:
@GET
@Path("/getVideo")
@Consumes(MediaType.APPLICATION_JSON)
@Produces({MediaType.APPLICATION_OCTET_STREAM, MediaType.APPLICATION_JSON})
public Response getAllVideos(@QueryParam
Jersey服务器应用程序是否可以检测它运行在哪个端口上?最好在它收到任何外部请求之前
似乎应该有某种“上下文”可用,但我画的是空白
TIA。将您的答案作为正常答案发布,然后接受。现在你的问题违反了这个网站的惯例。
Jersey可以处理所有请求而不仅仅是rest相关的请求吗?包括基于会话的。或者是否有任何性能、线程等方面的考虑?Jersey/Resteasy提供了许多方便的功能,与普通的servlet相比,使用起来非常方便。是的,它适用于任何基于HTTP的通信
我曾尝试使用此工具创建文件上载功能。但是这个例子在mule 3.5.0中不起作用,它给出了400个错误的请求错误。请注意,我在构建路径中包含了jersey-multipart-1.6和mimepull-1.6 JAR
@POST
@Path("/upload")
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response uploadFile(
@FormDataParam("file") InputStream uploadedIn
如何使用户对象可用于资源中的进一步处理
@Priority(Priorities.AUTHENTICATION)
public static class ResourceAllowedRequestFilter implements ContainerRequestFilter {
private AuthorizationValidation authorizationValidation;
public ResourceAllowedRequestFil
HTML5UI连接到后端(REST连接到Hibernate和DB的业务逻辑)。我需要为每个用户登录创建并维护一个会话,直到用户注销
我对如何处理这个问题一无所知
我采用了这种方法
最初,当用户成功登录时,我将在会话下设置属性,如下所示
HttpSession session = request.getSession(true);
session.setAttribute("islogged", "islogged");
String value = (String)session.getAttr
我想使用AsyncResponse返回一个临时重定向
下面的“工作”(因为没有错误),但似乎不是异步的(它一次处理一个请求)
这样行吗?如果我显式地需要启动一个新线程,比如at,那么返回的响应是什么样子的?我认为您没有正确地使用异步上下文。在我看来,您正在阻塞请求处理线程。您不应该在vertx中阻止此线程。做如下事情怎么样:
@GET
public void doLoad(@Suspended final AsyncResponse asyncResponse,
我正在尝试使用Swagger启动我们的API服务器。我们根本不使用web.xml,而是用Java配置所有内容。我正在尝试按照的说明操作,但仍有问题。我使用的是Git的最新代码(本地安装的1.2.1-SNAPSHOT)
final Server jetty=injector.getInstance(Server.class);
ServletContextHandler sch=injector.getInstance(ServletContextHandler.class);
sch.setIn
我有一个实体集合(列表),需要将其转换为json或从json转换为json
POJO:
public class Task {
private Long id;
private String title;
private Boolean done;
(...)
}
Jersey产生以下结果
[{"id":1,"title":"T1","done":false},{"id":2,"title":"T2","done":false}]
当我调用该方法时:
@
我无法在我的Jersey服务中激活gzip编码。这就是我尝试过的:
从中的jersey-quickstart-grizzly2原型开始
添加了rc.register(org.glassfish.grizzly.http.GZipContentEncoding.class)
(也尝试了rc.register(org.glassfish.jersey.message.GZipEncoder.class);)
从mvn exec:java开始
使用curl--compressed-v-o-htt
标签: Jersey
jax-rsjersey-client
为什么下面的示例在请求中吞下我的HTTP头以进行“内容编码”。我正在编写一个需要解码自定义编码格式的应用程序。但是,我永远无法从请求中获得“Content Encoding”头。既不在实际资源中,也不在ReaderInterceptor中。在响应中,此编码头不会被吞没
在以下(可运行)示例中可以很容易地观察到此行为:
在Jersey试图修改我的内容编码的幕后是否发生了一些神奇的事情?(它不能,因为它是一个封闭源代码编码,事实上,我必须通过查询网络中另一台服务器上的另一个应用程序来解决。)我甚至无
Jersey通过查看accept标头来识别请求。我有一个只接受text/*的请求-如何强制响应为例如application/json
@POST
@Path("/create")
@Produces(MediaType.APPLICATION_JSON)
public MyResponseObject create() {
return new MyResponseObject();
}
如果请求指向仅接受text/*的create,jersey将返回500。有办法解决这个问题吗?(我
有人能解释一下为什么使用这个client.setReadTimeOut和client.setConnectTimeOut超时吗?我正在对我的Jersey客户使用相同的方法。我已经为连接和读取设置了5秒的超时。出于测试目的,我在我的服务中设置了一个线程睡眠6秒。我得到了一个超时异常,但在此之后,我的服务恢复正常并给出响应。我的要求是设置服务响应的超时时间,如果超时时间已过,则应该显示出来并重试。我还需要设置客户端尝试连接的次数。请建议您的客户端在没有收到服务器的回复5秒后超时,并按照设计抛出超时异
我们有一个应用程序,其中我们希望使用OSGi Equinox运行Jersey。请提供任何帮助或指导。我在网上得到的只是使用ApacheFelix。我不想那样做。
我的应用程序使用以下内容
客户端代码的角度JS
休闲服
OSGi Equinox和Jetty用于部署
请说明这是否可能,如果可能,请说明如何执行
转到测试目录
编辑pom.xml并将felixtest环境中的jetty.port更改为您喜欢的端口
在测试上运行“mvn安装”
转到target/eosgi dist/felixtest/
我想在Grizzly上使用Guice+Jersey 2.0。根据这一讨论,目前没有Jersey2的直接Guice集成,但可以使用HK2作为桥梁来实现。我还检查了Github中的示例项目。该项目使用码头实施
但我的问题是在Grizzly中实现它。在码头上,它是这样使用的
@Inject
public MyApplication(ServiceLocator serviceLocator) {
// Set package to look for resources in
pac
目前我正在从事clean kura osgi项目。我的目标是实现JWT身份验证,或者类似的东西,只是为了提供安全的端点。我尝试了使用名称绑定的身份验证过滤器。然而,似乎在某种程度上名称绑定并没有得到注册。在本例中,我测试了SimpleMaven项目,并发现在那里一切正常。代码如下:
TestAuth.class
@Path("/test")
public class TestAuth extends Application {
@GET
@Secured
@Produc
我正在使用Jersey JAX-RS进行REST服务。
我在SE部署中使用GrizzlyHttp在我的程序中运行它
我还注册了一个记录器,它打印出HTTP请求和响应
我缺少的是在HTTP服务器和资源类之间进行日志记录
如果没有路径匹配,或者路径匹配但参数不匹配,或者类似情况,我希望查看日志条目。今天,我需要检查注释并将其与记录的HTTP参数进行比较。在周围多记录一些日志会有帮助的
这可能吗?您可以通过使用预匹配过滤器来实现
预匹配过滤器是在JAR-RS运行时尝试将请求与资源匹配之前调用的过滤器。
有人知道JDK 14的类似功能吗?
这个doclet通过javax.ws.rs注释和javadocs生成swagger规范,它不需要swagger注释
例如,我有这样的端点:
/**
* Receives sync requests from the clients and puts the received event to the queue with partition key based on the user's id.
*
* @param thriftRequest user
我想在相同的方法上同时使用@Post和@Get
@GET
@POST
@Path("{mode}")
public void paymentFinish(@PathParam("mode") String mode, String s) {
logger.debug("Enter PayStatus POST");
logger.debug(mode);
}
即使我这样写,我也会出错。我想要的是无论得到什么或发布到sameurl,都是同样的方法。可能吗?现在我将两种方法分开,一
我只是感到困惑,所以我想寻求一些帮助和解释
我有一个jQuery函数,通过ajax,它可以对某个服务器进行POST调用
var login = $("#email1").val();
var password = $("#password1").val();
var summary = $("#summary").val();
var details = $("#details").val();
var address = $("#address").val();
var str = login
我知道Weblogic 12c v12.2.1使用Jersey作为JAX-RS实现。因此,我按照上的说明进行了操作,但无论是使用名称绑定还是动态绑定(即,所述链接中的更多信息),我都没有成功声明拦截器
我的应用程序工作正常,因为我实际上可以调用restful服务,但我不能应用过滤器或拦截器,它们从来没有参与过这个过程
我根本没有编辑web.xml,我只有一个javax.ws.rs.core.Application子类
@ApplicationPath("rs")
public class MyA
我已经设置了healthcheck in dropwizard,它们工作正常。现在,我只希望授权用户访问healthcheck。当我创建一个自定义过滤器并将其添加到管理员时,它从未被使用过。我补充说:
environment.admin().addFilter("AdminFilter",new AdminFilter());
如何向healthcheck请求添加筛选器?
我在端口8081上运行admin。我的yaml看起来像这样
server:
applicationConnectors
我在Jersey和Swagger上有一个工作的Tomcat设置,但现在我必须让它在WebLogic12c(12.2.1)上工作。我试过几种不同的方法让它发挥作用,但我最终陷入了各种死胡同。我在JDeveloper做这个
我已经结束了与杰克逊版本的问题和其他类似的冲突,每一种方式我都尝试过。我已经让Jersey与Weblogic合作,但不是招摇过市
如果有帮助的话,我可以使用旧版本
这是我最近一次失败后pom的一部分:
<dependency>
<grou
标签: Jersey
metadatamultipartmultiple-file-upload
我正在开发一个Jersey API,它必须接受多个文件的输入以及关于它们的一些细节
例如,对于每个图像,都会有点击者的姓名、所属类别、拍摄照片的位置等。这必须在单个请求对象上完成
没有确定数量的文件,因此我无法创建不同的变量,如(文件1、摄影师1、类别1、位置1)、(文件2、摄影师2、类别2、位置2)
我将通过多部分接受列表中的文件
是否有一种有效的方法来获取图像的元数据,以便我们可以确定元数据对应于列表中的哪个文件/图像?为了获取某个文件的元数据,您可以参考以下链接:
获取元数据后,您可以编
我在应用程序中使用Jersey-2.19.x调用restapi。由于jersey客户端的创建成本很高,因此我希望在API调用中重用该客户端,并因此通过guice注入来注入该客户端
以下是我的客户端GUI代码:
@Provides
@Singleton
Client getClient() {
return ClientBuilder.newClient();
}
这是我使用这种注入的类:
@Inject
public MyClass(Client client) {
this.clie
标签: Jersey
http-postauthorizationjersey-client
我在Java Spring MVC web应用程序中使用的是Jersey 1.9。我试图发出一个post请求,我必须为其设置两个标题值——授权和内容类型。我能够使用postman REST客户端成功地发布帖子。我尝试了许多在线解决方案,但得到的答复是401授权失败。以下是我使用的代码:
ClientConfig config = new DefaultClientConfig();
Client client = Client.create(config);
WebResource web
上一页 1 2 ...
6 7 8 9 10 11 12 ...
下一页 最后一页 共 15 页