Как получить журналы HTTP-запросов на консоли сервера гризли? - PullRequest
0 голосов
/ 10 сентября 2018

Следуя инструкции к руководству пользователя на Джерси, я создал небольшое веб-приложение REST на основе jax-rs. Это основной класс, запускающий сервер.

public class Main {
// Base URI the Grizzly HTTP server will listen on
public static final String BASE_URI = "http://localhost:8080/myapp/";

/**
 * Starts Grizzly HTTP server exposing JAX-RS resources defined in this application.
 *
 * @return Grizzly HTTP server.
 */
public static HttpServer startServer() {
    // create a resource config that scans for JAX-RS resources and providers
    // in com.example package
    final ResourceConfig rc = new ResourceConfig().packages("com.example");

    // create and start a new instance of grizzly http server
    // exposing the Jersey application at BASE_URI
    return GrizzlyHttpServerFactory.createHttpServer(URI.create(BASE_URI), rc);
}

/**
 * Main method.
 *
 * @param args
 * @throws IOException
 */
public static void main(String[] args) throws IOException {
    final HttpServer server = startServer();
    System.out.println(String.format("Jersey app started with WADL available at "
            + "%sapplication.wadl\nHit enter to stop it...", BASE_URI));
    System.in.read();
    server.shutdownNow();
   }
}

Обработчик метода ресурса для запроса GET:

@Path("myresource")
public class MyResource {

/**
 * Method handling HTTP GET requests. The returned object will be sent
 * to the client as "text/plain" media type.
 *
 * @return String that will be returned as a text/plain response.
 */
@GET
@Produces(MediaType.TEXT_PLAIN)
public String getIt() {
    return "Got it!";
   }
}

когда я запускаю сервер, я получаю это на консоли:

"C:\Program Files\Java\jdk1.8.0_171\bin\java.exe" ... 
 Sep 10, 2018 11:51:55 AM org.glassfish.grizzly.http.server.NetworkListener 
 start
 INFO: Started listener bound to [localhost:8080]
 Jersey app started with WADL available at 
 http://localhost:8080/myapp/application.wadl
 Hit enter to stop it...
 Sep 10, 2018 11:51:55 AM org.glassfish.grizzly.http.server.HttpServer start
 INFO: [HttpServer] Started.

Когда я отправляю запрос GET через Почтальона на http://localhost:8080/myapp/myresource,, он дает мне статус 200 OK с "Получил!" как тело ответа, но ничего не регистрируется в консоли сервера.

Это может быть очень простой вопрос, но как я могу реализовать его так, чтобы каждый раз, когда я отправляю HTTP-запрос на сервер гризли, запросы и ответы регистрировались на консоли? Я бы очень признателен за любую помощь.

...