Jersey (JAX-RS) - ServletContextListener

Diskutiere Jersey (JAX-RS) - ServletContextListener im Application Tier Forum; Hi zusammen, was ist in einer Jersey-Anwendung das Equivalenz zu enem ServletContextListener in einer rein Servlet-basierten App? In der...

  1. pr
    pr Neues Mitglied
    Hi zusammen,
    was ist in einer Jersey-Anwendung das Equivalenz zu enem ServletContextListener in einer rein Servlet-basierten App? In der contextInitialized()-Methode des Listeners füge ich dem ServletContext ein DAO-Objekt hinzu, damit global darauf zugegriffen werden kann. Wo würde ich das in einer Jersey-Anwendung machen? Es soll keine EJB verwendet werden, die Anwendung muss weiterhin in einem reinen Servlet-Container lauffähig sein. Danke!
     
  2. Vielleicht hilft dir dieser Kurs hier weiter --> (hier klicken)
  3. pr
    pr Neues Mitglied
    (PS: Mir ist klar, dass ich auch mit Jersey, da es ein Wrapper um die Servlet-API ist, einen ServletContextListener benutzen könnte, die Frage ist aber,ob es da nicht eine Jersey-typische Lösung gibt, als das so 'low-level' anzugehen.)
     
  4. sascha-sphw
    sascha-sphw Mitglied
    Wenn ich über den Maven archetype jersey-quickstart-grizzly2 ein Projekt erzeuge, bekomme ich folgende Main.java generiert.
    Code (Java):
    package de.sphw;

    import org.glassfish.grizzly.http.server.HttpServer;
    import org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpServerFactory;
    import org.glassfish.jersey.server.ResourceConfig;

    import java.io.IOException;
    import java.net.URI;

    /**
    * Main class.
    *
    */

    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 de.sphw package
           final ResourceConfig rc = new ResourceConfig().packages("de.sphw");

            // 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.stop();
        }
    }
    Hier sieht man, dass diese App nicht in einem ServletContainer läuft, sondern den Server selbst startet, womit es dann auch keinen ServletContextListener braucht.
    Wenn Du Deine Anwendung aber in einem ServletContainer laufen lassen möchtest, wirst Du IMHO nicht um einen Listener herum kommen.
     
    supercop89 gefällt das.
  5. supercop89
    supercop89 Neues Mitglied
    Hallo Sascha!
    Danke für deine Antwort.

    Würde ich hier vor Starten des HTTP Servers einen Background Thread starten, der z.B. regelmäßíg eine Liste befüllt. Hätte ich dann irgendwie technisch die Möglichkeit diese danach in einem der Webservice Funktionen die im HTTP Server erreicbhar sind, die List mit den aktuellen Werten abzufragen?

    Wäre echt klasse, wenn du mir dazu Auskunft geben könntest.

    LG cop

     
Die Seite wird geladen...

Jersey (JAX-RS) - ServletContextListener - Ähnliche Themen

Jersey (JAX-RS) - Background Thread + Objektzugriff
Jersey (JAX-RS) - Background Thread + Objektzugriff im Forum Application Tier
Upload Request mittels Jersey und Multipart
Upload Request mittels Jersey und Multipart im Forum SOA
Java Jersey Interceptor
Java Jersey Interceptor im Forum Allgemeines EE
Jersey Http 404 bei Redirect
Jersey Http 404 bei Redirect im Forum SOA
Jersey RESTful mit EJB
Jersey RESTful mit EJB im Forum Allgemeines EE
Thema: Jersey (JAX-RS) - ServletContextListener