You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@myfaces.apache.org by Aneesha Govil <po...@gmail.com> on 2006/12/19 11:58:57 UTC

PropertyNotFoundException - Base is null

Hi,

I am trying to integrate my JSF pages with an existing JSP application. I
have edited a JSP and removed most of JSP stuff in it and added JSF. I added
a commandButton as follows:

<h:commandButton value="Set table alarms" onclick="javascript:alert('hi')"
styleClass="tdButtonHolder">
<t:updateActionListener value="#{displaybean.getAlarmTableId}" property="#{
displaybean.selectedTable}" />
</h:commandButton>

However, when I click this button, I do get the alert and then the exception
below.

javax.faces.el.PropertyNotFoundException: Base is null: displaybean
at org.apache.myfaces.el.ValueBindingImpl.resolveToBaseAndProperty(
ValueBindingImpl.java:460)
at org.apache.myfaces.el.ValueBindingImpl.setValue(ValueBindingImpl.java
:248)
at
org.apache.myfaces.custom.updateactionlistener.UpdateActionListener.processAction
(UpdateActionListener.java:159)
at javax.faces.event.ActionEvent.processListener(ActionEvent.java:48)
at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:484)
at javax.faces.component.UICommand.broadcast(UICommand.java:75)
at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:94)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:168)
at org.apache.myfaces.lifecycle.LifecycleImpl.invokeApplication(
LifecycleImpl.java:343)
at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:86)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
ExtensionsFilter.java:100)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
ExtensionsFilter.java:147)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(
ReplyHeaderFilter.java:81)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(
StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(
StandardContextValve.java:178)
at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(
CustomPrincipalValve.java:39)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(
SecurityAssociationValve.java:159)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
AuthenticatorBase.java:482)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(
JaccContextValve.java:59)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:105)
at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(
CachedConnectionValve.java:138)
at org.apache.catalina.core.StandardEngineValve.invoke(
StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java
:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:856)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection
(Http11Protocol.java:744)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(
PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(
MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Thread.java:595)

Does anybody have any idea what is wrong?
I am using JBoss 4.0.3 SP1 with same libs in jsf-libs and WEB-INF/lib of my
application's war file.

Thanks,
Aneesha

Behavior for required and disabled and displayValueOnly.

Posted by Grigoras Cristinel <gr...@wdd.ro>.
Hi,

I have tried to use diplayValueOnly or disabled attribute on input text 
control what has required attribute true.
The value exist already and I get validation exception for field.

How i can use disabled on required field ? Who have broken this ?

I have tried last SVN version

Cristi



Re: PropertyNotFoundException - Base is null

Posted by Jeff Bischoff <jb...@klkurz.com>.
Aneesha Govil wrote:
> Thanks for trying to help. It still doesn't work after making that change.
> :-(
> 
> Any other ideas?
>

Yeah, can you please put an h:outputText for both 
#{displaybean.alarmTableId} and #{displaybean.selectedTable}. I am 
guessing that one or both of those will not print. I am guessing you 
either have:

(1) null managed bean
      (check your init code)
(2) wrong managed bean name (case sensitive)
      (check your faces-config)
or
(3) not following java bean naming conventions for the getters/setters. 
Paul was definately on the right track pointing out "getAlarmTableId". 
This would make it look for a property with getter of 
"getGetAlarmTableId()" :)

Hope this helps.

Regards,

Jeff Bischoff
Kenneth L Kurz & Associates, Inc.

> Aneesha
> 
> On 12/19/06, Paul Spencer <pa...@apache.org> wrote:
>>
>> Just a guess, try
>> <t:updateActionListener value="#{displaybean.alarmTableId}"
>>                          property="#{displaybean.selectedTable}" />
>> instead of :
>> <t:updateActionListener value="#{displaybean.getAlarmTableId}"
>>                          property="#{displaybean.selectedTable}" />
>>
>> The value attribute is referencing the property, not the getter.
>>
>> Paul Spencer
>>
>>
>> Aneesha Govil wrote:
>> > Hi,
>> >
>> > I am trying to integrate my JSF pages with an existing JSP application.
>> I
>> > have edited a JSP and removed most of JSP stuff in it and added JSF. I
>> > added
>> > a commandButton as follows:
>> >
>> > <h:commandButton value="Set table alarms"
>> onclick="javascript:alert('hi')"
>> > styleClass="tdButtonHolder">
>> > <t:updateActionListener value="#{displaybean.getAlarmTableId}"
>> property="#{
>> > displaybean.selectedTable}" />
>> > </h:commandButton>
>> >
>> > However, when I click this button, I do get the alert and then the
>> > exception
>> > below.
>> >
>> > javax.faces.el.PropertyNotFoundException: Base is null: displaybean
>> > at org.apache.myfaces.el.ValueBindingImpl.resolveToBaseAndProperty(
>> > ValueBindingImpl.java:460)
>> > at 
>> org.apache.myfaces.el.ValueBindingImpl.setValue(ValueBindingImpl.java
>> > :248)
>> > at
>> >
>> org.apache.myfaces.custom.updateactionlistener.UpdateActionListener.processAction 
>>
>> >
>> > (UpdateActionListener.java:159)
>> > at javax.faces.event.ActionEvent.processListener(ActionEvent.java:48)
>> > at
>> > javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java
>> :484)
>> > at javax.faces.component.UICommand.broadcast(UICommand.java:75)
>> > at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java
>> :94)
>> > at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java
>> :168)
>> > at org.apache.myfaces.lifecycle.LifecycleImpl.invokeApplication(
>> > LifecycleImpl.java:343)
>> > at
>> > org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java
>> :86)
>> > at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137)
>> > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
>> > ApplicationFilterChain.java:252)
>> > at org.apache.catalina.core.ApplicationFilterChain.doFilter(
>> > ApplicationFilterChain.java:173)
>> > at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
>> > ExtensionsFilter.java:100)
>> > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
>> > ApplicationFilterChain.java:202)
>> > at org.apache.catalina.core.ApplicationFilterChain.doFilter(
>> > ApplicationFilterChain.java:173)
>> > at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
>> > ExtensionsFilter.java:147)
>> > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
>> > ApplicationFilterChain.java:202)
>> > at org.apache.catalina.core.ApplicationFilterChain.doFilter(
>> > ApplicationFilterChain.java:173)
>> > at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(
>> > ReplyHeaderFilter.java:81)
>> > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
>> > ApplicationFilterChain.java:202)
>> > at org.apache.catalina.core.ApplicationFilterChain.doFilter(
>> > ApplicationFilterChain.java:173)
>> > at org.apache.catalina.core.StandardWrapperValve.invoke(
>> > StandardWrapperValve.java:213)
>> > at org.apache.catalina.core.StandardContextValve.invoke(
>> > StandardContextValve.java:178)
>> > at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(
>> > CustomPrincipalValve.java:39)
>> > at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(
>> > SecurityAssociationValve.java:159)
>> > at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
>> > AuthenticatorBase.java:482)
>> > at org.jboss.web.tomcat.security.JaccContextValve.invoke(
>> > JaccContextValve.java:59)
>> > at org.apache.catalina.core.StandardHostValve.invoke(
>> StandardHostValve.java
>> > :126)
>> > at org.apache.catalina.valves.ErrorReportValve.invoke(
>> ErrorReportValve.java
>> > :105)
>> > at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(
>> > CachedConnectionValve.java:138)
>> > at org.apache.catalina.core.StandardEngineValve.invoke(
>> > StandardEngineValve.java:107)
>> > at org.apache.catalina.connector.CoyoteAdapter.service(
>> CoyoteAdapter.java
>> > :148)
>> > at 
>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
>> > :856)
>> > at
>> >
>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection 
>>
>> >
>> > (Http11Protocol.java:744)
>> > at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(
>> > PoolTcpEndpoint.java:527)
>> > at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(
>> > MasterSlaveWorkerThread.java:112)
>> > at java.lang.Thread.run(Thread.java:595)
>> >
>> > Does anybody have any idea what is wrong?
>> > I am using JBoss 4.0.3 SP1 with same libs in jsf-libs and 
>> WEB-INF/lib of
>> my
>> > application's war file.
>> >
>> > Thanks,
>> > Aneesha
>> >
>>
>>
> 



