[an error occurred while processing this directive]

How to Use Java Functions In EL

                          

To use a Java Functions in  EL we need three things.

  1. The java class with a static method.
  2. A Tag Library Descriptor (TLD) File
  3. Taglib directive in the jsp page.
  4. EL to invoke the function.

The java class: In this class the functions declared must be public and static. It should have a non- void type return type. After all, its all the matter of calling method from a jsp page. Put this java file in the /WEB-INF/classes folder. After all this class is not for everyone to see.

The TLD file: TLD provides a mapping between the java class that contains the function and the jsp which will call the function from the java class.

The taglib directive: This directive uses the TLD.

EL to invoke a function: We can call the function by using ${prefix:name()}. This name() we have defined in the <name> tag inside the <function> tag.

The code of the program is given below:

package TLD;
public class Add{
	static int a = 10;
	static int b= 10;
	public static int add(){
		return (a+b);
	}
	public static int playRandom(){
		return (int) ((Math.random()*10)+1);
	}
}

 

<%@ taglib prefix = "addition" uri = "addFunction"%>
<html>
<body>
<center>
<table>
<tr><td>This no. is static :</tr/</td> <tr><td>${addition:AddTheVariable()}</tr></td><tr>
<tr><td>This no. is random :</tr/</td> <tr><td>${addition:random()}</tr></td>
</table>
</center>
</body>
<html>

The output of the program is given below:

Download this example.

                          

[an error occurred while processing this directive]