Attributes of components in managed Bean actions

I tried to make my component(w/o javascript) change from disabled

to enabled. programmatically in jsf1.2

FacesContext fCtx = FacesContext.getCurrentInstance();

ELContext eCtx = fCtx.getELContext();

System.out.println("...chooseBook...");

UIViewRoot root = fCtx.getViewRoot();

UIComponent comp = rt.findComponent(id);

System.out.print("SSSSS...."+comp);

ValueExpression ve = comp.getValueExpression("disabled");

System.out.print("KKKK...."+((Boolean)ve.getValue(eCtx)));

ve.setValue(eCtx,new Boolean(false));

if(type.equals("UIInput"))

{

((UIInput)comp).setImmediate(true);

((UIInput)comp).updateModel(fCtx);

}

but is is able to get compionent but not its attribute

error

javax.faces.el.EvaluationException: java.lang.NullPointerException

at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:91)

at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:91)

at javax.faces.component.UICommand.broadcast(UICommand.java:383)

at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:447)

at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:752)

at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)

at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)

at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)

at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)

at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:398)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:277)

at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:258)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:189)

at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:611)

at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:564)

at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:81)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:193)

at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:611)

at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:564)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:558)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1067)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)

at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:611)

at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:564)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:558)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1067)

at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:255)

at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:618)

at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:549)

at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:790)

at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:326)

at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:248)

at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:199)

at com.sun.enterprise.web.portunif.PortUnificationPipeline$PUTask.doTask(PortUnificationPipeline.java:345)

at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)

at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:93)

Caused by: java.lang.NullPointerException

at com.htc.faces.BookManipulator.enableComp(BookManipulator.java:127)

at com.htc.faces.BookManipulator.chooseBook(BookManipulator.java:155)

please thanks in case if anybody goes through and reply

[4408 byte] By [dtrprasada] at [2007-11-27 7:54:11]
# 1
I don't think you want to manipulate ValueExpressions here. Instead take a look at UIComponent.getAttributes().
RaymondDeCampoa at 2007-7-12 19:35:27 > top of Java-index,Enterprise & Remote Computing,Web Tier APIs...