With this in mine is it the intention that the built WAR be targeted for
only Servlet 2.5 containers as to use in a > 2.5 container the WAR must :

1) Have the web.xml modified

2) Add the el-api.jar to WEB-INF/lib


Perhaps it makes more sense to build the WAR with these
additions/modifications and then it can be deployed in a better selection of
available containers without modification.


On Fri, Aug 21, 2009 at 2:25 PM, Bill Higgins<[email protected]> wrote:

It looks like Shindig beta 2 still has dependencies on Servlet 2.5 classes,
particularly javax.el.* which is the expression language api introduced as
part of Servlet 2.5. Was this addressed in a more recent Shindig code drop?

javax.el is not Servlet 2.5. It's part of Java EE5 (as is Servlet 2.5), but
like most javax APIs can be installed independently.

Just grab a javax.el API JAR and add it to your container, e.g. from
http://download.java.net/maven/2/javax/el/el-api/1.0/

-- Adam

Trying to start in a 2.4 container results in stacktraces like this :

Caused by: java.lang.NoClassDefFoundError: javax.el.FunctionMapper    at
java.lang.ClassLoader.defineClassImpl(Native Method)    at
java.lang.ClassLoader.defineClass(ClassLoader.java:228)    at
java.security.SecureClassLoader.defineCla ss(SecureClassLoader.java:148)
 at java.net.URLClassLoader.defineClass(URLClassLoader.java:557)    at
java.net.URLClassLoader.access$400(URLClassLoader.java:120)    at
java.net.URLClassLoader$ClassFinder.run(URLClassLoader.java:962)    at
java.security.AccessController.doPrivileged(AccessController.java:275)    at
java.net.URLClassLoader.findClass(URLClassLoader.java:488)    at
org.mortbay.http.ContextLoader.loadClass(ContextLoader.java:219)    at
org.mortbay.http.ContextLoader.loadClass(ContextLoader.java:187)    at
java.lang.Class.getDeclaredConstructorsImpl(Native Method)    at
java.lang.Class.getDeclaredConstructors(Class.java:468)    at
com.google.inject.spi.InjectionPoint.forConstructorOf(InjectionPoint.java:185)
   at
com.google.inject.ConstructorInjectorStore.createConstructor(ConstructorInjectorStore.
java:61)    at
com.google.inject.ConstructorInjectorStore.access$000(ConstructorInjectorStore.java:31)
   at
com.google.inject.ConstructorInjectorStore$1.create(ConstructorInjectorStore.java:39)
   at
com.google.inject.ConstructorInjectorStore$1.create(ConstructorInjectorStore.java:37)
   at
com.google.inject.internal.FailableCache$1.apply(FailableCache.java:35)
 at
com.google.inject.internal.MapMaker$StrategyImpl.compute(MapMaker.java:549)

On Mon, Aug 10, 2009 at 1:48 PM, Adam Winer <[email protected]> wrote:

Yes, that page is automatically generated by Maven.

On Mon, Aug 10, 2009 at 7:29 AM, Dave<[email protected]> wrote:

I see that the root POM has been updated to indicate Servlet 2.4 dependency.
Thanks!

The dependency page still reads 2.5:
http://incubator.apache.org/shindig/shindig-1.1.x/dependencies.html

I assume that will be automatically updated the next time the site is
regenerated by Maven. Is that the case or do we need to do something else to
update that page?

Thanks, Dave

On Tue, Aug 4, 2009 at 12:21 PM, Adam Winer<[email protected]> wrote:

True, but that doesn't mean we have to compile Shindig against Servlet 2.5.
 The servlet dependency is "provided" scope for Maven, which means it can be
substituted at runtime with a newer version.

It looks as though Shindig has a hard dependency on the Servlet 2.4 API
(ServletResponse.setCharacterEncoding()), but none on 2.5.  I'll update the
root maven pom.xml to indicate we require 2.4.

Dave, if you need something earlier than 2.4, please open an issue - we
could get rid of that dependency without too much effort (it's really just a
convenience API for getContentType()).

On Tue, Aug 4, 2009 at 9:17 AM, Vincent Siveton<[email protected]>

wrote:

2009/8/4, Ian Boston <[email protected]>:

I think the version of Jetty *might* be 2.5 ?

Yes you right

Vincent

-- 

- Bill

Reply via email to