Cómo codificar un parámetro con una URL en puntales?
Pregunta
Se muestra una lista de libros en la página. Cuando un usuario hace clic en un libro, se abre su página de detalles. Ahora el problema es que necesito para codificar Identificación de cada libro con la página de detalles del URL.
El enlace a la página de detalles es /loadDetailForm.do. Si un libro tiene id = 23, el enlace debe aparecer como /loadDetailForm.do?id=23.
Me estoy pegando código aquí:
<logic:notEmpty name="BrowseForm" property="books">
<logic:iterate id="book" property="books" name="BrowseForm" type="com.nms.bks.app1.domain.Book">
<p><html:link action="/loadDetailForm" styleClass="btn_blue"><bean:write name="book" property="title"/></html:link></p>
</logic:iterate>
</logic:notEmpty>
Gracias
Solución
Puede especificar un mapa de parámetros que la etiqueta puntales añadirá a la URL.
http://struts.apache.org/ 1.2.x / userguide / struts-Html.HTML # enlace
Mira los atributos paramId
, paramName
y paramProperty
.
<html:link action="/loadDetailForm"
styleClass="btn_blue"
paramId="id"
paramName="book"
paramProperty="id">
<bean:write name="book" property="title"/>
</html:link>
Una alternativa sería el uso de la biblioteca de etiquetas JSTL
<c:url value="expression" context="expression"
var="name" scope="scope">
<c:param name="param1" value="${thing.id}"/>
...
</c:url>
http://www.ibm.com/developerworks/java/ biblioteca / j-jstl0318 /