Hey everybody, 

I have a problem with disabled components (especially textfields) in MyFaces
Trinidad 1.2. 

My page loads initially all my textfields with disabled="false". 
After clicking a (enabled) button to "unlock" the textfield-component (now
... disabled="false") the page
reloads with the enabled textfields. Now I would like to type some text in
it and click a "save"-Button to save the information of the
model-managedbean. But this last step doesnt work! :-(
The set-method of the model is never called (I checked this in debug-mode)
when I try to save the information of my modelBean. The get-methods delivers
the unchanged original values.

When I initally load the page with textfields disabled="false" and switch it
to true (by button click of course) and  back to false, the set-method of
the model will be called. Its just a problem when I try to initially load
the textfields disabled="true". It seems to me, after PPR the component is
not "linked" to the value in the modelBean.
 
Has anyone a idea to solve this problem?  



public class Controller {
 private  boolean isDisabled = true;

 public boolean getIsDisabled(){
   return isDisabled;
 }

 public String switchVisibility(ActionEvent event){
  isDisabled=false;
 return "refresh";
 }
 public String save(ActionEvent event){
  Model modelBean = (Model
)FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("model");

[...]

serviceLayerBean.saveText(modelBean.getText1());

[...]

 }

}

public class Modell{

 private String text1 = "";
 private String text2 = "";
 private String text3 = "";

 public String getText1(){
  return text1;
 }
  public String getText2(){
  return text1;
 }
  public String getText3(){
  return text1;
 }

  public void setText1(String text1){
  this.text1 = text1;
 }
  public void setText2(String text2){
  this.text2 = text2;
 }
  public void setText3(String text3){
  this.text3 = text3;
 }

}

<tr:inputText id="text1" disabled="#{controllerBean.isDisabled}"
value="modelBean.text1">
<tr:inputText id="text2" disabled="#{controllerBean.isDisabled}"
value="modelBean.text2">
<tr:inputText id="text3" disabled="#{controllerBean.isDisabled}"
value="modelBean.text3">
<tr:commandButton id="switchButton" text="Switch"
actionListener="#{controllerBean.switchVisibility}"
<tr:commandButton id="saveButton" text="Save"
actionListener="#{controllerBean.save}"


Thanks for your help,
Tom
-- 
View this message in context: 
http://old.nabble.com/MyFaces-Trinidad-1.2---set-method-wont-be-called-after-changing-textfield-from-disabled%3Dtrue-to-disabled%3Dfalse-%28PPR%29-tp32327168p32327168.html
Sent from the MyFaces - Users mailing list archive at Nabble.com.

Reply via email to