我不知道标题是否令人困惑,但让我们说我有这个界面:
@Produces(MediaType.APPLICATION_JSON)
@Path("/user")
public interface UserService {

    @GET
    @Path("/{userId}")
    public Response getUser(@PathParam("userId") Long userId);

}

为什么当我尝试实现一个版本Eclipse重写注释的覆盖方法,但不是为类?

class UserServiceImpl implements UserService {

    @Override
    @GET
    @Path("/{userId}")
    public Response getUser(@PathParam("userId") Long userId) {
        // Todo Auto-generated method stub
        return null;
    }

}

我正在尝试为休息的Web服务创建一个标准定义,然后具有不同的实现.是否可以使用标准jax-rs?我有任何机会使用错误的注释吗?

解决方法

只有在实现类上不使用任何jax-rs注释时,才可以使用注释继承:它在JSR-339的第3.6节中说明.

您为方法重新定义@Path和@Produces,但不为该类定义.

所以你的代码中的Path注释应该在具体的类上:

public interface UserService {

    @GET
    @Path("/{userId}")
    @Produces(MediaType.APPLICATION_JSON)
    public Response getUser(@PathParam("userId") Long userId);

}


@Path("/user")
class UserServiceImpl implements UserService {

    @Override
    @GET
    @Path("/{userId}")
    @Produces(MediaType.APPLICATION_JSON)
    public Response getUser(@PathParam("userId") Long userId) {
        // Todo Auto-generated method stub
        return null;
    }

}

BTW,规范鼓励我们复制具体类的注释:

For consistency with other Java EE specifications,it is recommended to always repeat annotations instead of relying on annotation inheritance.

java – 是否可能定义一个jax-rs服务接口,与其实现分离(使用eclipse和jersey)?的更多相关文章

  1. JAX-RS获取打开连接时间

    我正在使用JAX-RS进行HTTP请求。是否有方法获取打开连接所需的时间?打开连接和读取响应似乎对调用函数是隐藏的。

  2. xmlhttprequest – AngularJS和位于不同域中的Jersey Webservice之间的通信.无法访问正确的会话

    亲爱的stackoverflow读者,最近我一直在玩AngularJS和JavaEE6.我已经和泽西建立了一个webservice,并在Glassfish上部署了这个项目.因为我需要某种身份验证和OAuth实现,或者JDBCRealm似乎过度杀戮,所以我决定在用户成功登录后创建一个会话.这似乎工作正常,如果我发布到/从Postman或从部署在glassfish上的基本jQuery网页登录,我将获得

  3. java – 使用RolesAllowedDynamicFeature和Jersey授权

    我正在尝试使用JAX-RS过滤器对用户进行身份验证.这是我正在设置新SecurityContext的过滤器:资源方法如下所示:RolesAllowedDynamicFeature的注册方式如下:我可以在控制台上看到预期的输出.但是,如果我取消注释@RolesAllowed(“user”),我会收到Forbidden错误,并且永远不会调用SecurityContext的isUserInRole方法.

  4. 如何使用基于JAX-RS的Restlet自动将@DefaultValue映射到枚举参数?

    解决方法如果你有一个枚举像:然后,为了让JAX-RS知道要返回的实例,您的查询参数必须是?animal=MEDIUM_DOG.查询参数的值被送到枚举的valueOf静态方法以获取实例.当然,如果你发送像鸟一样的东西它将无法匹配任何东西,它将无法正常工作,因为@QueryParam期望这样:ThetypeToftheannotatedparameter,fieldorpropertymusteither:–Beaprimitivetype–Haveaconstructorthatacceptsasingle

  5. Angular SPA + Jersey + SpringMVC 整合应用

    原文排版地址:AngularSPA+Jersey+SpringMVC整合应用AngularSPA单页面应用和MVC控制器的整合,会有一个疑问,SPA中点击链接的跳转,是经过SPA的路由,还是直接被SpringMVC拦截了?

  6. java – Jersey客户端响应状态204

    我正在使用Jersey服务和客户端.当我试图调用该服务时,我收到此错误:我不懂为什么.这是服务:这是客户:我真的不知道问题可能是什么.我知道另一个问题,看似相同的主题,但他们不是.如果我遗漏了某些内容或者您需要任何额外信息,请告诉我.解决方法204是HTTP响应状态代码,通知客户端没有返回内容.当你的客户端调用get(JSONArray.class)时,它期望有200个数据,因此是例外.从服务器实

  7. java – 在TomEE上使用JAX-RS时的“无资源方法”

    使用库存TomEE,我无法获得简单的JAX-RS资源.我不断得到一个错误:资源类:packagecom.tensorWrench.test;web.xml中:的build.gradle:我尝试了一些排列,添加beans.xml,删除,更改注释的顺序,使用不同的JavaEE类编译依赖项.我一直都会遇到这个错误.解决方法看起来您的资源方法在范围上不公开.试试这个:

  8. java – 如何单元测试传入的Jersey MultiPart请求的处理

    编辑运用会抛出一个我认为,在调用我的MultiPartReader之前,还需要以某种方式转换测试生成的MultiPart.在jersey中必须有一些方法,我可以调用它来执行此转换它的方式,当它在已部署的系统上发出MultiPart请求时,或者可能是接收端在接收HTTP请求时进行一些解析..?

  9. 未设置getAttribute(“javax.servlet.request.X509Certificate”)(Spring,CXF,Jetty,JAX-RSv1.1)

    我已经在客户端尝试了其他一些实现,但没有任何改变.我究竟做错了什么?

  10. java – jersey 2.2:ContainerResponseFilter和ContainerRequestFilter永远不会被执行

    解决方法事实证明,您必须手动注册自定义类–如:完整示例:

