He creado un vaadin aplicación web utilizando maven en eclipse. En particular, he utilizado el arquetipo vaadin-archetype-touchkit como se describe en el libro de vaadin (20.3.4). Sin hacer ningún cambio en el código generado he corrido con maven con los objetivos de clean package. A continuación, he compilado el Widgetset. Cuando intento ejecutar en Tomcat 7, aparece el extraño mensaje de la página web:

Failed to load the WidgetSet:
<WidgetSet Path>.DefaultWidgetSet.nocache.js 

En la consola veo que también los mensajes de error:

INFO: Requested resource [/VAADIN/themes/reindeer/styles.css] not found from filesystem or through class loader. Add widgetset and/or theme JAR to your classpath or add files to WebContent/VAADIN folder.

INFO: Requested resource [/VAADIN/widgetsets/com.vaadin.DefaultWidgetSet/com.vaadin.DefaultWidgetSet.nocache.js] not found from filesystem or through class loader. Add widgetset and/or theme JAR to your classpath or add files to WebContent/VAADIN folder.

INFO: Requested resource [/VAADIN/themes/reindeer/styles.css] not found from filesystem or through class loader. Add widgetset and/or theme JAR to your classpath or add files to WebContent/VAADIN folder.

Lo que más me ha impactado de maven no ha creado un web.xml archivo, aunque he leído en el tutorial que no es más necesario en vaadin 7. He leído el pregunta similar donde se propone un ajuste en web.xml archivo debe ser hecho. Debo inferir que también he de crear un web.xml archivo manualmente?

Me parece extraño, así, que cuando he probado el mismo procedimiento con el arquetipo de un típico vaadin 7 aplicación, se ejecuta correctamente. Desde que tengo para desarrollar un touchkit-aplicación agradecería cualquier sugerencia, idea, amas lo que podría perderse en el intento.

OriginalEl autor arjacsoh | 2013-09-14

3 Comentarios

  1. 4

    La web.xml ya no es necesario sólo si utiliza servlet 3.0 configuración (anotar su servlet como se describe 4.8.3. WEB de la Clase Servlet)

    Por lo general, usted había configurar su Vaadin 3.0 Servlet de configuración en esta manera:

    public class MyUI extends UI {
    
          @WebServlet(value = "/*", asyncSupported = true)
          @VaadinServletConfiguration(productionMode = false, ui = MyUI.class)
          public static class Servlet extends VaadinServlet {
          }
    
          @Override
          protected void init(VaadinRequest request) {
                //your init stuff here
          }
    }

    Donde el uso de la @VaadinServletConfiguration como acceso directo para el establecimiento de vaadin relacionados con la params.

    Ahora, si usted no tiene ninguna vaadin addon en tu proyecto (así que usted está utilizando el valor predeterminado de interfaz), que es, no se requiere más trabajo.

    Lugar, si usted está usando los complementos, debe especificar el interfaz para su uso en la @VaadinServletConfiguration simplemente por la adición de la interfaz de parámetros en este modo

    public class MyUI extends UI {
    
          @WebServlet(value = "/*", asyncSupported = true)
          @VaadinServletConfiguration(widgetset="com.bla.bla.MyWidgetSet",productionMode = false, ui = MyUI.class)
          public static class Servlet extends VaadinServlet {
          }
    
          @Override
          protected void init(VaadinRequest request) {
                //your init stuff here
          }
    }

    Caso contrario, se debe crear el web.xml de forma manual como de costumbre…

    Cuando se trata de maven, creo que usted acaba de ejecutar mvn clean package y en el paquete de la fase de la maven-vaadin-plugin compilar estás interfaz automáticamente.

    Gracias por su ayuda. El annotions se generan automáticamente en un proyecto de maven. Traté de cambiar como usted la describe, es a saber, el caso cuando uno crea un vaadin proyecto sin maven, pero no de la aleta de la anotación @VaadinServletConfiguration. Que tarro debe ser importados en pom.xml? He probado el javax.servlet.api 3.0.1 y no funcionó.
    Ok, he actualizado la vaadin versión de 7.0.4 (predeterminado) creado por maven con 7.1.3 y ahora se encuentra con las anotaciones y funciona! La interfaz debe ser de todos modos definidos en @ VaadinServletConfiguration como usted sugiere en su respuesta. En @ Interfaz es stll no funciona.
    encantado de ayudarle..

    OriginalEl autor Guglielmo Moretti

  2. 3

    Para mí, agregando lo siguiente a pom.xml ayudado:

        <dependency>
            <groupId>com.vaadin</groupId>
            <artifactId>vaadin-client-compiled</artifactId>
            <version>${vaadin.version}</version>
        </dependency>
    Este fue el necesario sugerencia para mí. Tengo una dependencia a un proyecto con el vaadin-cliente-compilado de dependencia. Pero esa dependencia fue marcado como opcional. Yo podría agregar la dependencia en el proyecto principal, pero quitando el elemento opcional también trabajó para mí.

    OriginalEl autor geert3

  3. 0

    aquí está el archivo readme en el directorio raíz del proyecto

    Para compilar todo el proyecto, ejecutar «mvn install».
    Para ejecutar la aplicación, ejecute «mvn jetty:run» y abrir http://localhost:8080/ .

    Para desarrollar el tema, simplemente actualizar el relevante tema de los archivos y volver a cargar la aplicación.
    Pre-compilación de un tema elimina automática de actualizaciones del tema en tiempo de ejecución: véase más abajo para obtener más información.

    La depuración de código del lado del cliente
    – ejecutar «mvn vaadin:run-codeserver» en una consola independiente mientras se ejecuta la aplicación
    – activar Super Dev Modo en la ventana de depuración de la aplicación

    Para producir un desplegable modo de producción de la GUERRA:
    – cambio productionMode a true en el servlet de configuración de clase (anidada en la interfaz de usuario de la clase)
    – ejecutar «mvn clean vaadin:compilación tema del paquete»
    – Ver abajo para más información. La ejecución de «mvn clean» quita la pre-compilado tema.
    – prueba con «mvn jetty:run-guerra

    siga las instrucciones y usted conseguirá la página correcta : )

    Esta respuesta es solo C&P de README.md de un Vaadin arquetipo del proyecto.

    OriginalEl autor fulvaz zhang

Dejar respuesta

Please enter your comment!
Please enter your name here