2011-09-27 8 views
5

Estoy usando Spring MVC para mi controlador, y los JSP son mi capa de presentación.¿Variables EL anidadas doblemente?

Dentro de mi controlador de primavera, que tengo:

model.put("issues", dataManager.getIssues()); 
model.put("functions", dataManager.getFunctions()); 

Así que ahora dentro de mi JSP, tengo acceso a

${requestScope['issues']} 
${requestScope['functions']} 

Eso es todo bien y bueno. Pero para que mi código sea extensible, me gustaría almacenar el nombre de la variable issues y functions dentro de la base de datos, que luego será accesible a través de una propiedad en un objeto configs que se está bucleando. Así que lo que me gustaría terminar con algo como lo siguiente:

<c:forEach items="${configs}" var="cfg"> 
    <c:if test="${cfg.configType == 'select'}"> 
     <th>${cfg.header}</th> 
     <td><myTagLib:select values="${requestScope['${cfg.selectorName}']}" /></td> 
    </c:if> 
</c:forEach> 

Dónde ${cfg.selectorName} llevará a cabo ya sea issues o functions en este ejemplo.

Respuesta

6

Estás cerca. Solo necesita eliminar el ${} anidado ya que no es sintaxis.

<myTagLib:select values="${requestScope[cfg.selectorName]}" /> 
+0

..... Y eso funcionó. ¡Perfecto gracias! – Mike

+0

De nada. – BalusC

+0

@BalusC, estoy haciendo como ** \t \t \t \t \t \t \t **. Pero no puedo obtener la lista de elementos de esta manera. por favor ayuda. – masT

Cuestiones relacionadas