У меня есть приложение «Кольцо», которое разворачивается до производства как вещь uberwar
; myservice.war. В производстве файл WAR получает бросил в Jetty, где он работает в контексте, который следует названиеМогу ли я запускать бегущий сервер без заголовка в конкретный контекст сервлета?
$ curl -i -X GET http://myservice.qa1.example.com:8080/myservice/healthz
HTTP/1.1 200 OK
...
Когда я бегу локально через LEIN кольцо, мне это нужно, чтобы работать в том же контексте; MyService.
$lein ring server-headless
2015-10-14 14:04:03,457 level=INFO [main] Server:271 - jetty-7.6.13.v20130916
2015-10-14 14:04:03,482 level=INFO [main] AbstractConnector:338 - Started [email protected]:10313
Started server on port 10313
Но тот же самый локоть идет на всех 404 на меня локально.
$ curl -i -X GET http://localhost:10313/myservice/healthz
HTTP/1.1 404 Not Found
...
Кольцо с изгибом развернуло его в корневом контексте.
$ curl -i -X GET http://localhost:10313/healthz
HTTP/1.1 200 OK
...
Что это? Как я могу привязать кольцо лейн к разворачиванию в имя контекста по своему выбору? Мне нужно curl -i -X GET http://localhost:10313/myservice/healthz
для работы с lein ring
О, мой. Отличный ответ. Завтра я посмотрю, получится ли это для меня. –
Хммм.Я вижу, что он пытается сделать, но когда я запускаю Jetty, он всегда не найден для/myservice/healthz. Это решение действительно умное, но для объяснения двух разных обработчиков в: ring vs: uberjar будет жесткой продажей в обзорах кода. Кажется, это пробел для меня, что? Lein кольцо? –
Ответ «Не найден», который вы видите, может быть вызван профилем uberjar, который не срабатывает при создании убервара. Это может быть связано с старой версией плагина «lein-ring» или некоторой опечаткой. Если '/ myservice/myservice/healthz' работает, то это, вероятно, проблема. – ez121sl