Гелидон обслуживает статический контент

#jax-rs #helidon

Вопрос:

Я хотел бы разместить статический контент на своем сервере Helidon MP. Но я только понимаю No handler found for path: /static/index.html .

Я настроил статические ресурсы в src/main/resources/META-INF/microprofile-config.properties :

 server.static.classpath.location=/static
 

И я запускаю свой сервер с:

 Server.builder().config(Config.create()).build().start();
 

Я думаю, мне нужно добавить приложение JAXRS? Но как мне это сделать?

Я понял, что это работает, когда я использую io.helidon.microprofile.cdi.Main , но я хочу вручную создать сервер.

Ответ №1:

Это проблема конфигурации, которую вы используете io.helidon.Config.create() и которая не поддерживается microprofile-config.properties .

Если вы используете Server.create().start() , microprofile-config.properties будет работать «из коробки».

Если вы хотите передать свой собственный экземпляр конфигурации, вы можете сделать это следующим образом:

 Server.builder().config(ConfigProvider.getConfig()).build().start();
 

Это имеет тот же эффект, Server.create() что и .


Если вы хотите использовать API конфигурации Helidon, вы можете преобразовать экземпляр org.eclipse.microprofile.config.Config в io.helidon.config.Config такой:

 io.helidon.config.mp.MpConfig.toHelidonConfig(ConfigProvider.getConfig())