You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Ken nashua <nh...@hotmail.com> on 2007/07/24 00:38:12 UTC

0gnl-2.7.1-SNAPSHOT bug... please help

Folks,

My java code is fine... this template keeps failing. It seems OGNL cannot 
negotiate/articulate propertyDescriptor for my contrib:table column.


<span jwcid="$content$">
	<table jwcid="table">
		<div jwcid="linkColumnValue@Block">
			<a jwcid="editLink@EditLink" model="ognl:object" href="#">
			<span jwcid="linkInsert@Insert"
				value="ognl:object[#this.linkProperty]"/></a>
		</div>

		<div jwcid="blobColumnValue@Block">
			<span jwcid="@TrailsDownload"
				  propertyDescriptor="ognl:column.propertyDescriptor"
				  model="ognl:object"
				  bytes="ognl:object[#this.column.propertyDescriptor.name]"
				/>
		</div>
	</table>
</span>

This is the problem component... blobColumnValue@Block
This is the problem line propertyDescriptor="ognl:column.propertyDescriptor"

Any attempts to reference PropertyDescriptor produce bindingexception.

Stack trace below...

Does anyone know of an OGNL workaround? OGNL seems to work ok if I omit the 
second block. It does not seem to be able to operate across blocks.

Thanks for your attention. Just really stuck.

Best regards
Ken in nashua

An exception has occurred.
You may continue by restarting the session.

[ +/- ] Exception:
Unable to parse OGNL expression 'blobDescriptorExtension.renderType.image': 
blobDescriptorExtension org.apache.tapestry.BindingException
Unable to parse OGNL expression 'blobDescriptorExtension.renderType.image': 
blobDescriptorExtension
binding: ExpressionBinding[DefaultList/$ObjectTable.$TrailsDownload 
blobDescriptorExtension.renderType.image]  location: 
classpath:/org/trails/component/blob/TrailsDownload.html, line 2
1 <span jwcid="$content$">
2 <span jwcid="@If" 
condition="ognl:blobDescriptorExtension.renderType.image">
3 <a jwcid="@ServiceLink" service="BlobService" 
parameters="ognl:byteArrayAsset">
4 <img jwcid="@MimedImage"
5 propertyDescriptor="ognl:propertyDescriptor"
6 model="ognl:model"
7 image="ognl:byteArrayAsset"


[ +/- ] Exception:
Unable to parse OGNL expression 'blobDescriptorExtension.renderType.image': 
blobDescriptorExtension org.apache.hivemind.ApplicationRuntimeException
Unable to parse OGNL expression 'blobDescriptorExtension.renderType.image': 
blobDescriptorExtension


[ +/- ] Exception:
blobDescriptorExtension ognl.OgnlException
blobDescriptorExtension