Behavior for required and disabled and displayValueOnly.

Posted by Grigoras Cristinel <gr...@wdd.ro>.
Hi,

I have tried to use diplayValueOnly or disabled atribute on input text 
what is required.
The value exit already butt i get validation exception for field.

Cristi


Re: PropertyNotFoundException - Base is null

Posted by Aneesha Govil <po...@gmail.com>.
Thanks for trying to help. It still doesn't work after making that change.
:-(

Any other ideas?

Aneesha

On 12/19/06, Paul Spencer <pa...@apache.org> wrote:
>
> Just a guess, try
> <t:updateActionListener value="#{displaybean.alarmTableId}"
>                          property="#{displaybean.selectedTable}" />
> instead of :
> <t:updateActionListener value="#{displaybean.getAlarmTableId}"
>                          property="#{displaybean.selectedTable}" />
>
> The value attribute is referencing the property, not the getter.
>
> Paul Spencer
>
>
> Aneesha Govil wrote:
> > Hi,
> >
> > I am trying to integrate my JSF pages with an existing JSP application.
> I
> > have edited a JSP and removed most of JSP stuff in it and added JSF. I
> > added
> > a commandButton as follows:
> >
> > <h:commandButton value="Set table alarms"
> onclick="javascript:alert('hi')"
> > styleClass="tdButtonHolder">
> > <t:updateActionListener value="#{displaybean.getAlarmTableId}"
> property="#{
> > displaybean.selectedTable}" />
> > </h:commandButton>
> >
> > However, when I click this button, I do get the alert and then the
> > exception
> > below.
> >
> > javax.faces.el.PropertyNotFoundException: Base is null: displaybean
> > at org.apache.myfaces.el.ValueBindingImpl.resolveToBaseAndProperty(
> > ValueBindingImpl.java:460)
> > at org.apache.myfaces.el.ValueBindingImpl.setValue(ValueBindingImpl.java
> > :248)
> > at
> >
> org.apache.myfaces.custom.updateactionlistener.UpdateActionListener.processAction
> >
> > (UpdateActionListener.java:159)
> > at javax.faces.event.ActionEvent.processListener(ActionEvent.java:48)
> > at
> > javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java
> :484)
> > at javax.faces.component.UICommand.broadcast(UICommand.java:75)
> > at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java
> :94)
> > at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java
> :168)
> > at org.apache.myfaces.lifecycle.LifecycleImpl.invokeApplication(
> > LifecycleImpl.java:343)
> > at
> > org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java
> :86)
> > at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137)
> > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> > ApplicationFilterChain.java:252)
> > at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> > ApplicationFilterChain.java:173)
> > at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
> > ExtensionsFilter.java:100)
> > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> > ApplicationFilterChain.java:202)
> > at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> > ApplicationFilterChain.java:173)
> > at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
> > ExtensionsFilter.java:147)
> > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> > ApplicationFilterChain.java:202)
> > at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> > ApplicationFilterChain.java:173)
> > at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(
> > ReplyHeaderFilter.java:81)
> > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> > ApplicationFilterChain.java:202)
> > at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> > ApplicationFilterChain.java:173)
> > at org.apache.catalina.core.StandardWrapperValve.invoke(
> > StandardWrapperValve.java:213)
> > at org.apache.catalina.core.StandardContextValve.invoke(
> > StandardContextValve.java:178)
> > at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(
> > CustomPrincipalValve.java:39)
> > at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(
> > SecurityAssociationValve.java:159)
> > at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
> > AuthenticatorBase.java:482)
> > at org.jboss.web.tomcat.security.JaccContextValve.invoke(
> > JaccContextValve.java:59)
> > at org.apache.catalina.core.StandardHostValve.invoke(
> StandardHostValve.java
> > :126)
> > at org.apache.catalina.valves.ErrorReportValve.invoke(
> ErrorReportValve.java
> > :105)
> > at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(
> > CachedConnectionValve.java:138)
> > at org.apache.catalina.core.StandardEngineValve.invoke(
> > StandardEngineValve.java:107)
> > at org.apache.catalina.connector.CoyoteAdapter.service(
> CoyoteAdapter.java
> > :148)
> > at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
> > :856)
> > at
> >
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection
> >
> > (Http11Protocol.java:744)
> > at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(
> > PoolTcpEndpoint.java:527)
> > at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(
> > MasterSlaveWorkerThread.java:112)
> > at java.lang.Thread.run(Thread.java:595)
> >
> > Does anybody have any idea what is wrong?
> > I am using JBoss 4.0.3 SP1 with same libs in jsf-libs and WEB-INF/lib of
> my
> > application's war file.
> >
> > Thanks,
> > Aneesha
> >
>
>

