jsp - tag - Embedded Jetty buscando archivos dentro de su archivo Jar
tipos de etiquetas jsp (4)
Integré Jetty con éxito en una aplicación de prueba. Puede servir archivos sin problemas. Ahora quiero saber si es posible que Jetty sirva archivos que están dentro de su propio archivo Jar.
¿Alguien sabe si eso es posible?
Encontré la respuesta y no es Jetty, es Winstone. http://winstone.sf.net
Es bastante simple, si arrojas a Spring en la ecuación. Y aquí va:
... WebAppContext webAppContext = new WebAppContext(); webAppContext.setServer(server); webAppContext.setContextPath("/"); webAppContext.setResourceBase(new ClassPathResource("webapp").getURI().toString()); server.addHandler(webAppContext); ....
Eso hará que embarcadero encuentre los recursos web necesarios dentro del archivo jar.
Se incluye un ejemplo en la página de incrustación de Jetty en http://docs.codehaus.org/display/JETTY/Embedding+Jetty
El truco es crear una URL de archivo para su ubicación de ruta de clase.
String webDir = this.class.getClassLoader().getResource("com/company/project/mywebdir").toExternalForm();
ServletContextHandler context = new ServletContextHandler();
context.setContextPath("/");
context.setResourceBase(webDir);
Tal vez más de un truco, ¿pero no son archivos JAR realmente ZIP? (no estoy seguro) ¿Podrían descomprimirlos en una carpeta temporal y servirlos desde allí?