Wie bekomme ich Jersey 2.5.1 auf tomcat-log request - /response-einschließlich Einrichtungen, (request - /response-body)

Ich habe ein Trikot 2.5.1 implementierten Anwendung auf tomcat. Ich habe folgende config in meine web.xml:

<init-param>
  <param-name>jersey.config.server.provider.classnames</param-name>
  <param-value>org.glassfish.jersey.filter.LoggingFilter</param-value>
</init-param>

Es drucken request-und response-Header. Es ist allerdings kein drucken der Anfrage - /Antwort-Einheiten/Einrichtungen in der Antwort.

Habe ich versucht das Spiel mit verschiedenen params aber kein Glück, wie:

INFO: 1 * Server has received a request on thread http-bio-8080-exec-3
1 > accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
1 > accept-encoding: gzip,deflate,sdch
1 > accept-language: en-US,en;q=0.8
1 > cache-control: no-cache
1 > connection: keep-alive
1 > cookie: JSESSIONID=1F5CCACA7DF2EABA9475C270A95C91B2
1 > host: localhost:8080
1 > pragma: no-cache
1 > user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36


Jan 24, 2014 1:01:31 AM org.glassfish.jersey.filter.LoggingFilter log
INFO: 1 * Server responded with a response on thread http-bio-8080-exec-3
1 < 200
1 < Content-Type: application/json

Danke für deine Antwort. sieht aus wie klebte ich eine falsche config oben. hier ist, was ich in meiner web.xml:

  <servlet>
    <servlet-name>jersey-servlet</servlet-name>
    <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
    <init-param>
      <param-name>jersey.config.server.provider.packages</param-name>
      <param-value>com.my.package.web.resources;org.codehaus.jackson.jaxrs</param-value>
    </init-param>
    <init-param>
        <param-name>jersey.config.server.provider.classnames</param-name>
        <param-value>org.glassfish.jersey.filter.LoggingFilter</param-value>
    </init-param>
    <init-param>
        <param-name>jersey.config.server.tracing</param-name>
        <param-value>ALL</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>jersey-servlet</servlet-name>
    <url-pattern>/*</url-pattern>
  </servlet-mapping>
</web-app>

Meldet es den Header. aber es wird nicht protokolliert den Entitäten. hier ist, was ich sehe in meinen logs:

Jan 28, 2014 2:36:38 PM org.glassfish.jersey.filter.LoggingFilter log
INFO: 5 * Server has received a request on thread http-bio-8080-exec-10
5 > GET http://localhost:8080/sample/api/foo
5 > accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
5 > accept-encoding: gzip,deflate,sdch
5 > accept-language: en-US,en;q=0.8
5 > cache-control: max-age=0
5 > connection: keep-alive
5 > cookie: JSESSIONID=1F5CCACA7DF2EABA9475C270A95C91B2
5 > host: localhost:8080
5 > user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36

Jan 28, 2014 2:36:38 PM Jan 28, 2014 2:36:38 PM org.glassfish.jersey.filter.LoggingFilter log
INFO: 5 * Server responded with a response on thread http-bio-8080-exec-10
5 < 200
5 < Content-Type: application/json

Mein Trikot Bereitstellung der Anwendung auf Tomcat-7_50-server.

wenn ich Ablaufverfolgung und loggingfilter die Konfiguration unter init-param in meinem web.xml. muss ich noch registrieren mit Recource Config?

public class MyApplication extends ResourceConfig wie folgt:

    public MyApplication() {
        //Register resources and providers using package-scanning.
        packages("my.package");

        //Register my custom provider - not needed if it's in my.package.
        register(SecurityRequestFilter.class);
        //Register an instance of LoggingFilter.
        register(new LoggingFilter(LOGGER, true));

        //Enable Tracing support.
        property(ServerProperties.TRACING, "ALL");
    }
}

InformationsquelleAutor singh | 2014-01-24

Schreibe einen Kommentar