viernes, 8 de junio de 2007

Cambiando la versión de la aplicación web (de especificación 2.3 a 2.4)

Recién me doy cuenta.
Resulta que al hacer una aplicación en Eclipse importando el archivo blank.war de Struts 1.x, no podría usar expresiones como ${variable} si desea mostrar directamente en un .JSP el valor de esa variable de sesión.

El lenguaje de expresiones (más conocido como EL) está disponible recién en la versión 2.4 de JSP. La versión que importé del archivo blank.war era la 2.3.

Entonces ¿dónde cambio la versión de la especificación?

Pues en el archivo web.xml El que importé decía esto:
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>
...

Por tanto, para cambiar la versión de la aplicación, debería cambiar con lo siguiente
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
...