有条件地在Jersey中应用@Provider注释或@Provider注释的替代

时间:2013-01-24 16:38:26

标签: spring rest annotations jersey provider

我们有一个Jersey-Spring项目。我们想有条件地使用@Provider注释。即我们只想在某些环境中使用它。通过环境,我的意思是开发,分期,生活等。

我们在使用spring bean配置文件的项目中使用了特定于环境的配置。无论如何,我们可以确保仅在环境是特定环境时应用@Provider? (请注意,在java代码中,我们知道环境是什么。)

如果无法实现上述目标,那么无论如何我们都可以避免使用@provider注释并使用某种可以完成工作的代码,以便我们可以根据环境有选择地应用它。

@Provider
@Profile("docs")
@Produces(MediaType.APPLICATION_JSON)
public class JacksonJsonProvider extends JacksonJaxbJsonProvider {

基本上我们使用@Provider来应用JacksonJsonProvider但我们只想在某些环境中应用此提供程序。

请告诉我们最佳解决方案。 感谢您。 -ND。

1 个答案:

答案 0 :(得分:0)

最佳解决方案是将其放在单独的包中,并且只在所需的配置文件中包含该包。

查看PackagesResourceConfig,特别是PROPERTY_PACKAGES。