I've seen JSTL have many functions like
fn:contains()   
fn:containsIgnoreCase() 
fn:endsWith()   
fn:escapeXml()  
fn:indexOf()    
fn:join()   
fn:length() 
fn:replace()    
fn:split()  
fn:startsWith() 
fn:substring()  
fn:substringAfter() 
fn:substringBefore()    
fn:toLowerCase()    
fn:toUpperCase()    
fn:trim()
While in Struts2 we don't have such functionality for UI. So integrating JSTL with Struts2 can utilize these functionalities. But I don't know whether it is a good practice to do so.
 
     
     
    