A couple of points on your pom.xml Don't shade anything in the javax.* space, or glassfish, or anything to do with logging (slf4j and log4j). Don't use version ranges in your dependencies. Specify the specific servlet-api, jsp, el, and glassfish jsp versions appropriate to the version of jetty that you are using.
-- Joakim Erdfelt [email protected] On Mon, Jan 9, 2012 at 2:24 PM, Eugen Cepoi <[email protected]> wrote: > I'm running jetty from inside my "executable war". > I've extracted the server dependencies (all content of jetty > jars,jsp,servlet,etc) at the root of the war and removed them from > WEB-INF/lib. > So in this way they are in the containers classpath no? For jstl I'm using > javax.servlet:jstl artifact. > > I'm doing surely something wrong as it works when I run it from eclipse, > but I can't find what... > > Here are the relevant parts of the pom I use. Thank's! > > <dependencies> > .... > <dependency> > <groupId>org.eclipse.jetty</groupId> > <artifactId>jetty-server</artifactId> > <version>${jetty.version}</version> > </dependency> > <dependency> > <groupId>org.eclipse.jetty</groupId> > <artifactId>jetty-webapp</artifactId> > <version>${jetty.version}</version> > </dependency> > <dependency> > <groupId>org.eclipse.jetty</groupId> > <artifactId>jetty-deploy</artifactId> > <version>${jetty.version}</version> > </dependency> > > <dependency> > <groupId>javax.servlet</groupId> > <artifactId>jstl</artifactId> > <version>1.2</version> > </dependency> > > > <dependency> > <groupId>org.glassfish.web</groupId> > <artifactId>jsp-impl</artifactId> > <version>[2.2.1,)</version> > </dependency> > > <dependency> > <groupId>javax.servlet.jsp</groupId> > <artifactId>jsp-api</artifactId> > <version>[2.2,)</version> > </dependency> > > <dependency> > <groupId>javax.el</groupId> > <artifactId>el-api</artifactId> > <version>[2.2,)</version> > </dependency> > > <dependency> > <groupId>org.glassfish.web</groupId> > <artifactId>el-impl</artifactId> > <version>[2.2,)</version> > </dependency> > .... > </dependencies> > > > <plugins> > .... > <plugin> > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-war-plugin</artifactId> > <version>2.1.1</version> > <configuration> > > <packagingExcludes>WEB-INF/lib/*jetty*.jar,WEB-INF/lib/*slf4j*.jar,WEB-INF/lib/*log4j*.jar,WEB-INF/lib/*servlet-api*.jar,WEB-INF/lib/*jstl*.jar,WEB-INF/lib/*el-api*.jar,WEB-INF/lib/*el-impl*.jar,WEB-INF/lib/*jsp-api*.jar,WEB-INF/lib/*jsp-impl*.jar</packagingExcludes> > </configuration> > </plugin> > > <plugin> > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-shade-plugin</artifactId> > <version>1.4</version> > <executions> > <execution> > <phase>package</phase> > <goals> > <goal>shade</goal> > </goals> > <configuration> > > <createDependencyReducedPom>true</createDependencyReducedPom> > <artifactSet> > <includes> > <include>*jetty:*</include> > <include>org.slf4j:*</include> > <include>log4j:*</include> > > <include>javax.servlet:servlet-api:*</include> > <include>javax.servlet:jstl:*</include> > > <include>javax.servlet.jsp:*:*</include> > <include>javax.el:*:*</include> > > <include>org.glassfish.web:*:*</include> > </includes> > </artifactSet> > <transformers> > <transformer > > implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> > > <mainClass>xxx.web.server.EmbeddedJettyServer</mainClass> > <manifestEntries> > <Class-Path>./etc/</Class-Path> > </manifestEntries> > </transformer> > </transformers> > </configuration> > </execution> > </executions> > </plugin> > > <plugin> > <artifactId>maven-antrun-plugin</artifactId> > <executions> > <execution> > <id>move-main-class</id> > <phase>compile</phase> > <configuration> > <tasks> > <copy > > todir="${project.build.directory}/${project.artifactId}-${project.version}"> > <fileset > dir="src/main/webapp/WEB-INF/classes/"> > <include > name="xxx/web/server/*.class" /> > </fileset> > </copy> > </tasks> > </configuration> > <goals> > <goal>run</goal> > </goals> > </execution> > </executions> > </plugin> > .... > </plugins> > > > > 2012/1/9 Jan Bartel <[email protected]> > >> Eugen, >> >> The jstl jars need to be on the container's classpath, not inside your >> webapp. Can you see the $JETTY_HOME/lib/jsp directory contains the >> jstl jars org.apache.taglibs.standard.glassfish_1.2.0.v201004190952.jar >> and javax.servlet.jsp.jstl_1.2.0.v201004190952.jar >> >> regards >> Jan >> >> On 28 December 2011 09:54, Eugen Cepoi <[email protected]> wrote: >> > Hi, >> > >> > I maybe said that everything was fine a bit fast... >> > When I run the assembled war by maven (if it's from inside eclipse its >> ok) >> > I've got this exception when I try to display a jsp with jstl inside >> > >> > The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved >> in >> > either web.xml or the jar files deployed with this application >> > >> > If I replace jetty versions by RC1 it works again (but of course it's >> not ok >> > as I need the correction provided by RC2). >> > >> > Are you able to reproduce this bug? If no I can provide an example. >> > >> > Happy christmas ! =) >> > >> > Eugen >> > >> > >> > 2011/12/23 Eugen Cepoi <[email protected]> >> >> >> >> Yep its included in rc2. >> >> Thanks, >> >> Eugen >> >> >> >> Le 22 déc. 2011 23:58, "Jesse McConnell" <[email protected]> a >> >> écrit : >> >> >> >>> I just released 8.1.0.RC2 a few minutes ago, I suspect this change >> >>> would be in that.. >> >>> >> >>> cheers, >> >>> jesse >> >>> >> >>> -- >> >>> jesse mcconnell >> >>> [email protected] >> >>> >> >>> >> >>> >> >>> On Thu, Dec 22, 2011 at 16:22, Jan Bartel <[email protected]> wrote: >> >>> > Eugen, >> >>> > >> >>> > Glad to hear this is working. This change will be released with >> >>> > 8.1.0.RC1, which should be happening within the next few weeks. >> >>> > No idea on the windows/linux difference, sorry. Not something I've >> >>> > come across before with jetty. >> >>> > >> >>> > Jan >> >>> > >> >>> > On 23 December 2011 09:12, Eugen Cepoi <[email protected]> >> wrote: >> >>> >> Hi Jan, >> >>> >> Nice, it corrects the problem of hot deployment of jsps and the >> >>> >> jsp-config >> >>> >> from the web.xml >> >>> >> Could it be integrated in the RC1 (or an RC2) so people using range >> >>> >> version >> >>> >> of jetty can get it? Actually the latest version seems to be RC1 in >> >>> >> the >> >>> >> maven-metadata file, so if I don't explicit that I want the >> >>> >> 8.1.0-SNAPSHOT I >> >>> >> can't get it. >> >>> >> >> >>> >> Also do you have some clue on the difference of the memory load in >> RAM >> >>> >> between windows and linux? >> >>> >> However, it has maybe nothing do with jetty... >> >>> >> >> >>> >> Kind regards, >> >>> >> Eugen >> >>> >> >> >>> >> >> >>> >> 2011/12/22 Jan Bartel <[email protected]> >> >>> >>> >> >>> >>> Fix checked in to trunk. I've also pushed a new snapshot >> distribution >> >>> >>> here: >> >>> >>> >> >>> >>> >> >>> >>> >> https://oss.sonatype.org/content/groups/jetty/org/eclipse/jetty/jetty-distribution/8.1.0-SNAPSHOT/ >> >>> >>> >> >>> >>> Please select and download the snapshot with the most recent date >> on >> >>> >>> it and try it out - the jsp config should now be working. >> >>> >>> >> >>> >>> Jan >> >>> >>> >> >>> >>> On 22 December 2011 16:08, Jan Bartel <[email protected]> wrote: >> >>> >>> > Ooops. The jsp problem is a bug in jetty-8's handling of the >> >>> >>> > jsp-config element. Specifically, we're not returning it for the >> >>> >>> > new >> >>> >>> > ServletContext.getJspConfigDescriptor() method, which jasper in >> >>> >>> > jetty-8 relies on. >> >>> >>> > >> >>> >>> > I've opened this bug: >> >>> >>> > https://bugs.eclipse.org/bugs/show_bug.cgi?id=367383 >> >>> >>> > >> >>> >>> > Should have a fix for you shortly. >> >>> >>> > >> >>> >>> > Jan >> >>> >>> > >> >>> >>> > On 22 December 2011 08:50, Eugen Cepoi <[email protected]> >> >>> >>> > wrote: >> >>> >>> >> Hi all, >> >>> >>> >> >> >>> >>> >> I have a couple of problems and need your help and some >> >>> >>> >> recommendations >> >>> >>> >> on >> >>> >>> >> embedding jetty in a web app. >> >>> >>> >> I don't want to use maven to run it (no jetty:run) and I also >> >>> >>> >> don't >> >>> >>> >> want to >> >>> >>> >> use the start jar provided. As I want the war to be self >> >>> >>> >> sufficient. >> >>> >>> >> To do so I have, implemented 2 classes for embedding jetty: >> >>> >>> >> - one is the "production" server main >> class, >> >>> >>> >> that >> >>> >>> >> will >> >>> >>> >> be moved to the root of the war, >> >>> >>> >> - the other is an implementation with hot >> >>> >>> >> deploy >> >>> >>> >> enabled >> >>> >>> >> to run during development (from eclipse for example). >> >>> >>> >> And configured a pom for maven to produce the executable war (I >> >>> >>> >> use >> >>> >>> >> shade >> >>> >>> >> plugin to build it and choose only the needed artifacts to be >> >>> >>> >> copied at >> >>> >>> >> the >> >>> >>> >> root and deleted them from the WEB-INF/lib). >> >>> >>> >> >> >>> >>> >> Most of the things work fine except : >> >>> >>> >> - If I use jetty 8 the jsp-config in >> web.xml >> >>> >>> >> doesn't >> >>> >>> >> seem to be recognised, if I go back to jetty 7 and servlet 2.5 >> >>> >>> >> it's ok. >> >>> >>> >> However I would like to use jetty 8... am I missing something? >> I >> >>> >>> >> am >> >>> >>> >> using >> >>> >>> >> glassfishs implementations. >> >>> >>> >> >> >>> >>> >> - Second problem. When I am using my >> >>> >>> >> development >> >>> >>> >> implementation of the server I have nullpointerexception in >> >>> >>> >> JstlBaseTLV.validate after a hot deploy of a jsp. If I look at >> the >> >>> >>> >> code, I >> >>> >>> >> can see that the initParameters map is null. Do you have any >> clue >> >>> >>> >> on >> >>> >>> >> how I >> >>> >>> >> could solve this problem? This one is pretty annoying... >> >>> >>> >> >> >>> >>> >> - Last problem, when I am running the >> server >> >>> >>> >> on >> >>> >>> >> debian >> >>> >>> >> linux the app takes twice as much memory as in windows xp... >> does >> >>> >>> >> someone >> >>> >>> >> already had this kind of problem? >> >>> >>> >> >> >>> >>> >> I am joining to the mail an extract of the pom and the two >> >>> >>> >> simplified >> >>> >>> >> server >> >>> >>> >> classes. >> >>> >>> >> Thank you for your help. >> >>> >>> >> >> >>> >>> >> Kind regards, >> >>> >>> >> Eugen >> >>> >>> >> >> >>> >>> >> _______________________________________________ >> >>> >>> >> jetty-users mailing list >> >>> >>> >> [email protected] >> >>> >>> >> https://dev.eclipse.org/mailman/listinfo/jetty-users >> >>> >>> >> >> >>> >>> _______________________________________________ >> >>> >>> jetty-users mailing list >> >>> >>> [email protected] >> >>> >>> https://dev.eclipse.org/mailman/listinfo/jetty-users >> >>> >> >> >>> >> >> >>> >> >> >>> >> _______________________________________________ >> >>> >> jetty-users mailing list >> >>> >> [email protected] >> >>> >> https://dev.eclipse.org/mailman/listinfo/jetty-users >> >>> >> >> >>> > _______________________________________________ >> >>> > jetty-users mailing list >> >>> > [email protected] >> >>> > https://dev.eclipse.org/mailman/listinfo/jetty-users >> >>> _______________________________________________ >> >>> jetty-users mailing list >> >>> [email protected] >> >>> https://dev.eclipse.org/mailman/listinfo/jetty-users >> > >> > >> > >> > _______________________________________________ >> > jetty-users mailing list >> > [email protected] >> > https://dev.eclipse.org/mailman/listinfo/jetty-users >> > >> _______________________________________________ >> jetty-users mailing list >> [email protected] >> https://dev.eclipse.org/mailman/listinfo/jetty-users >> > > > _______________________________________________ > jetty-users mailing list > [email protected] > https://dev.eclipse.org/mailman/listinfo/jetty-users > >
_______________________________________________ jetty-users mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/jetty-users
