Foros del Web » Programación para mayores de 30 ;) » Programación General »

logicsheet cannot be used in generators

Estas en el tema de logicsheet cannot be used in generators en el foro de Programación General en Foros del Web. Hola, llevo varios días intentando que un archivo .xsp me genere un .xml para despues aplicarle un .xsl, pero me da el error que tengo ...
  #1 (permalink)  
Antiguo 30/04/2004, 04:38
 
Fecha de Ingreso: abril-2004
Ubicación: Sevilla
Mensajes: 100
Antigüedad: 20 años, 6 meses
Puntos: 0
logicsheet cannot be used in generators

Hola, llevo varios días intentando que un archivo .xsp me genere un .xml para despues aplicarle un .xsl, pero me da el error que tengo puesto por título del mensaje, he estado leyendo mucho por ahi, he visto muchos ejemplos de como hacerlo, y aún así no he sido capaz, he comprobado que la conexión a la base de datos funciona correctamente, concretamente he utilizado la información que aparece en el siguiente enlace: http://es.tldp.org/Tutoriales/APACHE-COCOON-2/mult..., si vasi al punto 8.2.2.1.2. Se me olvidaba comentar que estoy utilizando etiquetas esql, como podreis ver te explica paso por paso como hacerlo, creo que el problema esta en la configuracion del pipeline, y para ser mas exactos en el atributo type del map:generate donde tengo defiinido mi xsp, ya que si pongo otro tipo que no sea serverpages... me hace la transformación aunque no muestra los datos de la base de datos. Me gustaría mucho que me comentarais alguna posible solucion.

Muchas gracias. Si necesitais mas datos sobre lo que tengo definido no dudeis en preguntarlo
  #2 (permalink)  
Antiguo 05/05/2004, 03:06
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 23 años, 1 mes
Puntos: 5
No entiendo que error te da.. es decir, que no se exactamente que problema dices que te da.

Además, el link que has puesto no funciona.. bueno, sí fuciona pero me da error que no puede mostrar la pagina
  #3 (permalink)  
Antiguo 05/05/2004, 03:29
 
Fecha de Ingreso: abril-2004
Ubicación: Sevilla
Mensajes: 100
Antigüedad: 20 años, 6 meses
Puntos: 0
El enlace que puse antes estaba cortado, lo vuelvo a poner:

http://es.tldp.org/Tutoriales/APACHE...ABasesDeDatos.
  #4 (permalink)  
Antiguo 05/05/2004, 03:31
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 23 años, 1 mes
Puntos: 5
y que es eso del titulo que dices que te da error ??
__________________
BUSCO TELETRABAJO
Experiencia de mas de 4 años como desarrolladora web en PHP, ASP, XML, XSL, JavaScript, MySQL, PostGres, SQLServer, ...
  #5 (permalink)  
Antiguo 05/05/2004, 03:36
 
Fecha de Ingreso: abril-2004
Ubicación: Sevilla
Mensajes: 100
Antigüedad: 20 años, 6 meses
Puntos: 0
El mensaje de error es el que aparece en el título. A ver si consigo explicarme bien, estoy trabajando con Cocoon, y quiero generar un fichero xml utilizando xsp, pero no lo consigo, siempre me da el error "logicsheet cannot be used in generators", creo que el error debe estar en la propiedad type de la etiqueta <map:generator> del sitemap de cocoon, ya que si pongo otro valor a type, que no sea el de serverpages, me hace la transformación, pero como no lee de la base de datos (código que va dentro del xsp) no me muestra nada.
  #6 (permalink)  
Antiguo 05/05/2004, 03:37
 
Fecha de Ingreso: abril-2004
Ubicación: Sevilla
Mensajes: 100
Antigüedad: 20 años, 6 meses
Puntos: 0
El mensaje de error es el que aparece en el título. A ver si consigo explicarme bien, estoy trabajando con Cocoon, y quiero generar un fichero xml utilizando xsp, pero no lo consigo, siempre me da el error "logicsheet cannot be used in generators", creo que el error debe estar en la propiedad type de la etiqueta <map:generator> del sitemap de cocoon, ya que si pongo otro valor a type, que no sea el de serverpages, me hace la transformación, pero como no lee de la base de datos (código que va dentro del xsp) no me muestra nada.

Como ya he comentado antes, he seguido las instrucciones que vienen en el enlace, y me sigue saliendo el mismo error.

Gracias, de nuevo.
  #7 (permalink)  
Antiguo 05/05/2004, 03:42
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 23 años, 1 mes
Puntos: 5
Podrías poner el código de tu sitemap?... el del pipeline concreto para abreviar un poco.
__________________
BUSCO TELETRABAJO
Experiencia de mas de 4 años como desarrolladora web en PHP, ASP, XML, XSL, JavaScript, MySQL, PostGres, SQLServer, ...
  #8 (permalink)  
