The gate does not require speed, although it can interact with it through the .jar calibration speed library.
Fully stacktrace can help determine what is trying to load it, although problems with running web applications can be painful for diagnosis.
EDIT:
The relevant piece of stacktrace seems
java.lang.NoClassDefFoundError: org/apache/velocity/app/Velocity at org.apache.wicket.velocity.Initializer.init(Initializer.java:63) at org.apache.wicket.Application.callInitializers(Application.java:843) at org.apache.wicket.Application.initializeComponents(Application.java:678) at org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:725)
Thus, the gate application is certainly trying to load speed, and we cannot blame the glass fish. I will go to a machine where I have a gate source, and maybe more ideas will come back, but it seems to me that your web.xml may also have useful information about the gate configuration.
Diagnostics
Not a web.xml problem.
The problem is that Application.callInitializers() loads initializers from all wicket.properties files into the classpath and tries to initialize related components.
You have wicket-velocity.jar on your way to the class, although you are not using speed, and the gate tries to initialize it, because it contains a wicket.properties file that calls org.apache.wicket.velocity.Initializer.init() ( which is also located at the wickets -velocity.jar). This method attempts to call the static init method in Velocity, which is not in the classpath.
If you get wicket-velocity.jar from your class path, this problem should go away.
source share