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

大气、dropwizard和jersey注入错误

邰钟展
2023-03-14

这是我的gradle档案:

compile group: 'io.dropwizard', name: 'dropwizard-core', version: '0.8.0'
compile group: 'io.dropwizard', name: 'dropwizard-auth', version: '0.8.0'
compile group: 'io.dropwizard', name: 'dropwizard-client', version: '0.8.0'

compile group: 'org.glassfish.jersey.media', name: 'jersey-media-multipart', version: '2.16'

compile group: 'org.glassfish.jersey.core', name: 'jersey-client', version: '2.16'
compile group: 'org.atmosphere', name: 'atmosphere-jersey', version: '2.1.10'

在添加了Atmospher-Jursey之后,我得到了以下错误:

WARN  [2015-05-03 21:13:38,796] org.glassfish.jersey.internal.Errors: 
The following warnings have been detected: WARNING: HK2 service 
reification failed for   [com.sun.jersey.core.impl.provider.entity.MimeMultipartProvider] with an exception:
MultiException stack 1 of 2
java.lang.NoClassDefFoundError: javax/mail/MessagingException
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2532)
at java.lang.Class.getDeclaredConstructors(Class.java:1901)
at org.jvnet.hk2.internal.Utilities$3.run(Utilities.java:1310)
at org.jvnet.hk2.internal.Utilities$3.run(Utilities.java:1306)
at java.security.AccessController.doPrivileged(Native Method)...
MultiException stack 2 of 3
java.lang.IllegalStateException: Unable to perform operation: method inject
on com.sun.jersey.core.impl.provider.entity.XMLRootElementProvider$App
at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:395)
at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:471)
at org.jvnet.hk2.internal.PerLookupContext.findOrCreate(PerLookupContext.java:69)..
MultiException stack 3 of 3
java.lang.IllegalStateException: Unable to perform operation: 
create on org.glassfish.jersey.message.internal.MessageBodyFactory...
org.glassfish.hk2.api.MultiException: A MultiException has 
3 exceptions.    They are:
! 1. java.lang.NullPointerException
! 2. java.lang.IllegalStateException: Unable to perform operation: 
method inject on   com.sun.jersey.core.impl.provider.entity.XMLRootElementProvider$App
! 3. java.lang.IllegalStateException: Unable to perform operation: 
create on org.glassfish.jersey.message.internal.MessageBodyFactory

共有1个答案

那安宁
2023-03-14

从我在Atmosphere的pom.xml中看到的情况来看,他们使用的是Jersey1.x,而dropwizard使用的是Jersey2.x。而这两个图书馆在一起相处得并不好。我相信大气没有直接支持泽西2,至少在最新版本中也没有。

因此,我想您不能使用atheros-jersey,但我看到我的同事正在使用atheros-runtimeatheros-annotationsDropWizard0.8。

 类似资料:
  • 试图创建一个自定义的,我可以通过Jersey注入到我的资源中。 这在本问题的Java中有涉及。我已经阅读了有关这方面的文档,这些文档也是用Java编写的。最后,GitHub中的一些代码涵盖了相同的主题(通过Dropwizard完成)。 这将全部编译,但在运行时失败,出现以下异常 我不知道是我在向Scala的转换中犯了错误,还是我在注册绑定器时做了错误的事情。

  • 我目前正在构建一个基于Dropwizard Guice泽西岛的应用程序,其中数据库访问暂时由JDBI处理。 我试图实现的是使用典型的企业架构,其中资源访问服务类访问DAO类,DAO类反过来访问数据库。以适当的DI方式将所有这些连接起来会很好,尽管我想如果其他方法都失败,我可以在应用程序的run()方法中构建对象图。 所以,我遇到了之前提到过的问题:获取DBIFactory需要环境和配置,它们需要在

  • 我正在尝试将 HttpServlet 请求注入到我的泽西岛资源类中。我得到错误“”。我使用的是 Java 8。 据我所知,我正在做一个完全普通的球衣应用程序。以下是全部代码: 它阻塞了@Context HttpServletRequest部分。如果我将HttpServletRequest设置为一个字段,它将自动失败,请求为空。 以下是依赖关系。jersey.version为2.27: 这是完整的堆

  • DropWizard在REST的引擎盖下使用泽西。我正在尝试弄清楚如何为我的DropWizard应用程序将公开的RESTfulendpoint编写客户端。 为了这个例子,让我们假设我的DropWizard应用程序有一个< code>CarResource,它为CRUDding cars公开了几个简单的RESTfulendpoint: 因此,我认为结构化的API客户端将类似于: 但是我能找到的关于D

  • 我正在使用Dropwizard 8.2.0构建REST服务。我有2个资源:FolderResource和FileResource: 我做错了什么?