Antiguo 05/05/2004, 03:46
 
Fecha de Ingreso: abril-2004
Ubicación: Sevilla
Mensajes: 100
Antigüedad: 20 años, 6 meses
Puntos: 0
Claro, pero ya te digo que es igual al del enlace:

<map:match pattern="prueba">
<map:generate type="serverpages" src="XSP/cargadatos.xsp"/>
<map:transform src="XSL/cargadatos.xsl">
</map:transform>
<map:serialize/>
</map:match>
  #9 (permalink)  
Antiguo 05/05/2004, 03:49
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 23 años, 1 mes
Puntos: 5
Mira.. ando un poco perdida porque nunca hice nada de eso en Cocoon.

Supongo que has buscado en la web de Cocoon. Yo he buscado y encontré este enlace:

XSLT Logicsheets and XSP for Java

Repasa tu cargadatos.xsl con lo que te dice en esa página. O publicalo también y lo miramos los dos..
  #10 (permalink)  
Antiguo 05/05/2004, 03:55
 
Fecha de Ingreso: abril-2004
Ubicación: Sevilla
Mensajes: 100
Antigüedad: 20 años, 6 meses
Puntos: 0
Gracias, por la información aunque esa página ya la he repasado una y otra vez, de todas formas mi xsl es muy simple, pq solo estaba haciendo pruebas, lo único que tengo son tres etiquetas y "teoricamente" voy formando una tabla con la información que voy extrayendo.

el xsp que tengo (no exactamente pq no lo tengo a mano ahora mismo) seria:

<?xml version="1.0" encoding="ISO-8859-1"?>

<xsp:page
language="java"
xmlns:xsp="http://apache.org/xsp"
xmlns:esql="http://apache.org/cocoon/SQL/v2"
>

<page>

<content>
<raiz>
<esql:connection>
<esql:pool>MiConexion</esql:pool>
<esql:execute-query>
<esql:query>select * from Usuario</esql:query>
<esql:results>
<dato>
<esql:row-results>
<nombre><esql:get-string column="name"/></nombre>
</esql:row-results>
</dato>
</esql:results>
</esql:execute-query>
</esql:connection>
</raiz>
</content>
</page>
</xsp:page>

El xsl seria tan simple como ir construyendo una tabla, metiendo en cada fila el nombre que voy extrayendo de la base de datos.
  #11 (permalink)  
Antiguo 05/05/2004, 04:04
 
Fecha de Ingreso: abril-2004
Ubicación: Sevilla
Mensajes: 100
Antigüedad: 20 años, 6 meses
Puntos: 0
Voy a poner otro enlace de donde he sacado mas informacion a la hora de construir los xsp, como observaras es muy similiar al que he puesto (el que he puesto ha sido de memoria y puede que me haya equivocado a la hora de colocar la etiqueta raiz del xml que estamos generando)

http://www.cocooncenter.org/cc/docum...onnection.html
  #12 (permalink)  
Antiguo 05/05/2004, 04:11
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 23 años, 1 mes
Puntos: 5
He leído que el XSL debe tener al menos un <xsp:logic/> y un <xsp:expr/>... En tu codigo no encuentro eso.

Concretamente lo leí aquí y textualmente pone For an XSP to be useful, it must also require at least an <xsp:logic> and an <xsp:expr> element.


Otra cosa que se me ocurre es que como has tenido que modificar el cocoon.xconf, según lei en el enlace que pusiste tú, quizás necesites reiniciar el Tomcat.

Mira también si tienes definido el generator serverpages en tu sitemap:

Código PHP:
 <map:generator name="serverpages"                 src="org.apache.cocoon.generation.ServerPagesGenerator"  label="content"/> 
No sé que más decir... supongo que todos los enlaces que estoy visitando ya habrás pasado tú por ellos. De todas formas, en los samples de Cocoon tiene que venir algun ejemplo sobre generacion de XML con XSP. Pruebalo y asi al menos sabrás si es de la configuración de tu Cocoon (cocoon.xconf) o sólo de tu ejemplo concreto que tienes algo mal en tu archivo xsp.

Un apunte mas.. en el histórico de cambios de la versión de Cocoon 2.0.5 encontré que han añadido la posibilidad de soportar ESQL... a ver si es que vas a tener una versión anterior y no soporta ese modo de acceso a BD.

Suerte

  #13 (permalink)  
Antiguo 05/05/2004, 04:20
 
Fecha de Ingreso: abril-2004
Ubicación: Sevilla
Mensajes: 100
Antigüedad: 20 años, 6 meses
Puntos: 0
Muchas gracias por todo, sobre eso ultimo de la version de Cocoon, te puedo decir que ya he conseguido introducir datos en la base de datos pero en vez de hacerlo formando un xml lo hice como el action de un formulario, este action llama a un archivo xsp que es el que se encarga de introducir los datos.