随机推荐

  1. 基于EJB技术的商务预订系统的开发

    用EJB结构开发的应用程序是可伸缩的、事务型的、多用户安全的。总的来说,EJB是一个组件事务监控的标准服务器端的组件模型。基于EJB技术的系统结构模型EJB结构是一个服务端组件结构,是一个层次性结构,其结构模型如图1所示。图2:商务预订系统的构架EntityBean是为了现实世界的对象建造的模型,这些对象通常是数据库的一些持久记录。

  2. Java利用POI实现导入导出Excel表格

    这篇文章主要为大家详细介绍了Java利用POI实现导入导出Excel表格,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  3. Mybatis分页插件PageHelper手写实现示例

    这篇文章主要为大家介绍了Mybatis分页插件PageHelper手写实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  4. (jsp/html)网页上嵌入播放器(常用播放器代码整理)

    网页上嵌入播放器,只要在HTML上添加以上代码就OK了,下面整理了一些常用的播放器代码,总有一款适合你,感兴趣的朋友可以参考下哈,希望对你有所帮助

  5. Java 阻塞队列BlockingQueue详解

    本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景,通过实例代码介绍了Java 阻塞队列BlockingQueue的相关知识,需要的朋友可以参考下

  6. Java异常Exception详细讲解

    异常就是不正常,比如当我们身体出现了异常我们会根据身体情况选择喝开水、吃药、看病、等 异常处理方法。 java异常处理机制是我们java语言使用异常处理机制为程序提供了错误处理的能力,程序出现的错误,程序可以安全的退出,以保证程序正常的运行等

  7. Java Bean 作用域及它的几种类型介绍

    这篇文章主要介绍了Java Bean作用域及它的几种类型介绍,Spring框架作为一个管理Bean的IoC容器,那么Bean自然是Spring中的重要资源了,那Bean的作用域又是什么,接下来我们一起进入文章详细学习吧

  8. 面试突击之跨域问题的解决方案详解

    跨域问题本质是浏览器的一种保护机制,它的初衷是为了保证用户的安全,防止恶意网站窃取数据。那怎么解决这个问题呢?接下来我们一起来看

  9. Mybatis-Plus接口BaseMapper与Services使用详解

    这篇文章主要为大家介绍了Mybatis-Plus接口BaseMapper与Services使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  10. mybatis-plus雪花算法增强idworker的实现

    今天聊聊在mybatis-plus中引入分布式ID生成框架idworker,进一步增强实现生成分布式唯一ID,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

返回
顶部