OGNL is an expression language used in Struts 2 to retrieve values from the value stack, which holds objects used by actions. OGNL expressions can be used in JSP views and XML configuration files to extract values. Struts 2 provides tags for control flow, data retrieval, and creating UI elements to build model-view-controller web applications. Validation can be done declaratively using XML files or programmatically in Java code.