Сервис Микронавт не отвечает на запрос

У меня есть (относительно простой) сервис Micronaut, которому я пытаюсь передать параметр. Код услуги ниже:

package com.factor3.app;


import io.micronaut.http.MediaType;
import io.micronaut.http.annotation.*;

@Controller("/testserv")
public class TempTestService
{
   public TempTestService()
   {
   }

   @Get("/{?theData}")
   @Produces(MediaType.TEXT_PLAIN)
   public String performService(String theData)
   {
       return("Returning: "+theData));
   }

}

Я установил порт 8090 в файле application.yml:

micronaut:
    application:
        name: TSBroker

#Uncomment to set server port
    server:
        port: 8090

Других контроллеров, бинов или фильтров нет.

Я запускал эту службу и пытался получить к ней доступ из браузера, используя следующий URI:

http://localhost:8090/testserv?theData=xxx

Через несколько минут я получаю следующий сбой в Google Chrome:

This page isn’t working
localhost didn’t send any data.
ERR_EMPTY_RESPONSE

Я что-то упускаю? Почему эта страница не работает?

Заранее благодарим за любые идеи ...


person Factor Three    schedule 31.10.2018    source источник


Ответы (1)


В вашем коде есть некоторые вещи, которые даже не скомпилируются. Если вы измените свой класс, чтобы он выглядел следующим образом, он будет компилироваться и будет отвечать на http://localhost:8090/testserv?theData=xxx.

package com.factor3.app;

import io.micronaut.http.MediaType;
import io.micronaut.http.annotation.*;
import javax.annotation.Nullable;

@Controller("/testserv")
public class TempTestService
{
    // this empty constructor isn't necessary, but
    // also doesn't cause a problem...
   public TempTestService()
   {
   }

   @Get("/{?theData}")
   @Produces(MediaType.TEXT_PLAIN)
   public String performService(@Nullable String theData)
   {
       return "Returning: "+theData;
   }
}
person Jeff Scott Brown    schedule 31.10.2018
comment
comment
что изменилось кроме @Nullable? - person Constantin Galbenu; 31.10.2018
comment
В return("Returning: "+theData)); был посторонний закрывающий элемент. @Nullable нужно было добавить в параметр theData, а для javax.annotation.Nullable нужно было добавить оператор импорта. - person Jeff Scott Brown; 31.10.2018
comment
Это была опечатка с моей стороны. Я случайно добавил доп) когда копировал и редактировал код для входа в этот форум. - person Factor Three; 02.11.2018