Создание Micronaut декларативного Http-клиента с URL-адресом динамического сервера в Grails 4 - PullRequest
1 голос
/ 28 октября 2019

Мое приложение Grails 4 использует разные URL-адреса внутренних серверов для каждой среды (dev, qa, prod1, prod2), поэтому можно создать декларативный httpClient Micronaut, используя URL-адрес сервера из приложения grails-app / config / applicationКонфигурационный файл .groovy?

Может быть, я должен поместить эти параметры в другой файл конфигурации?

Это моя клиентская реализация BackendClient.groovy

package my.package

import io.micronaut.http.annotation.Get
import io.micronaut.http.client.annotation.Client

@Client(value = '${backend.client.url}', path = '${backend.client.path}')
interface BackendClient {
    @Get("/healthCheck.json")
    List<Map> healthCheck()
}

и мой grails-app / conf / application. groovy file

backend.client.url='http://127.0.0.1:8080'
backend.client.path='/backend'

В настоящее время он работает только с переменными среды

BACKEND_CLIENT_URL=http://127.0.0.1:8080
BACKEND_CLIENT_PATH=/backend

Я получаю эту ошибку, если переменные среды не установлены

Type [my.package.BackendClient$Intercepted] executed with error: Could not resolve placeholder ${backend.client.url}
io.micronaut.context.exceptions.ConfigurationException: Could not resolve placeholder ${backend.client.url}

Спасибозаранее

...