Я создал простой интерфейс API конечной точки REST с использованием аннотаций JAX-RS:
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.
Что интересно, когда я «объединяю» оба класса внеинтерфейсный класс все работает отлично.Почему?