tags:

views:

72

answers:

2

I am creating a database setting jsf page which shows the value from the properties file during the page load. The users then updates the page and press submit and the value get updated in the properties file.

I followed this solution provided by Balusc

http://stackoverflow.com/questions/2451154/jsf-action-on-page-load

and set the value in the constructor of the backing bean.

  public DbSettingsBean()
  {        
    this.setUserName(helper.getValueForProperty("user_name"));
    this.setPassword(helper.getValueForProperty("password"));
  }

While I managed to show the user name from the properties file during page load. I am unable to show the value of inputsecret for password during the page load. It remains blank.

Is there any other way to show password during page load?

I am using JSF RI 1.2 and Richfaces 3.3.2

Thanks in advance

+1  A: 

Update:

I Apologize :

The only thing needed to add is redisplay="true" as password is not diplayed for security reason


org.life.java
Thanks for the quick solution. I will work with it and get back to you.
mvg
Sure You can always upvote and mark it as answer if it is.
org.life.java
Thanks for the link. Though this is not the exact solution, I want, I managed to solve this by adding redisplay="true" in <h:inputsecret/>. That site used this attribute to save the password. Thanks again!
mvg
@mvg you are welcomed:)
org.life.java
@org, sorry, but I must do this: @mvg: I have to warn you, roseindia.net is a [terrible source](http://balusc.blogspot.com/2008/06/what-is-it-with-roseindia.html). Please ignore this site as long as you're new to JSF. It in general only teaches bad practices.
BalusC
@BalusC Thanks for the info. Finally for this question the solution concluded is redisplay="true" from there for now, I will take care next time .Thanks
org.life.java
@Balusc Thanks for the info. Horrible though. Thanks for sharing.
mvg
+1  A: 

The <h:inputSecret> indeed doesn't redisplay passwords by default due to security reasons. You can however turn it on by setting redisplay="true".

<h:inputSecret value="#{bean.password}" redisplay="true" />

See also its TLD document:

redisplay

Flag indicating that any existing value in this field should be rendered when the form is created. Because this is a potential security risk, password values are not displayed by default.

BalusC
Yeah. I just compared my code with the one from the roseindia and found redisplay="true" is the main difference and corrected my source and it is now working correctly.
mvg
@mvg: the other answer still doesn't deserve to be marked accepted as it's a completely wrong solution.
BalusC
@BalusC : updated answer
org.life.java