2011-12-07 16 views
6

Soy nuevo en vaadin y de alguna manera logré poner en marcha una aplicación. Ahora tengo un archivo html help.htm que contiene consejos sobre cómo usar la aplicación. Puse help.htm en mi directorio WEB de proyecto para poder acceder a él en contexto vaadin. He tratado de acceder a él de esta manera:Archivo htm local incrustado en vaadin

String str = "file:/" + "/" + application.getContext().getBaseDirectory() + "/help.htm"; 
URL url = new URL(str); 
Embedded browser = new Embedded("Help", new ExternalResource(url)); 
browser.setType(Embedded.TYPE_BROWSER);     
tabsheet.addComponent(browser); 

He tratado de depuración, copiado y pegar el contenido de la variable str en mi navegador web puedo acceder al archivo, y la pantalla de búsqueda correctamente. También he intentado con FileResource & ClassResource. También cuando reemplazo el String con http://www.somewebpage.com/ funciona, pero no con el código anterior. ¿Puede alguien señalarme en la dirección correcta sobre cómo lograr eso?

Gracias

Respuesta

6

Hay 5 recursos diferentes que puede elegir en Vaadin dependiendo de las circunstancias: ExternalResource, ThemeResource, FileResource, ClassResource y StreamResource. Si desea que el archivo que se suministra junto con su aplicación, puede:

  • utilizar un ExternalResource (en referencia a su recurso como http: // host: puerto/etc/etc), o

  • utilizar un ThemeResource (en referencia a su recurso a través de su ruta relativa a WebContent/vaadin/themes/directorio yourtheme, donde normalmente se pone iconos y estilos)

me gustaría ir con la segunda apr oach, porque te libera de descubrir la url de contexto.

Más información sobre los recursos here y here.

+0

¡Funcionó! Gracias. Para los registros, solo coloque el archivo Help.htm en el directorio del tema y lo cargué como ThemeResource. – logiframe