当前位置: 首页 > 知识库问答 >
问题:

泽西岛客户:hk2 不满意依赖性例外

姚德容
2023-03-14

我正在尝试设置一个基于jersey 2的REST客户端。该客户端代码需要在Jetty 9服务器(独立,非嵌入式)中运行,并且应该从另一个服务中检索/使用数据。我最基本的第一次测试电话如下:

ClientBuilder.newClient().target("https://10.224.1.206:8443/axis/services/EndSystemWebService").path("getAll").request().get( String.class )

此调用失败,并出现以下错误:

异常在线程"MyApp"MultiException堆栈1的1State.access:没有对象可用于注入在SystemInject teeImpl(必需类型=ServiceLocator,父=JaxbAutoDiscoverable,限定符={},位置=-1,可选=假,自我=假,不合格=空,186516043)在ClientConfig.java:90(org.glassfish.jersey.client.ClientConfig)在3.get(ClientConfig.java:122)在org.glassfish.jersey.client.ClientConfig(3.get)在ClientConfig.java:119(org.glassfish.jersey.internal.util.collection.Values)在LazyValueImpl.get(Values.java:340)在org.glassfish.jersey.client.ClientConfig.getRuntime(ClientConfig.java:733)在org.glassfish.jersey.client.ClientConfig$State.configureAutoDiscoverableProviders(ClientConfig.java:364)在org.glassfish.jersey.client.ClientConfig$State.initRuntime(ClientConfig.java:399)在org.glassfish.jersey.client.ClientConfig$org.glassfish.hk2.api.UnsatisfiedDependencyException0美元(org.jvnet.hk2.internal.ThreeThirtyResolver.resolve)在ThreeThirtyResolver.java:75$State$org.jvnet.hk2.internal.Utilities.justInject(Utilities.java:945)在org.jvnet.hk2.internal.ServiceLocatorImpl.inject$State$ServiceLocatorImpl.java:980(org.jvnet.hk2.internal.ServiceLocatorImpl.createAndInitialize)在ServiceLocatorImpl.java:1055$org.jvnet.hk2.internal.ServiceLocatorImpl.createAndInitialize(ServiceLocatorImpl.java:1046)在org.glassfish.jersey.model.internal.CommonConfig.configureAutoDiscoverableProviders(CommonConfig.java:608)在org. glassfish. jersey. client. JerseyInvocation. validateHttpMethod odAndEntity(JerseyInvocation. java: 135)在org. glassfish.

我没有使用Maven设置我的环境——手动设置。所以也许我使用的库有问题。他们在这里:

现在已经太多了,但是我一直在添加它们,因为我希望这个问题仅仅是由于一个丢失的罐子引起的。不是的。

非常感谢任何帮助。谢谢

共有1个答案

缪茂勋
2023-03-14

感谢peeskillet的评论,我从jersey下载了捆绑包,删除了我之前添加到项目中的所有罐子,从捆绑包中添加了所需的罐子(以避免不兼容),错误消失了。再次感谢!

 类似资料:
  • 我正在编写一个公开 REST API 的简单微服务。所以我开始使用泽西岛,当然我需要将我的对象注入球衣资源中。基本上,我有2个类来定义一组资源,其中一些需要使用另一个服务。 所以基本上我有: } 该接口的2种实现(MyServiceBean和My备选ServiceBean) 而且,就我对阅读新泽西文件的理解,我定义了一个hk2活页夹: 我将此活页夹注册到ApplicationConfig类 } 并

  • 我有一个资源类 我尝试了泽西岛2.0的依赖注入中的答案 如果我使用 启动服务器时,我得到 如果我删除了上述依赖项,那么我得到 资源配置类是 活页夹类是 我在嵌入式模式下使用tomcat并添加init参数 我如何在控制器中注入服务?注入是单元测试的首选方式吗(当服务实现调用另一个服务时,比如说XService ),单元测试不应该依赖于Xservice,因此demoServiceImpl如何从测试中将

  • 我目前使用的是球衣 我现在要做的是设置泽西,这样当查询参数进来时(比如缩进),我可以告诉Jackson以“更漂亮的格式,也就是缩进”序列化JSON。您可以通过使用SerializationConfig.Feature.INDENT_OUTPUT配置JSON映射器来轻松地告诉Jackson这样做。 问题是,我如何在每个请求的基础上获取一个queryparam并使用它来修改Jackson的输出?

  • 问题内容: 我正在尝试使用Jersey客户端模拟对我的Web服务的HTTP请求。我尝试实现文档中的简单示例。这是我的短代码: 我什至没有实现整个示例,因为当前我在最后一行收到一个异常: 我只将此依赖项添加到我的: 我试图用谷歌搜索问题,以及调试应用程序,但我真的看不出问题出在哪里。 编辑 所有Maven依赖项: 问题答案: 这看起来像与JAX-RS API版本(包含MultiValuedMap)有

  • 这是我为我的HTTPServer编写的内容: 任何帮助都将不胜感激。

  • 问题内容: 我正在尝试编写一个使用Jersey客户端API访问RESTful Web服务的库。该服务需要设置cookie的登录请求,然后后续请求必须将该cookie设置为成功。登录请求按预期方式工作,我能够从登录响应中检索cookie,但似乎无法在后续请求中重新添加cookie。谁能说出我可能做错了什么。这是发出请求的代码: 当请求没有失败时,服务将以应用程序错误“ No Session”进行响应