Re: PropertyNotFoundException - Base is null

Posted by Paul Spencer <pa...@apache.org>.
Just a guess, try
<t:updateActionListener value="#{displaybean.alarmTableId}"
                         property="#{displaybean.selectedTable}" />
instead of :
<t:updateActionListener value="#{displaybean.getAlarmTableId}"
                         property="#{displaybean.selectedTable}" />

The value attribute is referencing the property, not the getter.

Paul Spencer


Aneesha Govil wrote:
> Hi,
> 
> I am trying to integrate my JSF pages with an existing JSP application. I
> have edited a JSP and removed most of JSP stuff in it and added JSF. I 
> added
> a commandButton as follows:
> 
> <h:commandButton value="Set table alarms" onclick="javascript:alert('hi')"
> styleClass="tdButtonHolder">
> <t:updateActionListener value="#{displaybean.getAlarmTableId}" property="#{
> displaybean.selectedTable}" />
> </h:commandButton>
> 
> However, when I click this button, I do get the alert and then the 
> exception
> below.
> 
> javax.faces.el.PropertyNotFoundException: Base is null: displaybean
> at org.apache.myfaces.el.ValueBindingImpl.resolveToBaseAndProperty(
> ValueBindingImpl.java:460)
> at org.apache.myfaces.el.ValueBindingImpl.setValue(ValueBindingImpl.java
> :248)
> at
> org.apache.myfaces.custom.updateactionlistener.UpdateActionListener.processAction 
> 
> (UpdateActionListener.java:159)
> at javax.faces.event.ActionEvent.processListener(ActionEvent.java:48)
> at 
> javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:484)
> at javax.faces.component.UICommand.broadcast(UICommand.java:75)
> at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:94)
> at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:168)
> at org.apache.myfaces.lifecycle.LifecycleImpl.invokeApplication(
> LifecycleImpl.java:343)
> at 
> org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:86)
> at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137)
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> ApplicationFilterChain.java:252)
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> ApplicationFilterChain.java:173)
> at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
> ExtensionsFilter.java:100)
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> ApplicationFilterChain.java:202)
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> ApplicationFilterChain.java:173)
> at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
> ExtensionsFilter.java:147)
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> ApplicationFilterChain.java:202)
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> ApplicationFilterChain.java:173)
> at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(
> ReplyHeaderFilter.java:81)
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> ApplicationFilterChain.java:202)
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> ApplicationFilterChain.java:173)
> at org.apache.catalina.core.StandardWrapperValve.invoke(
> StandardWrapperValve.java:213)
> at org.apache.catalina.core.StandardContextValve.invoke(
> StandardContextValve.java:178)
> at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(
> CustomPrincipalValve.java:39)
> at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(
> SecurityAssociationValve.java:159)
> at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
> AuthenticatorBase.java:482)
> at org.jboss.web.tomcat.security.JaccContextValve.invoke(
> JaccContextValve.java:59)
> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
> :126)
> at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
> :105)
> at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(
> CachedConnectionValve.java:138)
> at org.apache.catalina.core.StandardEngineValve.invoke(
> StandardEngineValve.java:107)
> at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java
> :148)
> at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
> :856)
> at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection 
> 
> (Http11Protocol.java:744)
> at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(
> PoolTcpEndpoint.java:527)
> at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(
> MasterSlaveWorkerThread.java:112)
> at java.lang.Thread.run(Thread.java:595)
> 
> Does anybody have any idea what is wrong?
> I am using JBoss 4.0.3 SP1 with same libs in jsf-libs and WEB-INF/lib of my
> application's war file.
> 
> Thanks,
> Aneesha
>