RestEasy TJWS базовый путь
Я создаю встроенный сервер, используя встроенный в JBoss RestEasy TJWS. Ограниченная документация является неточной, но я смог создать экземпляр сервера с тестовым ресурсом JAX-RS:
@Path("test")
public class TestResource {
public static void main(String[] args) throws Exception {
TJWSEmbeddedJaxrsServer tjws = new TJWSEmbeddedJaxrsServer();
tjws.setPort(8080);
tjws.start();
tjws.getDeployment().getRegistry().addPerRequestResource(TestResource.class);
}
...
Это позволяет мне просматривать http://localhost:8080/test
чтобы проверить GET
реализация метода (здесь не показано).
Но как мне указать, что встроенный сервер должен быть смонтирован по другому базовому пути? Например, как мне подключить тестовый ресурс к http://localhost:8080/example/test
? Конечно, я мог бы жестко закодировать это в @Path
обозначение, но базовый путь не должен быть частью ресурса - я должен иметь возможность повторно развернуть этот класс ресурсов на сервере J2EE в любом базовом пути.
Я предполагаю, что есть что-то вроде tjws.getDeployment().setBasePath("example")
что я еще не нашел. (Если у кого-то есть подробные документы для этого, пожалуйста, дайте мне знать!) Заранее спасибо.
1 ответ
До сих пор я обнаружил, что могу смоделировать это, указав префикс при добавлении ресурсов на сервер:
tjws.getDeployment().getRegistry().addPerRequestResource(TestResource.class, "example");
Это не совсем то, что я искал, но это позволяет мне получить доступ к ресурсу как http://localhost:8080/example/test
без необходимости указывать этот базовый путь в определении ресурса.