Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/12/2005, 09:06
Avatar de Chiquita
Chiquita
 
Fecha de Ingreso: agosto-2003
Ubicación: 8º 54' de latitud y a 79º 19' de longitud, a 0 metros sobre el nivel del mar
Mensajes: 93
Antigüedad: 21 años, 5 meses
Puntos: 0
Información Enviar parametros de un XHTML (html/xslt) a otro con Cocoon

Método de navegación reutilizando un xslt para diversos tipos de contenido de un mismo archivo XML.

1. Se configura el sitemap de Cocoon para que reciba parámetros por medio del request (url).
2. Se declaran los parámetros requeridos.
3. Se declara el parámetro en el orden que recibirá a los mismos dentro del archivo XSLT.
4. Se envia el valor del parámetro por medio de un request “miurl?nombreparam=valor” en el orden de declaración (en el sitemap y el xslt).
Aquí puede ser invocada la función mediante botonos ANTERIOR y SIGUIENTE, dependiendo de nuestras necesidades.
5. Se utiliza el valor del parámetro recibido.

<!-- ======= SITEMAP ======== -->
<map:match pattern="navr">
<map:act type='request'>
<map:parameter name="parameters" value="true"/>
<map:generate src='xml/CUNMG-007.xml'/>
<map:transform type="sql">
<map:parameter name="p" value="{p}"/>
</map:transform>
<map:transform type="xslt" src="xslt/NAV_3.xsl">
<map:parameter name="use-request-parameters" value="true"/>
</map:transform>
<map:serialize type="html"/>
</map:act>
</map:match>

<!-- ======== ARCHIVO XSLT ========== -->
<!-- DECLARA Y RECIBE EL PARAMETRO -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:NonHtml="http://www.progress.com/StylusStudio/NonHtml" exclude-result-prefixes="NonHtml">
<xsl:output method="html"/>
<xsl:param name="p"/>
<xsl:template match="/">
...
<!-- ENVIA EL PARAMETRO POR MEDIO DE UN REQUEST -->
<!-- PRESIONANDO UN BOTON y ACTIVANDO LA FUNCION JAVASCRIT -->
<script type="text/javascript">
<![CDATA[
<!--
function NEXT_DF(){
window.open("http://localhost:8081/cocoon/xml_wpc/navr?p=3","menu");
}
-->
]]>
</script>
...
<!-- UTILIZA EL VALOR DEL PARAMETRO -->
<TD>
<font face="Verdana" size="2">Siguiente paso:=</font>
<xsl:value-of select="$p"/>
</TD>
...
</xsl:template>
</xsl:stylesheet>
__________________
;-) Chiquita
Anuncio: Chica tímida busca... bueno... es que... no, bueno... nada... no importa.