Воспроизвести пример приложения для отдыха - PullRequest
1 голос
/ 07 июня 2011

Я создал тестовое приложение и создал класс hello rest easy.Затем я попытался запустить с помощью play run test и получил это исключение:

21:46:18,246 INFO  ~ RESTEasy plugin: Found resource class: resources.HelloResource
21:46:18,482 WARN  ~ NoClassDefFoundError: Unable to load builtin provider: org.jboss.resteasy.plugins.providers.jackson.ResteasyJacksonProvider
21:46:18,564 INFO  ~ RESTEasy plugin: RESTEasy started
21:46:18,570 INFO  ~ Application 'test' is now started !
21:46:30,083 ERROR ~

@66i4nnpj8
rest.hello action not found

Action not found
Action rest.hello could not be found. Error raised is Controller controllers.rest not found

play.exceptions.ActionNotFoundException: Action rest.hello not found
        at play.mvc.ActionInvoker.getActionMethod(ActionInvoker.java:436)
        at play.mvc.ActionInvoker.invoke(ActionInvoker.java:76)
        at Invocation.HTTP Request(Play!)
Caused by: java.lang.Exception: Controller controllers.rest not found
        ... 3 more

Кто-нибудь знает, в чем проблема?

Ответы [ 3 ]

1 голос
/ 22 ноября 2011

Если вы определили маршруты восстановления в конце файла маршрутов (после /{controller}/{action} маршрута), то вы получите эту проблему. Попробуйте переместить объявление маршрута resteasy в начало файла.

0 голосов
/ 17 апреля 2012

Довольно старый вопрос, но я тоже сталкивался с этим, когда пытался написать свой первый REST-сервис, используя play, поэтому опубликую, в чем заключается моя проблема, на случай, если другие придут к этому.

Фактически, я этого не сделалПонимаю, что мне нужно запустить игру eclipsify для нового проекта.Шаги для создания вашей первой службы REST в новом проекте:

  • Убедитесь, что вы указали правильный игровой файл ...

  • Добавьте свой путь REST в файл маршрутов.Примерно так:

    GET   /gimmeStuff     Application.gimmeStuff
  • Добавьте метод к соответствующему контроллеру (в моем случае это Application).Если все правильно, ваш класс будет выглядеть примерно так:

    public class Application extends Controller {
        public static void gimmeStuff() {
            renderText("STUFF!");
        }
    }
  • Наконец ... если вы еще этого не сделали, запустите play eclipsify для вашего проекта:

    play eclipsify MyFirstRestProject

Как только я сделал все вышеперечисленное, моя проблема ушла.

0 голосов
/ 08 июня 2011

У меня есть целое приложение, полностью работающее с RESTEasy модулем Play.Это должно помочь вам настроить ваш: https://github.com/feliperazeek/play-github-api-demo

...