You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by #Cyrille37# <cy...@gmail.com> on 2007/06/29 16:58:15 UTC

[T4.1.2] and Spring: works with Tomcat, fail with Jetty

Hi,

I'm just doing some very simples tests with
    - Tapestry 4.1.2
    - Spring 2.0.5
    - Tapestry-spring-1.0.0
and
    - Tomcat 5.5.23
    - Jetty 5.1.12

I've got a simple session bean defined in SpringContext and I inject it 
in a page.

spring:
    <bean id="myLittleNanoBeanSession" 
class="tapandspring.beans.NanoBean" scope="session" />

java :
  @InjectSpring("myLittleNanoBeanSession")
  public abstract NanoBean getBean1();

html:
    <span jwcid="@Insert" value="ognl:bean1.value"></span>

TOMCAT :
- If I run with Tomcat the bean is well injected in the page.

JETTY :
- but when running whith Jetty it could not inject the session bean
the error is :
No thread-bound request found: Are you referring to request attributes 
outside of an actual web request? If you are actually operating within a 
web request and still receive this message,your code is probably running 
outside of DispatcherServlet/DispatcherPortlet: In this case, use 
RequestContextListener or RequestContextFilter to expose the current 
request.

I could not figure why it's append ... Any idea ?
Cyrille

Stack Trace:
org.springframework.web.context.request.RequestContextHolder.currentRequestAttributes(RequestContextHolder.java:102) 

org.springframework.web.context.request.SessionScope.get(SessionScope.java:88) 

org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:285) 

org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160) 

org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:733) 

$BeanFactory_11377f7b791.getBean($BeanFactory_11377f7b791.java)
$BeanFactory_11377f7b78f.getBean($BeanFactory_11377f7b78f.java)
$Page1_1.getBean1($Page1_1.java)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 

sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 

java.lang.reflect.Method.invoke(Method.java:597)
ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:743)
ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:1167)
ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:60) 

ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:142)
ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1882)
ognl.ASTProperty.getValueBody(ASTProperty.java:109)
ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:200)
ognl.SimpleNode.getValue(SimpleNode.java:244)
ognl.ASTChain.getValueBody(ASTChain.java:137)
ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:200)
ognl.SimpleNode.getValue(SimpleNode.java:244)
ognl.Ognl.getValue(Ognl.java:494)
ognl.Ognl.getValue(Ognl.java:458)
org.apache.tapestry.services.impl.HiveMindExpressionCompiler.compileExpression(HiveMindExpressionCompiler.java:148) 

ognl.OgnlRuntime.compileExpression(OgnlRuntime.java:498)
ognl.Ognl.compileExpression(Ognl.java:141)
org.apache.tapestry.services.impl.ExpressionCacheImpl.parse(ExpressionCacheImpl.java:152) 

org.apache.tapestry.services.impl.ExpressionCacheImpl.getCompiledExpression(ExpressionCacheImpl.java:115) 

$ExpressionCache_11377f7b7b9.getCompiledExpression($ExpressionCache_11377f7b7b9.java) 

org.apache.tapestry.binding.ExpressionBinding.resolveExpression(ExpressionBinding.java:134) 

org.apache.tapestry.binding.ExpressionBinding.getObject(ExpressionBinding.java:125) 

org.apache.tapestry.binding.AbstractBinding.getObject(AbstractBinding.java:84) 

$Insert_2.getValue($Insert_2.java)
org.apache.tapestry.components.Insert.renderComponent(Insert.java:48)
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725)
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:180) 

org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:107)
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725)
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:178) 

org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:249)
org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:397)
org.apache.tapestry.services.impl.DefaultResponseBuilder.renderResponse(DefaultResponseBuilder.java:152) 

org.apache.tapestry.services.impl.ResponseRendererImpl.renderResponse(ResponseRendererImpl.java:33) 

$ResponseRenderer_11377f7b682.renderResponse($ResponseRenderer_11377f7b682.java) 

org.apache.tapestry.engine.PageService.service(PageService.java:68)
$IEngineService_11377f7b6fc.service($IEngineService_11377f7b6fc.java)
org.apache.tapestry.services.impl.EngineServiceInnerProxy.service(EngineServiceInnerProxy.java:77) 

org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(EngineServiceOuterProxy.java:72) 

org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:237)
org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:54) 

$WebRequestServicer_11377f7b6d8.service($WebRequestServicer_11377f7b6d8.java) 

$WebRequestServicer_11377f7b6d4.service($WebRequestServicer_11377f7b6d4.java) 

org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:61) 

$ServletRequestServicer_11377f7b6ba.service($ServletRequestServicer_11377f7b6ba.java) 

org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55) 

$ServletRequestServicerFilter_11377f7b6b6.service($ServletRequestServicerFilter_11377f7b6b6.java) 

$ServletRequestServicer_11377f7b6bc.service($ServletRequestServicer_11377f7b6bc.java) 

org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52) 

$ServletRequestServicerFilter_11377f7b6b4.service($ServletRequestServicerFilter_11377f7b6b4.java) 

$ServletRequestServicer_11377f7b6bc.service($ServletRequestServicer_11377f7b6bc.java) 

org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53) 

$ServletRequestServicerFilter_11377f7b6b8.service($ServletRequestServicerFilter_11377f7b6b8.java) 

$ServletRequestServicer_11377f7b6bc.service($ServletRequestServicer_11377f7b6bc.java) 

$ServletRequestServicer_11377f7b6ae.service($ServletRequestServicer_11377f7b6ae.java) 

org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:126) 

org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:103)
javax.servlet.http.HttpServlet.service(HttpServlet.java:596)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:428)
org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:473) 

org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:568)
org.mortbay.http.HttpContext.handle(HttpContext.java:1530)
org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:633) 

org.mortbay.http.HttpContext.handle(HttpContext.java:1482)
org.mortbay.http.HttpServer.service(HttpServer.java:909)
org.mortbay.http.HttpConnection.service(HttpConnection.java:820)
org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:986)
org.mortbay.http.HttpConnection.handle(HttpConnection.java:837)
org.mortbay.http.SocketListener.handleConnection(SocketListener.java:245)
org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:357)
org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:534)
 


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org