Pregunta

Estoy tratando de integrar GWT con la costura. He seguido el Docs y trató para ejecutar el

ejemplo como sigue.

  1. He creado un proyecto GWT, usando Eclipse Galileo y creado las clases como se da en el ejemplo

  2. Entonces añadí la costura 2.0.2 frascos a la trayectoria de la estructura

  3. Me compila la aplicación, a través de Google GWT compilador utilizando la interfaz de usuario eclipse.

  4. Finalmente i corrió la aplicación.

En primer lugar me gustaría saber si los pasos anteriores son correctas. Después de ejecutar la aplicación no consigo el resultado deseado.

También es esta la única manera de integrar GWT con la costura?

Actualizar

He conseguido este ejemplo se ejecuta utilizando hormiga. Sin embargo, el objetivo de mi ejercicio será de ejecutarlo a través de la interfaz de usuario de Eclipse.

He creado mi propio proyecto por su nombre GWTTest y trató de recrear el ejemplo en el Eclipse

interfaz de usuario. Hay algunas cosas que he notado. GWT Compilar a través de la interfaz de usuario de Eclipse crea un directorio por su nombre gwttest dentro del archivo de la guerra. En tanto que la estructura de directorios creada por la hormiga es diferente.

En el ejemplo hay una pieza de código en funciones AskQuestionWidget GetService como sigue

String endpointURL = GWT.getModuleBaseURL() + "seam/resource/gwt";

¿Cómo puedo modificar el código para que se adapte a mi estructura de directorios?

¿Fue útil?

Solución

Utilizamos costura + richfaces + GWT y funciona muy bien. A pesar de todo lo que construimos con Maven, supongo que se puede utilizar hormigas también. La idea general es comenzar toda la aplicación web en el modo de desarrollo GWT. Usted no tiene que compilar todo (lo que tarda mucho tiempo en caso de GWT compilador). Modo de desarrollo compilará los recursos solicitados en la demanda. Mediante la ejecución de aplicaciones GWT esta manera, también se puede depurar código del lado del cliente.

También es posible llamar a los métodos de GWT en respuesta a las acciones de costura.

Actualización:

Me puede elaborar en nuestra solución un poco:

Maven

El proyecto debe estar configurado con packaging: war. Hay algunas instrucciones oficiales sobre el ajuste de costura con Maven (también richfaces):

http: / /docs.jboss.org/seam/2.2.1.CR2/reference/en-US/html/dependencies.html#d0e34791

http://docs.jboss.org/richfaces /latest_3_3_X/en/devguide/html/SettingsForDifferentEnvironments.html

Para añadir GWT siguientes secciones para su pom.xml:

<dependency>
  <groupId>com.google.gwt</groupId>
  <artifactId>gwt-user</artifactId>
  <version>2.1.0</version>
  <scope>provided</scope> <!-- prevents from including this in war -->
</dependency>
<dependency>
  <groupId>com.google.gwt</groupId>
  <artifactId>gwt-dev</artifactId>
  <version>2.1.0</version>
  <scope>provided</scope> <!-- prevents from including this in war -->
</dependency>
<dependency>
  <groupId>pl.ncdc.gwt</groupId>
  <artifactId>gwt-servlet-war</artifactId>
  <version>2.1.0</version>
  <type>war</type> <!-- adds gwt-servlet.jar to your war, but not to your classpath -->
</dependency>

