Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jetty-users] NPE in JspPropertyGroupServlet using SPDY

Hi.

I've just upgraded to Jetty 9.0.1 and im trying to get my webapp working with SPDY.

I'm using a fairly standard config of jetty, have enabled SPDY by uncommenting the relevant sections in start.ini. All bundled test webapps works fine over SPDY and regular HTTP.

My  app works fine over standard HTTP on port 80 but when I try to access a jsp over https/443 I get the stacktrace below.

Having debugged this in I've located the source to this line in org.eclipse.jetty.servlet.JspPropertyGroupServlet, line 99:

Request request=(req instanceof Request)?(Request)req:HttpConnection.getCurrentConnection().getHttpChannel().getRequest();

The call to HttpConnection.getCurrentConnection() returns null. I'm using spring and the actual type of the Request object is "org.springframework.security.web.firewall.RequestWrapper"

if I call the same url using port 80, the  HttpConnection.getCurrentConnection() call returns an instance of org.eclipse.jetty.server.HttpConnection and everything works fine.

Is this a bug, or am I doing something wrong here?

Best Regards,
Henric



java.lang.NullPointerException
	at org.eclipse.jetty.servlet.JspPropertyGroupServlet.service(JspPropertyGroupServlet.java:99)
	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:681)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:449)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:138)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:582)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:213)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1083)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:376)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:175)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1017)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136)
	at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:261)
	at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:101)
	at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:238)
	at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:262)
	at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1180)
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:950)
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:735)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:681)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1449)
	at adfero.webservice.web.filter.gzipfilter.UserAgentFilter.doFilter(UserAgentFilter.java:42)
	at adfero.webservice.web.filter.gzipfilter.GzipFilter.doFilter(GzipFilter.java:144)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1420)
	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:163)
	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1420)
	at adfero.webservice.web.filter.LogMDCFilter.doFilterInternal(LogMDCFilter.java:26)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1420)
	at adfero.webservice.web.filter.SessionFilter.doFilterInternal(SessionFilter.java:49)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1420)
	at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:164)
	at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
	at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
	at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:417)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1420)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:447)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:138)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:540)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:213)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1083)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:376)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:175)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1017)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136)
	at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:258)
	at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:109)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
	at org.eclipse.jetty.server.Server.handle(Server.java:451)
	at org.eclipse.jetty.server.HttpChannel.run(HttpChannel.java:252)
	at org.eclipse.jetty.spdy.server.http.HttpChannelOverSPDY$1.run(HttpChannelOverSPDY.java:91)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:596)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:527)
	at java.lang.Thread.run(Thread.java:722)




--
mvh

Henric Larsson

Back to the top