Ошибка контроллера Micronaut Страница не найдена - PullRequest
0 голосов
/ 19 ноября 2018

Я создал новое приложение для микронавтов, используя mn create-app example.micronaut.complete

После этого я открыл проект с помощью intellij и добавил в проект новый класс TestController с кодом ниже:

package example.micronaut;
import io.micronaut.http.MediaType;
import io.micronaut.http.annotation.Controller;
import io.micronaut.http.annotation.Get;


@Controller("/hello")
public class TestController {

TestController(){}

@Get(value = "/", produces = MediaType.TEXT_PLAIN)
String getTest(){
    return "some string";
   }
}

Но я получаю

{"_links":{"self":{"href":"/","templated":false}},"message":"Page Not Found"}

всякий раз, когда я пытаюсь получить доступ к конечной точке / hello

Мой application.yml выглядит так:

micronaut:
    application:
        name: complete
    server:
        port: 8080

1 Ответ

0 голосов
/ 19 ноября 2018

Не видя больше вашего проекта, трудно сказать, что не так.Я вставил ваш код прямо в проект, и он работает как положено.Смотрите проект на https://github.com/jeffbrown/khwaja404. Контроллер на https://github.com/jeffbrown/khwaja404/blob/a3e57623ed5b30e28eb95bfe0f4a4a5c9d123fd8/src/main/java/example/micronaut/TestController.java работает нормально ...

package example.micronaut;

import io.micronaut.http.MediaType;
import io.micronaut.http.annotation.Controller;
import io.micronaut.http.annotation.Get;


@Controller("/hello")
public class TestController {

    // this empty constructor is not
    // needed, but isn't a problem...
    TestController() {
    }

    @Get(value = "/", produces = MediaType.TEXT_PLAIN)
    String getTest() {
        return "some string";
    }
}

Конечная точка отвечает:

$ curl http://localhost:8080/hello
some string

Одна вещь, которую нужно посмотретьНапример, если вы пропускаете зависимость micronaut-inject-java и / или micronaut-inject, выраженную в https://github.com/jeffbrown/khwaja404/blob/a3e57623ed5b30e28eb95bfe0f4a4a5c9d123fd8/build.gradle#L27-L29.

Другой пример, если вы запускаете приложение из IDE (например, IntelliJ IDEA), убедитесь, что у вас естьпроцессоры аннотаций включены в сборку.

...