En referencia a lo del tag <xsp:logic> se usa para meter codigo java en medio del xsl o xml, segun nos interese y el tag <xsp:expr> para utilizar una variable o expresion que ha sido previamente usada o definida en un <xsp:expr>, bueno esto es hablando de una forma muy general, creo que en alguno de los enlaces que he puesto habras visto un xsl que utiliza las etiquetas xml creadas a partir de un xsp en concreto en http://www.cocooncenter.org/cc/docum...onnection.html

Nada más, de nuevo gracias por todo, si lo consigo ya sea de esta forma o de otra lo posteare por si alguien tiene el mismo problema.

Un saludo
  #14 (permalink)  
Antiguo 05/05/2004, 04:23
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 23 años, 1 mes
Puntos: 5


P.D.: Tienes un MP
  #15 (permalink)  
Antiguo 21/05/2004, 01:36
 
Fecha de Ingreso: abril-2004
Ubicación: Sevilla
Mensajes: 100
Antigüedad: 20 años, 6 meses
Puntos: 0
Al final.... lo conseguí es mucho mas facil de lo que podía pensar, os voy a poner el pipeline, el xsp y el xsl

Pipeline:

<map:match pattern="mainxsp">
<map:generate type="serverpages" src="XSP/pruebacarga.xsp"/>
<map:transform src="XSL/pruebacarga.xsl"/>
<map:serialize/>
</map:match>

XSP:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsp:page language="java" xmlns:xsp="http://apache.org/xsp" xmlns:esql="http://apache.org/cocoon/SQL/v2" >

<prueba>

<title>Una prueba con ESQL</title>

<ejemplo>

<esql:connection>
<esql:pool>pool1</esql:pool>
<esql:execute-query>
<esql:query>select * from usuario where Id_Seccion=3</esql:query>
<esql:results>
<esql:row-results>
<pista>
<esql:get-string column="Nombre"/>
<xsp:attribute name="dni">
<xsp:expr>
<esql:get-int column="DNI"/>
</xsp:expr>
</xsp:attribute>
</pista>
</esql:row-results>
</esql:results>
</esql:execute-query>
</esql:connection>

</ejemplo>
</prueba>
</xsp:page>

el xml que genera quedaria algo asi:

<prueba>
<ejemplo>
<pista dni=""></pista> // el contenido de pista y dni dependera de lo que haya en la base de datos
</ejemplo>
</prueba>

y para terminar el XSL:


<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:for-each select="prueba/ejemplo/pista">
<xsl:value-of select="."/>
<br/>
<xsl:value-of select="@dni"/>
<br/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>

Como veis el xsl es muy simple... pero....

Bueno gente... ahi queda eso.. espero que os sirva de algo.

Un saludo
  #16 (permalink)  
Antiguo 21/05/2004, 01:44
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 23 años, 1 mes
Puntos: 5
podrias especificar concretamente en el codigo que es lo que hacias mal?
__________________
BUSCO TELETRABAJO
Experiencia de mas de 4 años como desarrolladora web en PHP, ASP, XML, XSL, JavaScript, MySQL, PostGres, SQLServer, ...
  #17 (permalink)  
Antiguo 21/05/2004, 01:49
 
Fecha de Ingreso: abril-2004
Ubicación: Sevilla
Mensajes: 100
Antigüedad: 20 años, 6 meses
Puntos: 0
He hecho tantas pruebas que ya no me aquerdo muy bien de todas las cosas que me han fallado , pero si te fijas en el xsp, al principio ponia una serie de etiquetas que despues no las tenia en cuenta en el xsl como eran la etiqueta <page> y <content>, las he seguido usando hasta ultima hora, y simplemente sustituyendo el nombre de esas etiquetas por las que ahora he puesto... y me ha funcionado, aunque supongo que constuyendo un xsl bien con esas etiquetas tb debe funcionar pq le xml que me generaba con esas etiquetas lo hacia bien y aparecían de forma normal.
  #18 (permalink)  
Antiguo 21/05/2004, 01:55
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 23 años, 1 mes
Puntos: 5
ayyy Dieguito!!

que nooooooooooo, que es broma

al menos has vuelto para poner un ejemplo que funciona

Un beso
  #19 (permalink)  
Antiguo 21/05/2004, 02:00
 
Fecha de Ingreso: abril-2004
Ubicación: Sevilla
Mensajes: 100
Antigüedad: 20 años, 6 meses
Puntos: 0
no te rias de miiiiiiiiii ke yo soy un paketeeeeeeeeeeeeeeeeeeeee

  #20 (permalink)  
Antiguo 21/05/2004, 02:03
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 23 años, 1 mes
Puntos: 5
que eres un pakete!!!??????

que significa eso??? ...

P.D.: Nos van a echar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:34.