[jboss-user] [JBoss Seam] - Re: Dynamic widgets?

whafrog do-not-reply at jboss.com
Mon Nov 19 13:07:31 EST 2007


"IGx89" wrote : Actually no, JBoss EL is bundled with Seam :)

I must be missing something though, as I'm getting an EL parsing exception using that format.  I decided to use a getter, so the action class ("lenderbenefits") has:

	private BenefitMap benefitMap = new BenefitMap();
  | 	public BenefitMap getBenefitMap() { return benefitMap; }

And the facelets page has:

<h:inputText value="#{lenderbenefits.benefitMap.getBenefit('ORIGINATION_FEE').percentReduction}" size="5"/>

BenefitMap has a getter:

private HashMap<String, LenderBenefit> benefits				= new HashMap<String, LenderBenefit>();
  | public LenderBenefit getBenefit(String benefitName)
  | {
  | 	return benefits.get(benefitName);
  | }

And LenderBenefit has a property "percentReduction".  But I get the following exception:

11:53:02,078 ERROR [STDERR] Nov 19, 2007 11:53:02 AM com.sun.facelets.FaceletViewHandler handleRenderException
  | SEVERE: Error Rendering View[/lenderbenefits.xhtml]
  | com.sun.facelets.tag.TagAttributeException: /lenderbenefits.xhtml @30,128 value="#{lenderbenefits.benefitMap.getBenefit('ORIGINATION_FEE').p
  | ercentReduction}" Error Parsing: #{lenderbenefits.benefitMap.getBenefit('ORIGINATION_FEE').percentReduction}
  |         at com.sun.facelets.tag.TagAttribute.getValueExpression(TagAttribute.java:259)
  |         at com.sun.facelets.tag.jsf.ValueHolderRule$DynamicValueExpressionMetadata.applyMetadata(ValueHolderRule.java:101)
  |         at com.sun.facelets.tag.MetadataImpl.applyMetadata(MetadataImpl.java:36)
  |         at com.sun.facelets.tag.MetaTagHandler.setAttributes(MetaTagHandler.java:62)
  |         at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:144)
  |         at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
  |         at com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.java:314)
  |         at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
  |         at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
  |         at com.sun.facelets.tag.ui.DefineHandler.applyDefinition(DefineHandler.java:64)
  |         at com.sun.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:128)
  |         at com.sun.facelets.impl.DefaultFaceletContext$TemplateManager.apply(DefaultFaceletContext.java:306)
  |         at com.sun.facelets.impl.DefaultFaceletContext.includeDefinition(DefaultFaceletContext.java:279)
  |         at com.sun.facelets.tag.ui.InsertHandler.apply(InsertHandler.java:68)
  |         at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
  |         at com.sun.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:49)
  |         at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
  |         at com.sun.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:25)
  |         at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:248)
  |         at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:294)
  |         at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:273)
  |         at com.sun.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:143)
  |         at com.sun.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:113)
  |         at com.sun.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:49)
  |         at com.sun.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:25)
  |         at com.sun.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:95)
  |         at com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:503)
  |         at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:546)
  |         at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
  |         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
  |         at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
  |         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
  |         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
  |         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  |         at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:63)
  |         at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:60)
  |         at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  |         at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
  |         at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  |         at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
  |         at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  |         at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:79)
  |         at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  |         at org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84)
  |         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
  |         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  |         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
  |         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
  |         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  |         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
  |         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
  |         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
  |         at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
  |         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
  |         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
  |         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
  |         at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
  |         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
  |         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
  |         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
  |         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
  |         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
  |         at java.lang.Thread.run(Thread.java:595)
  | Caused by: javax.el.ELException: Error Parsing: #{lenderbenefits.benefitMap.getBenefit('ORIGINATION_FEE').percentReduction}
  |         at org.apache.el.lang.ExpressionBuilder.createNodeInternal(ExpressionBuilder.java:125)
  |         at org.apache.el.lang.ExpressionBuilder.build(ExpressionBuilder.java:146)
  |         at org.apache.el.lang.ExpressionBuilder.createValueExpression(ExpressionBuilder.java:190)
  |         at org.apache.el.ExpressionFactoryImpl.createValueExpression(ExpressionFactoryImpl.java:68)
  |         at org.jboss.seam.ui.facelet.SeamExpressionFactory.createValueExpression(SeamExpressionFactory.java:107)
  |         at com.sun.facelets.tag.TagAttribute.getValueExpression(TagAttribute.java:256)
  |         ... 62 more
  | Caused by: org.apache.el.parser.ParseException: Encountered "(" at line 1, column 39.
  | Was expecting one of:
  |     "}" ...
  |     "." ...
  |     "[" ...
  |     ">" ...
  |     "gt" ...
  |     "<" ...
  |     "lt" ...
  |     ">=" ...
  |     "ge" ...
  |     "<=" ...
  |     "le" ...
  |     "==" ...
  |     "eq" ...
  |     "!=" ...
  |     "ne" ...
  |     "&&" ...
  |     "and" ...
  |     "||" ...
  |     "or" ...
  |     "*" ...
  |     "+" ...
  |     "-" ...
  |     "?" ...
  |     "/" ...
  |     "div" ...
  |     "%" ...
  |     "mod" ...

Am I missing any libraries?

Thanks for your help so far!


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4106124#4106124

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4106124



More information about the jboss-user mailing list