JSF inputSecret Password html tag

JSF h:inputSecret tag is used to render an HTML input element of the type “password”.

JSF tag:

<h:inputSecret value="password" />

Rendered HTML tag:

<input name="j_idt6:j_idt8" type="password" value="password" />

Attributes of h:inputSecret tag.

AttributeDescription
1. idid for the tag
2. bindingReference to the component used in a backing bean
3. renderedA boolean value; false would suppress rendering
4. styleClassCascading stylesheet (CSS) class name
5. valuevalue binding
6. valueChangeListenerA method binding that responds to value changes
7. converterConverter class name
8. validatorClass name of a validator attached to the component
9. requiredA boolean; if true, marks the tag as required
10. accesskeygives focus to an element
11. acceptComma-separated list of content types for a form
12. accept-charsetComma- or space-separated list of character encodings for a form.
13. altAlternative text for nontextual elements such as images
14. borderPixel value for an element’s border width
15. charsetCharacter encoding for a linked resource
16. coordsCoordinates for an element whose shape is a rectangle, circle, or polygon
17. dirDirection for text. Valid values are ltr (left to right) and rtl (right to left).
18. disabledDisabled state of an input element or button
19. hreflangBase language of a resource specified with the href attribute;
20. langBase language of an element’s attributes and text
21. maxlengthMaximum number of characters for text fields
22. readonlyRead-only state of an input field
23. styleInline style information
24. tabindexNumerical value specifying a tab index
25. targetThe name of a frame in which a document is opened
26. titleA title used for accessibility. Browsers typically create tooltips for the title’s value
27. typeType of a link; for example, stylesheet
28. widthWidth of an element
29. onblurEvent handler for losing focus
30. onchangeEvent handler for value changes
31. onclickEvent handler for Mouse button clicked over the element
32. ondblclickEvent handler for Mouse button double-clicked
33. onfocusEvent handler for element received focus
34. onkeydownEvent handler for Key pressed
35. onkeypressEvent handler for Key pressed and released
36. onkeyupEvent handler for Key released
37. onmousedownEvent handler for Mouse button pressed
38. onmousemoveEvent handler for mouse moved
39. onmouseoutEvent handler for mouse left
40. onmouseoverEvent handler for mouse moved onto
41. onmouseupEvent handler for mouse button released
42. onresetEvent handler for form reset
43. onselectEvent handler for Text selected
44. immediateProcess validation early in the life cycle

 

Example explanation:

On “test.xhtml” page we have inputSecret with value attribute. The value of the inputSecret is binding with the password property of the Test.java class. Click “Check Password” button after entering the value in inputSecret. JSF framework assign the inputSecret value to the bean property and “checkPassword” method returns the “success”. This return value is matched with the navigation rules defined in faces-config.xml file and renders the welcome.xhtml page which shows the entered password value.

Example:

test.xhtml

<<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core">
	<h:head>
		<title>JSF input password example.</title>
	</h:head>
    <h:body>
    	<h2>JSF input password example.</h2> 
    	<h:form>
    	   <h:inputSecret value="#{test.password}"/>
    	   <br/> <br/>
    	   <h:commandButton value="Check Password" 
    	          action="#{test.checkPassword}"/>	
    	</h:form> 
    </h:body>    
</html>

Test.java

package com.w3spoint.business;
 
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
 
/**
 * Managed bean.
 * @author w3spoint
 */
@ManagedBean(name="test")
@SessionScoped
public class Test {
	private String password;
 
	public String getPassword() {
		return password;
	}
 
	public void setPassword(String password) {
		this.password = password;
	}
 
	public String checkPassword() {
		if(password == null || password.equals("")){
			return "fail";
		}else{
			return "success";
		}
	}
}

faces-config.xml

<?xml version="1.0" encoding="windows-1252"?>
<faces-config version="2.0" 
xmlns="http://java.sun.com/xml/ns/javaee" 
xmlns:xi="http://www.w3.org/2001/XInclude" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd">
 
<navigation-rule>
   <from-view-id>test.xhtml</from-view-id>
   <navigation-case>
      <from-outcome>success</from-outcome>
      <to-view-id>welcome.xhtml</to-view-id>
   </navigation-case>
 
   <navigation-case>
      <from-outcome>fail</from-outcome>
      <to-view-id>test.xhtml</to-view-id>
   </navigation-case>
 
</navigation-rule>
 
</faces-config>

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 
    	xmlns="http://java.sun.com/xml/ns/javaee" 
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
 
    <servlet>
        <servlet-name>faces</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    </servlet>
 
	<servlet-mapping>
        <servlet-name>faces</servlet-name>
        <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>
 
</web-app>

welcome.xhtml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core">
	<h:head>
		<title>JSF input password example.</title>
	</h:head>
    <h:body>
     <h2>JSF input password example.</h2>
     <h3>Password: #{test.password}</h3> 
    </h:body>
 
</html>

URL:

http://localhost:7001/JSFExample5/faces/test.xhtml

Output:

JSF example5-1
Enter value in inputSecret box.
JSF example5-2
Click on Check Password button.
JSF example5-3
 
Download this example.
 

Please Share