This question is about what kind of
Java classes/methods can be used for EL functions. Here are the requirements for such functions :
The class specified in the TLD must be a public class, and must be specified using a fully-qualified class name (including packages). The specified method must be a public static method in the specified class, and must be specified using a fully-qualified return type followed by the method name, followed by the fully-qualified argument types in parenthesis, separated by commas About the things you don't understand :
1. It is a mean to disturb you. You can use any public class, having a default constructor or not. 2. Refer to the above requirements3. EL calls static functions, so the constructor is not used. The class is not even instantiated.