Bienvenido(a), Visitante. Favor de ingresar o registrarse.
Diciembre 02, 2008, 12:48:14
Inicio Ayuda Buscar Ingresar Registrarse
Noticias: Foro de Java, C++ y más.

Nuevo foro de Control de versiones.

+  Foros Java y C/Linux
|-+  Programación
| |-+  Java J2SE
| | |-+  busqueda con javahelp
« anterior próximo »
Páginas: [1] 2 3 Enviar tema Imprimir
Autor Tema: busqueda con javahelp  (Leído 944 veces)
alemag
Full Member
***
Mensajes: 181


Ver Perfil Email


« en: Mayo 22, 2008, 12:47:15 »

Saludos compañeros, estoy realizando la ayuda de la aplicacion con javahelp. Y me dijeron que es un motor de busqueda tambien. Pero al ejecutar la ayuda, solo me sale un arbol a la izquierda, en forma de menu, y los contenidos van en un frame a la izquierda.
Pero quiero ponerle una busqueda por palabras, que pense que venia con el javahelp.

Como podria conseguir ese motor de busqueda Huh

Muchas gracias.
En línea
chuidiang
Administrator
Hero Member
*****
Mensajes: 1974



Ver Perfil WWW Email
« Respuesta #1 en: Mayo 22, 2008, 05:17:38 »

Hola:

En el fichero de "help set" se define la ventana de ayuda y las pestañas que lleva. Debes decir ahí que quieres una pestaña para la búsqueda.

Después, una vez que tengas la ayuda hecha, debes ejecutar un comando para que se genere una pequeña base de datos que usará el motor de búsqueda.

Tienes los detalles en este enlace sobre javahelp.

Se bueno.
En línea

alemag
Full Member
***
Mensajes: 181


Ver Perfil Email
« Respuesta #2 en: Mayo 23, 2008, 10:36:06 »

1- Tengo el siguiente fichero helpset configurado (lo pongo adjunto), pero no me aparece ninguna pestaña de indice ni de busqueda, solo la tabla de contenidos. A que se puede deber Huh

2- Y tengo el jh2.0 en un directorio, ejecuto el jhindexer pero no me aparece ningun directorio con la base de datos (el que llama JavaHelpSearch).

3- En el enlace que me pusiste, en lo de busqueda, pone:
$ cd path_proyecto/ayuda
$ java -jar path_java_help/jh2.0/javahelp/bin/jhindexer.jar .

esto en windows, que seria simplemente ejecutar el jhindexer desde el directorio donde tenga instalado el jh2.0 Huh

4- En el supuesto de que me la generase bien la base de datos, me la pondria en un directorio, pero como podria hacer para poner ese directorio en mi directorio de la aplicacion de manera relativa Huh

Podriais ayudarme con estas dudas Huh
Muchas gracias por la ayuda.
En línea
alemag
Full Member
***
Mensajes: 181


Ver Perfil Email
« Respuesta #3 en: Mayo 23, 2008, 11:13:35 »

Ahora si he conseguido que me aparezcan las otras dos pestañas (al reiniciar el ordenador). Pero sigo teniendo algunas dudas:

1- No me funciona la opción de búsqueda.

2- En la tabla de contenidos y en el indice que se suele poner los mismos contenidos Huh es que no le encuentro la diferencia, salvo que en el indice te encuentra lo que tu quieras.

3- Y tengo el jh2.0 en un directorio, ejecuto el jhindexer pero no me aparece ningun directorio con la base de datos (el que llama JavaHelpSearch).

3- En el enlace que me pusiste, en lo de busqueda, pone:
$ cd path_proyecto/ayuda
$ java -jar path_java_help/jh2.0/javahelp/bin/jhindexer.jar .

esto en windows, que seria simplemente ejecutar el jhindexer desde el directorio donde tenga instalado el jh2.0, y con eso ya aparece el JavahelpSearch ?

4- En el supuesto de que me la generase bien la base de datos, me la pondria en un directorio, pero como podria hacer para poner ese directorio en mi directorio de la aplicacion de manera relativa ?

Muchas gracias.
En línea
chuidiang
Administrator
Hero Member
*****
Mensajes: 1974



Ver Perfil WWW Email
« Respuesta #4 en: Mayo 23, 2008, 11:55:19 »

Hola:

jhindexer.jar lo ejecutas en el directorio que se indica. Lo mejor para asegurarse en windows es con una ventana de comandos de ms-dos.

C:\> cd path_proyecto\ayuda
C:\> java -jar path_java_help/jh2.0/javahelp/bin/jhindexer.jar .

fíjate en el punto final. No puedes ejecutarlo haciendo doble click sobre él.

Eso genera la base de datos de la ayuda. Luego, en tu aplicación no dees ocuparte de nada, simplemente lleva todo el directorio ayuda con todo su contenido junto con tu aplicación.

La diferencia entre índice y tabla de contenidos es que habitualmente la tabla de contenidos es en forma de árbol y capítulos, mientras que el índice son los temas por orden alfabético. Eres tú el que tiene que decidir si quiere las dos cosas y cómo las pones.

Se bueno.
En línea

alemag
Full Member
***
Mensajes: 181


Ver Perfil Email
« Respuesta #5 en: Mayo 23, 2008, 12:37:54 »

Lo de la tabla de contenidos y el indice ya lo tengo un poco mas claro.

Me falta lo de la busqueda, yo todas las pantallas para la ayuda las tengo en:
C:\Documents and Settings\Maga\workspace\Proyecto\src\help\html

y el javahelp, el bin, en:
C:\Documents and Settings\Maga\workspace\Proyecto\src\jh2.0\javahelp\bin

Hago lo que me dices, me pongo en el directorio donde tengo esos ficheros .html de ayuda con:

