NoSuchMethodException:找不到合适的构造函数

时间:2018-06-13 11:47:55

标签: java web service jax-rs

我使用JAX-RS注释创建了简单的REST端点API接口:

package pl.webservice.cards;

import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

@Path("/cards")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public interface CardsServiceApi {

    @GET
    @Path("/message")
    public String getMessage();
}

及其实施:

package pl.webservice.cards;

public class CardsService implements CardsServiceApi{

    @Override
    public String getMessage() {
        return "Hello World!";
    }
}

在POSTMAN中发送请求后,我收到以下回复:

  

java.lang.NoSuchMethodException:找不到合适的构造函数   在pl.webservice.cards.CardsServiceApi类中。

当我"合并时,有趣的是什么?非接口类中的两个类都可以正常工作。为什么呢?

1 个答案:

答案 0 :(得分:0)

我认为,问题是,REST-Annotations是在一个接口中。服务器尝试实例化接口,这是不可能的。如果将注释移动到实现类,那么一切都应该有效。