Ver Mensaje Individual
  #6 (permalink)  
Antiguo 17/07/2007, 00:51
Avatar de elAntonie
elAntonie
 
Fecha de Ingreso: febrero-2007
Mensajes: 894
Antigüedad: 17 años, 3 meses
Puntos: 10
Re: ¿Se usa el metodo SendRedirect en sesiones de servlets?

Bueno, podrias usar xslt. El funcionamiento es (a grandisimos rasgos) parecido a una plantilla, en la que situas unas 'marcas' que cambiaras por el valor correspondiente.

xslt es la union de una plantilla (xsl) y un fichero xml que tiene los datos. Pero para tu caso podrias hacer un apaño para evitarte ese xml.

A ver si logras entender algo (dificil con un ponente como yo) con un ejemplito.

Formas un plantilla (pepe.xsl) que podria ser algo parecido a esto.

<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html" version="1.0" encoding="UTF-8" indent="YES"/>
<xsl:param name="autor"/>
<xsl:template match="doc"> //este es el nodo raiz en el que situarse del xml
<html><body>
<p><center><h3><font color="red"><xsl:value-of select="$autor"/></font></h3></center></p>
</body>
</html>
</xsl:template>
</xsl:stylesheet>


Generas una jsp (a.jsp) a la que llamaras mas o menos asin:

a.jsp?autor=Umberto Eco

Siendo a.jsp


<%@ page language="java" contentType="text/html" %>
<%@ page import="javax.xml.transform.*,java.io.*,javax.xml. transform.stream.*"%>
<%
//generamos un xml por defecto ya que es obligatorio tener un xml bien formado
StringReader xmlFile = new StringReader("<?xml version=\"1.0\"?> <doc/>");

TransformerFactory tFactory =
TransformerFactory.newInstance();
Transformer transformer =

tFactory.newTransformer(new StreamSource("/miaplicacion/pepe.xsl"));



transformer.setParameter("autor",request.getParame ter("autor"));

transformer.transform(new StreamSource(xmlFile), new StreamResult(out));
%>



Espero que esto te sirva.

Mas informacion
http://geneura.ugr.es/~jmerelo/XSLT/
o en san google.

PD. necesitarias el paquete de xslt en tu aplicacion.

Última edición por elAntonie; 17/07/2007 a las 00:59