<!-- build section -->
<build>
  <resources>
    <resource>
      <directory>src/main/resources</directory>
    </resource>
    <resource>
      <directory>src/main/java</directory>
      <includes>
        <include>**/client/**/*.java</include>
        <include>**/client/**/*.properties</include>
        <include>**/shared/**/*.java</include>
        <include>**/shared/**/*.properties</include>
        <include>**/*.gwt.xml</include>
      </includes>
    </resource>
  </resources>
  <testResources>
    <testResource>
      <directory>src/test/java</directory>
      <includes>
        <include>**/client/**/*.java</include>
        <include>**/client/**/*.properties</include>
        <include>**/shared/**/*.java</include>
        <include>**/shared/**/*.properties</include>
        <include>**/*.gwt.xml</include>
      </includes>
    </testResource>
  </testResources>
<plugins>
  <plugin> <!-- dirty hack for GWT issue #3439 - it is not really fixed -->
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-antrun-plugin</artifactId>
    <executions>
      <execution>
        <id>remove-javax</id>
        <phase>compile</phase>
        <configuration>
          <tasks>
            <delete dir="${project.build.directory}/classes/javax" />
          </tasks>
        </configuration>
        <goals>
          <goal>run</goal>
        </goals>
      </execution>
    </executions>
  </plugin>
  <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>gwt-maven-plugin</artifactId>
    <version>1.3.2.google</version>
    <configuration>
      <extraJvmArgs>-Xmx512M</extraJvmArgs>
      <gwtVersion>${gwt.version}</gwtVersion>
      <modules>
        <module>com.company.gwt.project.module.Module</module>
      </modules>
      <soyc>false</soyc>
      <draftCompile>${gwt.draft.compile}</draftCompile> <!-- you can control this with profiles -->
      <localWorkers>2</localWorkers><!-- in theory should speed things up on our quad CPU hudson -->
      <style>${gwt.style}</style> <!-- you can control this with profiles -->
    </configuration>
    <executions>
      <execution>
        <id>compile</id>
        <phase>prepare-package</phase>
        <goals>
          <goal>compile</goal>
        </goals>
      </execution>
      <execution>
        <id>gwt-test</id>
        <phase>integration-test</phase>
        <goals>
          <goal>test</goal>
        </goals>
        <configuration>
          <includes>**/*GwtTestSuite.java</includes>
        </configuration>
      </execution>
    </executions>
  </plugin>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.1</version>
    <configuration>
      <archiveClasses>true</archiveClasses>
      <warSourceDirectory>src/main/webapp-empty</warSourceDirectory> <!-- just empty dir for workaround -->
      <webResources>
        <resource>
          <directory>src/main/webapp</directory>
          <excludes>
            <exclude>app.*</exclude> <!-- name of you gwt module(s) - rename-to in gwt.xml -->
            <exclude>WEB-INF/web.xml</exclude>
          </excludes>
        </resource>
        <resource>
          <directory>src/main/webapp</directory>
          <includes>
            <include>WEB-INF/web.xml</include>
          </includes>
          <filtering>true</filtering>
        </resource>
      </webResources>
    </configuration>
  </plugin>
</plugins>
</build>

Esta configuración debe producir guerra con ambos - la costura y GWT compilado. Si desea utilizar estos proyectos en el modo de desarrollo puesto también en este pom.xml:

<dependency>
  <groupId>com.xemantic.tadedon</groupId>
  <artifactId>tadedon-gwt-dev</artifactId>
  <version>1.0-SNAPSHOT</version>
  <scope>provided</scope>
</dependency>

y añadir -server com.xemantic.tadedon.gwt.dev.JettyLauncher a su lanzador de aplicaciones web de Google. Esto se Maven lanzador embarcadero amigable que puede ser necesario en algunas situaciones.

espero que le ayudará. ¿Está usted interesado en la comunicación entre GWT y richfacaes aplicación?

Otros consejos

Si lo desea, echar un vistazo a / Ejemplos / interacción remota / GWT . A partir de ahí, run (ANT Hacer Compruebe que ha instalado antes de usarlo)

ant

Aquí va su archivo readme.txt

  

Se puede ver el ejemplo en:    http: // localhost: 8080 / costura-holamundo / org.jboss.seam.example.remoting.gwt.HelloWorld / HelloWorld.html

     

GWT: Si desea reconstruir la parte delantera GWT, tendrá que descargar GWT, y build.properties configure a punto a la misma . A continuación, puede ejecutar "ant GWT-compilación" de este directorio. Es pre-construidos de forma predeterminada. Si desea utilizar el modo de GWT alojado , así, leer todos los detalles de los documentos GWT!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top