cd C:\Documents and Settings\Maga\workspace\Proyecto\src\help\html

y se pone en ese directorio, y luego ejecuto:

java -jar C:\Documents and Settings\Maga\workspace\Proyecto\src\jh2.0\javahelp\bin\jhindexer.jar .

y me da el error   " Unable to access jarfile C:\Documents "

Mis dudas son:
1- tengo que poner algo de jh2.0 en el classpath o en el path Huh

2-  Ese error a que puede ser ??

Gracias.
En línea
chuidiang
Administrator
Hero Member
*****
Mensajes: 1974



Ver Perfil WWW Email
« Respuesta #6 en: Mayo 23, 2008, 02:23:20 »

Hola:

Tienes que poner todo entre comillas, ya que el directorio Documents and Settings tiene espacios entre medias

java -jar "C:\Documents and Settings\Maga\workspace\Proyecto\src\jh2.0\javahelp\bin\jhindexer.jar" .

Se bueno
En línea

alemag
Full Member
***
Mensajes: 181


Ver Perfil Email
« Respuesta #7 en: Mayo 23, 2008, 02:45:02 »

Vale, con lo anterior me genera el fichero JavahelpSearch en el directorio html, pero luego si ejecuto la ayuda, en la busqueda, me da el siguiente error:

Exception while creating engine named com.sun.java.help.search.DefaultSearchEngine for view: javax.help.SearchView@a29c6e
java.lang.reflect.InvocationTargetException

2- Otra duda que tengo, que a lo mejor va en relacion con esto. En el fichero helpset:

   <view>
      <name>Buscar</name>
      <label>Búsqueda</label>
      <type>javax.help.SearchView</type>
      <data engine="com.sun.java.help.search.DefaultSearchEngine"> JavaHelpSearch </data>
   </view>

tengo que el motor esta en el directorio javahelpSearch.

Como indico mi directorio, donde tengo yo ese JavaHelpSearch, y si puede ser, de forma relativa Huh
En línea
alemag
Full Member
***
Mensajes: 181


Ver Perfil Email
« Respuesta #8 en: Mayo 25, 2008, 10:46:15 »

Por favor, ayudadme.

Gracias.
En línea
chuidiang
Administrator
Hero Member
*****
Mensajes: 1974



Ver Perfil WWW Email
« Respuesta #9 en: Mayo 25, 2008, 11:35:41 »

Hola:

Aquí tienes cómo preparar la búsqueda con JavaHelp e indicar el directorio.

Se bueno.
En línea

alemag
Full Member
***
Mensajes: 181


Ver Perfil Email
« Respuesta #10 en: Mayo 28, 2008, 11:34:35 »

Pero en la instruccion de codigo donde se le indica la base de datos JavaHelpSearch:

<data engine="com.sun.java.help.search.DefaultSearchEngine">
      JavaHelpSearch   </data>

yo en la estructura mia tengo:
una carpeta html, que contiene el principal.hs (el helpset), la tabla de contenidos.xml y el indice.xml y una carpeta de html (que contiene las paginas html y a su vez otra carpeta que la creo el jhindexer llamada JavaHelpSearch con la base de datos).

Que tendria que poner como ruta en lo de       <data engine=" ...">    ? </data>   para que encuentre dicha base de datos ?

Por favor ayudadme. Gracias.





En línea
chuidiang
Administrator
Hero Member
*****
Mensajes: 1974



Ver Perfil WWW Email
« Respuesta #11 en: Mayo 28, 2008, 02:27:29 »

Hola:

Supongo que jhindexer/JavaHelpSearch

Se bueno.
En línea

alemag
Full Member
***
Mensajes: 181


Ver Perfil Email
« Respuesta #12 en: Mayo 29, 2008, 12:20:10 »

Nada, sigue sin funcionarme, me da el error:

Exception while creating engine named com.sun.java.help.search.DefaultSearchEngine for view: javax.help.SearchView@1cc0a7f
java.lang.reflect.InvocationTargetException

...
Caused by: java.security.InvalidParameterException
   at com.sun.java.help.search.DefaultSearchEngine.<init>(DefaultSearchEngine.java:75)


Cual es el fichero que se supone de partida, para poder hacer la ruta relativa ? porque he puesto html/JavaHelpSearch, pero nada.
En línea
chuidiang
Administrator
Hero Member
*****
Mensajes: 1974



Ver Perfil WWW Email
« Respuesta #13 en: Mayo 29, 2008, 06:12:48 »

En teoría el fichero de partida es donde tienes el helpset.

Se bueno.
En línea

alemag
Full Member
***
Mensajes: 181


Ver Perfil Email
« Respuesta #14 en: Mayo 29, 2008, 01:03:12 »

Bueno, me acaba d ir, aunque tengo otro problema.
Para que me encuentre la base de datos le he puesto "/html/JavaSearch" porque a mi me crea la base de datos en ese directorio, lo que no sabia era lo de las comillas, de momento asi me la localiza bien.

El problema que me queda es el siguiente:

Si meto una cadena para que me la busque en la base de datos, me muestra los resultados, pero si pincho ahi, en el frame de la izquierda, en el de la derecha no me muestra la pagina asociada (aunque resalta los caracteres de la cadena a buscar, pero no es la pagina adecuada). Mando un jpg para que no sea tanto lio.

Como lo puedo solucionar Huh

Muchas gracias.
En línea
Páginas: [1] 2 3 Enviar tema Imprimir 
« anterior próximo »
Ir a:  


Ingresar con nombre de usuario, contraseña y duración de la sesión

Powered by MySQL Powered by PHP Powered by SMF 1.1.5 | SMF © 2006-2007, Simple Machines LLC XHTML 1.0 válido! CSS válido!