我想创建一个类,该类的对象可以使用@Context
注释(或者在需要将参数传递给注释的情况下使用自定义注释)注入资源方法中。在泽西岛1.
*中,我会使用InjectableProvider
(在我的情况下,与一起使用AbstractHttpContextInjectable
)。我想要实现的是来自
dropwizard的@Auth
[
1 ] (使用Jersey 1.7)。 __
据我所知,Jersey的注入功能已被HK2取代,我找不到我所描述的任何示例。
您需要从HK2 实现InjectionResolver
@Context
@PathParam
、、@QueryParam
…(通过其子类)@Autowired
一旦有了这个,您需要从HK2
扩展AbstractBinder并InjectionResolver
通过它的#configure()
方法绑定您:
public class MyResolverBinder extends AbstractBinder {
@Override
protected void configure() {
bind(MyInjectionResolver.class)
.to(new TypeLiteral<InjectionResolver<MyAnnotation>>() {})
.in(Singleton.class);
}
}
…并在您的应用程序类中(或通过feature)注册此绑定器的实例:
Feature
:
public class MyFeature implements Feature {
@Override
public boolean configure(final FeatureContext context) {
context.register(new MyResolverBinder());
return true;
}
}
注册MyFeature
到Application
:
public class JaxRsApplication extends Application {
@Override
public Set<Class<?>> getClasses() {
final HashSet<Class<?>> classes = new HashSet<Class<?>>();
classes.add(MyFeature.class);
// Register other providers or resources.
return classes;
}
}
注册MyResolverBinder
或Feature
在ResourceConfig
new ResourceConfig()
// Register either MyFeature
.register(MyFeature.class)
// or MyResolverBinder
.register(new MyResolverBinder())
// Register other providers or resources
.packages("my.package");
问题内容: 我目前正在尝试使用Jersey 创建一个,但无法让Jersey接它。 除了在实现中使用批注之外,我找不到任何实际用法示例,甚至找不到如何使用它。看似写在泽西岛上的人在某些帖子中暗示这足以使它被拾起。 我需要指定一些SPI服务文件,还是将其添加到某个工厂的某个地方? 注意:我正在Glassfish 3.1中运行,并使用Spring 3.1。Spring可能会以某种方式接管s 的自动加载似
我使用Jersey 2.10异常映射器类来处理异常。我想返回错误状态和错误信息的JSON正文。我想得到类似的回应: Jersey没有在响应中发送JSON正文。我得到的是: 如果我将状态代码更改为200,那么我将获得预期的响应正文 请帮我找出这个问题的解决方案。 异常映射器在错误对象中填充错误消息和状态。以下是异常映射程序代码: 这是来自错误对象的代码:
我有一个运行spring-boot、jersey2和spring度量的应用程序:下面是maven片段: 在引入致动器依赖性之前,Jersey一直工作得很好。然后创建了以下bean以使Jersey作为过滤器工作: 度量被映射到/admin路径。使用这种配置,我无法使度量标准工作。但是,通过添加management.port(不同于主应用程序端口),既可以使用Jersey资源,也可以使用metrics
问题内容: 我想使用Jersey来实现一些Java REST服务。默认的POJO转换器JAXB处理JSON对象有点奇怪,因此我想使用Jackson转换POJO的开销很少或更少。我如何告诉J2ME框架使用另一个转换器? 我的web.xml看起来像这样: 问题答案: 只需添加jackson JAR并修改web.xml即可,如下所示: 所需的Jackson Jackson JAR(http://jack
我使用的是Jersey 1.12,并且有一个endpoint可能接收也可能不接收来自我无法控制的客户端的格式错误的标头(例如)。显然,bla格式错误,因为规范要求参数也要有值,即 我可以按照这里、这里和这里的建议编写一个过滤器来解决这个问题,但我想知道是否有一种方法可以让Jersey在我对其值不感兴趣的情况下忽略所有格式错误的报头?
我有一个服务器Weblogic 12.1.3,带有JAX-RS 2。x作为共享库安装(参见。https://docs.oracle.com/middleware/1213/wls/RESTF/use-jersey20-ri.htm#RESTF297). 该共享库包括例如javax。ws。rs-api-2.0。jar和jersey-media-multipart-2.5.1。jar。 请注意,我不确