隨着new maven-gwt-plugin(其中officially替代了傳統的魔力之一),我可以運行GWT超級開發模式是這樣的:如何在WildFly上使用新的(tbroyer)maven-gwt-plugin設置GWT超級開發模式?
mvn gwt:codeserver
如何我得到我的後端與WildFly運行(它使用JAX-RS等JavaEE技術)?
隨着new maven-gwt-plugin(其中officially替代了傳統的魔力之一),我可以運行GWT超級開發模式是這樣的:如何在WildFly上使用新的(tbroyer)maven-gwt-plugin設置GWT超級開發模式?
mvn gwt:codeserver
如何我得到我的後端與WildFly運行(它使用JAX-RS等JavaEE技術)?
使用EmbeddedWildFlyLauncher
errai-cdi-jboss
依賴其中包括WildFlygwt-dev
的apache-jsp
依賴,以避免出錯。父pom.xml
看起來是這樣的:
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-dev</artifactId>
<exclusions>
<exclusion>
<!-- Contains a ServletContainerInitializer that breaks the EmbeddedWildFlyLauncher during GWT Super Dev Mode -->
<groupId>org.eclipse.jetty</groupId>
<artifactId>apache-jsp</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<!-- Only used for EmbeddedWildFlyLauncher during GWT Super Dev Mode -->
<groupId>org.jboss.errai</groupId>
<artifactId>errai-cdi-jboss</artifactId>
<scope>runtime</scope>
</dependency>
errai.jboss.home
系統屬性的衍生進程的WildFly發射EmbeddedWildFlyLauncher
從errai-cdi-jboss
,所以啓動器可以啓動WildFly。warDir
配置爲展開目錄,以便加載後端戰爭(因此,來自GWT客戶端的REST/RPC調用實際上有人在後端應答它們)。,在父pom.xml
部分看起來是這樣的:
<plugin>
<groupId>net.ltgt.gwt.maven</groupId>
<artifactId>gwt-maven-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<devmodeArgs>
<!-- GWT Super Dev Mode: Replace default backend by WildFly -->
<arg>-server</arg>
<arg>org.jboss.errai.cdi.server.gwt.EmbeddedWildFlyLauncher</arg>
<arg>-startupUrl</arg>
<arg>gwtui/gwtui.html</arg>
</devmodeArgs>
<!-- GWT Super Dev Mode: deploy backend correctly -->
<warDir>optashift-employee-rostering-webapp/target/optashift-employee-rostering-webapp-${project.version}</warDir>
<systemProperties>
<!-- GWT Super Dev Mode: which WildFly to use -->
<errai.jboss.home>${wildfly.home}</errai.jboss.home>
</systemProperties>
</configuration>
</plugin>
然後運行
mvn gwt:devmode
重要:因爲後端是不是實際這並不完全工作野蠻的戰爭,但只有gwt ui戰爭...
@ thomas-broyer WildFly服務器在端口'9990'啓動,devmode在端口'9876',但我的GWT UI發出的REST請求失敗,因爲'9876'上的devmode服務器忽略它們。任何想法如何讓他們轉發到'9990'?我沒有使用GWT-RPC。 –
使它們相對於'GWT.getModuleBaseURL()'或'GWT.getHostPageBaseURL()'? –
用'warDir'固定,現在一切都運行到wildfly端口。 –
1)你是如何做到這一點與魔杖Haus插件? 2)也許看看wildfly-maven-plugin和wildfly:run/wildfly:start? –
它需要作爲一個進程啓動(因此它可以作爲一個進程被殺死,因此它可以作爲一個進行調試等),所以2)不是一個選項。對於1)我見過人們使用啓動器,所以我現在也在嘗試。 –