Hi Werner,
Sylvain is right but you can not use the aliased bean in a component
binding. Component bindings are resolved at creation time of the
component which is currently not handled by the alias component.
<h:selectOneMenu binding="#{controller.bldSelectOne}" ... /> will not
work if controller is aliased.
Mathias
> -----Original Message-----
> From: news [mailto:[EMAIL PROTECTED] On Behalf Of Werner Punz
> Sent: Tuesday, May 17, 2005 10:23 AM
> To: [email protected]
> Subject: Re: aliasbean question
>
>
>
>
>
>
>
>
>
> Ok here is the full stacktrace and the code behind it (sorry
> for the delay)
>
> <h:form id="xxx">
> <x:aliasBean alias="#{control}" value="#{bldGmdBezController}">
> <x:aliasBean alias="#{holder}"
> value="#{testLocationForm}">
> <f:subview id="simulatedIncludedSubform1">
> <jsp:include
> page="../../inc/webobjects/bld.jsp" />
> </f:subview>
> </x:aliasBean>
> </x:aliasBean>
> </h:form>
>
>
> and the subview:
>
> <h:panelGrid columns="1">
> <h:selectOneMenu binding="#{controller.bldSelectOne}"
> id="selectBld" value="#{holder.bldId}"
>
> valueChangeListener="#{controller.processBldValueChange}"
>
> onchange="document.forms['#{controller.formId}'].submit();">
> <f:selectItems value="#{bundeslandBean.items}" />
> </h:selectOneMenu>
> <h:selectOneMenu binding="#{controller.bezSelectOne}"
> id="selectBez" value="#{holder.bezId}"
>
> valueChangeListener="#{controller.processBezirkValueChange}"
>
> onchange="document.forms['#{controller.formId}'].submit();"
> disabled="false">
> <f:selectItems value="#{bezirkBean.items}" />
> </h:selectOneMenu>
> <h:selectOneMenu binding="#{controller.gmdSelectOne}"
> id="selectGmd" value="#{holder.gmdId}"
>
> onchange="document.forms['#{controller.formId}'].submit();"
> disabled="false">
> <f:selectItems value="#{gemeindeBean.items}" />
> </h:selectOneMenu>
> </h:panelGrid>
>
>
> The funny thing is as soon as I replace the nested aliasbean tag with
> a direct call the error goes away.
>
>
> ERROR org.apache.myfaces.el.ValueBindingImpl - Cannot set value for
> expression '#{controller.bldSelectOne}' to a new value of type
> javax.faces.component.html.HtmlSelectOneMenu
> javax.faces.el.PropertyNotFoundException: Base is null: controller
> at
> org.apache.myfaces.el.ValueBindingImpl.resolveToBaseAndPropert
> y(ValueBindingImpl.java:523)
> at
> org.apache.myfaces.el.ValueBindingImpl.setValue(ValueBindingIm
> pl.java:309)
> at
> org.apache.myfaces.application.ApplicationImpl.createComponent
> (ApplicationImpl.java:459)
> at
> javax.faces.webapp.UIComponentTag.createComponentInstance(UICo
> mponentTag.java:474)
> at
> javax.faces.webapp.UIComponentTag.findComponent(UIComponentTag
> .java:428)
> at
> javax.faces.webapp.UIComponentTag.doStartTag(UIComponentTag.java:256)
> at
> org.apache.jsp.inc.webobjects.bld_jsp._jspx_meth_h_selectOneMe
> nu_0(bld_jsp.java:151)
> at
> org.apache.jsp.inc.webobjects.bld_jsp._jspx_meth_h_panelGrid_0
> (bld_jsp.java:111)
> at
> org.apache.jsp.inc.webobjects.bld_jsp._jspService(bld_jsp.java:75)
> at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.java:324)
> at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> at
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(ApplicationFilterChain.java:237)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilterChain.java:157)
> at
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatcher.java:704)
> at
> org.apache.catalina.core.ApplicationDispatcher.doInclude(Appli
> cationDispatcher.java:590)
> at
> org.apache.catalina.core.ApplicationDispatcher.include(Applica
> tionDispatcher.java:510)
> at
> org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntime
> Library.java:966)
> at
> org.apache.jsp.tests.bundesland.bldaswo_jsp._jspx_meth_f_subvi
> ew_0(bldaswo_jsp.java:289)
> at
> org.apache.jsp.tests.bundesland.bldaswo_jsp._jspx_meth_x_alias
> Bean_1(bldaswo_jsp.java:263)
> at
> org.apache.jsp.tests.bundesland.bldaswo_jsp._jspx_meth_x_alias
> Bean_0(bldaswo_jsp.java:235)
> at
> org.apache.jsp.tests.bundesland.bldaswo_jsp._jspx_meth_h_form_
> 0(bldaswo_jsp.java:208)
> at
> org.apache.jsp.tests.bundesland.bldaswo_jsp._jspx_meth_f_view_
> 0(bldaswo_jsp.java:138)
> at
> org.apache.jsp.tests.bundesland.bldaswo_jsp._jspService(bldasw
> o_jsp.java:95)
> at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.java:324)
> at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:292)
> at
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(ApplicationFilterChain.java:237)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilterChain.java:157)
> at
> org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat
> ionDispatcher.java:704)
> at
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
> ApplicationDispatcher.java:474)
> at
> org.apache.catalina.core.ApplicationDispatcher.doForward(Appli
> cationDispatcher.java:409)
> at
> org.apache.catalina.core.ApplicationDispatcher.forward(Applica
> tionDispatcher.java:312)
> at
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.
> dispatch(ServletExternalContextImpl.java:405)
> at
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderVi
> ew(JspViewHandlerImpl.java:280)
> at
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImp
> l.java:300)
> at
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(ApplicationFilterChain.java:237)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilterChain.java:157)
> at
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilt
> er(ExtensionsFilter.java:112)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(ApplicationFilterChain.java:186)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilterChain.java:157)
> at
> de.mindmatters.faces.spring.RequestHandledFilter.doFilter(Requ
> estHandledFilter.java:117)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(ApplicationFilterChain.java:186)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilterChain.java:157)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValve.java:214)
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveContext.java:104)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:520)
> at
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardContextValve.java:198)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValve.java:152)
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveContext.java:104)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:520)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java:137)
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveContext.java:104)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java:118)
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveContext.java:102)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:520)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.java:109)
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveContext.java:104)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:520)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:799)
> at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processConnection(Http11Protocol.java:705)
> at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:577)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool.java:683)
> at java.lang.Thread.run(Thread.java:595)
>
>
>
> Broekelmann, Mathias wrote:
> > Hi Werner,
> >
> > Can you post the full stacktrace of the exception?
> >
> > Mathias
> >
> >
> >>-----Original Message-----
> >>From: news [mailto:[EMAIL PROTECTED] On Behalf Of Werner Punz
> >>Sent: Friday, May 13, 2005 2:01 PM
> >>To: [email protected]
> >>Subject: Re: aliasbean question
> >>
> >>
> >>Broekelmann, Mathias wrote:
> >>
> >>>Hi Werner,
> >>>
> >>>Check if myController is not null.
> >>>
> >>>Mathias
> >>>
> >>
> >>Actually no, if I remove the double x:aliasBean
> >>and replace the generic #{controller} again with #{myController}
> >>everything seems to work fine gain.
> >>
> >>
> >
> >
>
>