Saludos amigos y amigas,
Estoy tratando de hacer una especie de motor de busqueda al estilo cocoon. Mi experimento consiste en lo siguiente:
1. El usuario ingresa en la pagina HTML, en un campo, una palabra clave del nombre de los temas.
2. Al darle click al boton buscar, este debe realizar lo siguiente:
- listar todos los archivos xml que contengan esa palabra clave en su atributo name
La tarea de listar los archivos xml, ya esta completada, se puede realizar utilizando un componente en cocoon llamado xpathdirectory.
mi idea para que liste solo lo que el usuario desee es la siguiente:
(por ejemplo este pipeline funciona cuando el usuario introduce "xpath2" y presiona buscar)
primero ejecuta la función javascript llamado desde el form:
function testResults (form) {
var TestVar = form.inputbox.value;
window.open("http://localhost:8081/cocoon/XML_WPC/"+ TestVar);
}
el request entra en el pipeline correspondiente, ejemplo:
<map:match pattern="xpath2">
<map:generate type="xpathdirectory" src="C:\Apache Software Foundation\Tomcat 5.0\webapps\cocoon\XML_WPC\">
<map:parameter name="xpath" value="/DF_O"/>
<map:parameter name="include" value="\.xml$"/>
</map:generate>
<map:transform src="directory2html_.xslt"/>
<map:serialize/>
</map:match>
Este pipeline me lista informacion (definida en el xsl) de los diagramas de flujo si el usuario ingreso "xpath2".
Este es mi invento:
para el siguiente javascript
function DF_name (form) {
var nombre = form.inputbox.value;
window.open("http://localhost:8081/cocoon/XML_WPC/DF_"+ nombre);
}
entra al pipeline
<map:match pattern="DF_*">
<map:generate type="xpathdirectory" src="C:\Apache Software Foundation\Tomcat 5.0\webapps\cocoon\XML_WPC\">
<map:parameter name="xpath" value="/DF_O/contains(@name,{1})"/> <map:parameter name="include" value="\.xml$"/>
</map:generate>
<map:transform src="directory2html_.xslt"/>
<map:serialize/>
</map:match>
El asterisco indica que si el usuario escribe "Aperturas", el request entra como DF_Aperturas, el pipeline solo toma la palabra "Aperturas", es aquí donde debe buscar dentro del xml todos los que contengan esta palabra clave y listarlos.
estoy segura que en el xpath es donde esta el error... creo
un millon de gracias