[ +/- ] Exception:
Unable to parse OGNL expression 
'object[#this.column.propertyDescriptor.name]': source is null for 
getProperty(null, "propertyDescriptor") org.apache.tapestry.BindingException
Unable to parse OGNL expression 
'object[#this.column.propertyDescriptor.name]': source is null for 
getProperty(null, "propertyDescriptor")
binding: ExpressionBinding[DefaultList/$ObjectTable 
object[#this.column.propertyDescriptor.name]]  location: 
classpath:/org/trails/component/ObjectTable.html, line 11
6 <span jwcid="linkInsert@Insert"
7 value="ognl:object[#this.linkProperty]"/></a>
8 </div>
9
10 <div jwcid="blobColumnValue@Block">
11 <span jwcid="@TrailsDownload"
12 propertyDescriptor="ognl:object[#this.column.propertyDescriptor.name]"
13 model="ognl:object"
14 bytes="ognl:object[#this.column.propertyDescriptor.name]"
15 />
16 </div>


[ +/- ] Exception:
Unable to parse OGNL expression 
'object[#this.column.propertyDescriptor.name]': source is null for 
getProperty(null, "propertyDescriptor") 
org.apache.hivemind.ApplicationRuntimeException
Unable to parse OGNL expression 
'object[#this.column.propertyDescriptor.name]': source is null for 
getProperty(null, "propertyDescriptor")


[ +/- ] Exception:
source is null for getProperty(null, "propertyDescriptor") 
ognl.OgnlException
source is null for getProperty(null, "propertyDescriptor")
Stack Trace:
ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1908) 
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.ASTProperty.getProperty(ASTProperty.java:99) 
ognl.ASTProperty.getValueBody(ASTProperty.java:107) 
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:524) 
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_113f530338c.getCompiledExpression($ExpressionCache_113f530338c.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) 
$TrailsDownload_34.getPropertyDescriptor($TrailsDownload_34.java) 
org.trails.component.blob.TrailsDownload.getBlobDescriptorExtension(TrailsDownload.java:53) 
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:585) 
ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:769) 
ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:1193) 
ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:60) 
ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:142) 
ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1914) 
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:524) 
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_113f530338c.getCompiledExpression($ExpressionCache_113f530338c.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) 
org.apache.tapestry.enhance.EnhanceUtils.toBoolean(EnhanceUtils.java:173) 
$IfBean_7.getCondition($IfBean_7.java) 
org.apache.tapestry.components.IfBean.evaluateCondition(IfBean.java:128) 
org.apache.tapestry.components.IfBean.renderComponent(IfBean.java:66) 
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:180) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539) 
org.apache.tapestry.components.BlockRenderer.render(BlockRenderer.java:77) 
org.apache.tapestry.components.Delegator.renderComponent(Delegator.java:41) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725) 
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:180) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539) 
org.apache.tapestry.components.Any.renderComponent(Any.java:44) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725) 
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:180) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539) 
org.apache.tapestry.components.ForBean.renderComponent(ForBean.java:181) 
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:180) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539) 
org.apache.tapestry.components.RenderBody.renderComponent(RenderBody.java:39) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725) 
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:180) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539) 
org.apache.tapestry.components.Any.renderComponent(Any.java:44) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725) 
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:180) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539) 
org.apache.tapestry.components.ForBean.renderComponent(ForBean.java:181) 
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.contrib.table.components.TableRows.renderComponent(TableRows.java:136) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725) 
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:180) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539) 
org.apache.tapestry.components.Any.renderComponent(Any.java:44) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725) 
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:180) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539) 
org.apache.tapestry.components.RenderBody.renderComponent(RenderBody.java:39) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725) 
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:180) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539) 
org.apache.tapestry.components.Any.renderComponent(Any.java:44) 
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.contrib.table.components.TableView.renderComponent(TableView.java:511) 
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: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:180) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539) 
org.apache.tapestry.components.RenderBody.renderComponent(RenderBody.java:39) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725) 
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:180) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539) 
org.apache.tapestry.html.Body.renderComponent(Body.java:38) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725) 
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:180) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539) 
org.trails.demo.components.CustomHead.renderComponent(CustomHead.java:205) 
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: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_113f530325e.renderResponse($ResponseRenderer_113f530325e.java) 
org.apache.tapestry.engine.ExternalService.service(ExternalService.java:163) 
$IEngineService_113f53032dd.service($IEngineService_113f53032dd.java) 
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_113f53032aa.service($WebRequestServicer_113f53032aa.java) 
org.trails.i18n.LocaleFilter.service(LocaleFilter.java:26) 
$WebRequestServicerFilter_113f53032a8.service($WebRequestServicerFilter_113f53032a8.java) 
$WebRequestServicer_113f53032ac.service($WebRequestServicer_113f53032ac.java) 
$WebRequestServicer_113f53032a4.service($WebRequestServicer_113f53032a4.java) 
org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:61) 
$ServletRequestServicer_113f530328a.service($ServletRequestServicer_113f530328a.java) 
org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55) 
$ServletRequestServicerFilter_113f5303286.service($ServletRequestServicerFilter_113f5303286.java) 
$ServletRequestServicer_113f530328c.service($ServletRequestServicer_113f530328c.java) 
org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52) 
$ServletRequestServicerFilter_113f5303284.service($ServletRequestServicerFilter_113f5303284.java) 
$ServletRequestServicer_113f530328c.service($ServletRequestServicer_113f530328c.java) 
org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53) 
$ServletRequestServicerFilter_113f5303288.service($ServletRequestServicerFilter_113f5303288.java) 
$ServletRequestServicer_113f530328c.service($ServletRequestServicer_113f530328c.java) 
$ServletRequestServicer_113f530327e.service($ServletRequestServicer_113f530327e.java) 
org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:126) 
org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:103) 
javax.servlet.http.HttpServlet.service(HttpServlet.java:740) 
javax.servlet.http.HttpServlet.service(HttpServlet.java:853) 
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491) 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1074) 
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198) 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065) 
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) 
org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107) 
org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72) 
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110) 
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) 
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81) 
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:229) 
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:286) 
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) 
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) 
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065) 
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365) 
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185) 
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) 
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689) 
org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391) 
org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:146) 
org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) 
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) 
org.mortbay.jetty.Server.handle(Server.java:285) 
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457) 
org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:751) 
org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:500) 
org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209) 
org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357) 
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329) 
org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)

_________________________________________________________________
http://newlivehotmail.com


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