Because there aren't enough options here, I would also note that mergewebxml now honors <module rename-to="XXX"> properly in SVN.
On Tue, Feb 24, 2009 at 4:20 PM, Charlie Collins <[email protected]> wrote: > > The plugin also has a "webXmlPathAsIs" parameter, which might help if > you want to strip the path. > http://gwt-maven.googlecode.com/svn/docs/maven-googlewebtoolkit2-plugin/compile-mojo.html#webXmlServletPathAsIs > > I don't use that, but someone asked for it back when. > > > > On Feb 24, 3:27 pm, Matt Raible <[email protected]> wrote: >> Thanks Jeff - works great! I updated my blog post with this >> information: >> >> http://raibledesigns.com/rd/entry/enhancing_your_gwt_application_with >> >> Cheers, >> >> Matt >> >> On Feb 24, 10:50 am, jgenender <[email protected]> wrote: >> >> > Let me fill in some blanks too before you try... >> >> > Here is my index.html file in my webapp directory: >> > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> >> > <html> >> > <head> >> > <meta http-equiv="REFRESH" content="0;url=MyApp.html"> >> > </head> >> > </html> >> >> > Your run target can then be: >> >> > <runTarget>index.html</runTarget> >> >> > As long as you are running it in noserver mode. >> >> > You can also set up the maven war plugin to ignore the MyApp.html and >> > use its contents in an index.html file. >> >> > On Feb 24, 9:57 am, jgenender <[email protected]> wrote: >> >> > > Hi Matt. You really don't need to do any URLRewriting. The key here >> > > is that the artifacts produced by GWT are relative. This means that >> > > you shouldn't care if you have the package name while running in >> > > hosted mode, but your war can have it all w/o the package name. If >> > > you really do want to run in hosted mode w/o the package name, then I >> > > would recommend using the jetty maven plugin and use Hosted mode in >> > > the noserver configuration. Here is a quick walk through... >> >> > > The secret in the sauce is using the jetty maven plugin's semi-new >> > > overlay feature. This allows you to merge your webapp directory with >> > > the GWT output. Here I am using jetty with HSQL and my module name is >> > > com.example.MyApp: >> >> > > <plugin> >> > > <groupId>org.mortbay.jetty</groupId> >> > > <artifactId>maven-jetty-plugin</artifactId> >> > > <version>6.1.14</version> >> > > <dependencies> >> > > <dependency> >> > > <groupId>commons-dbcp</groupId> >> > > <artifactId>commons-dbcp</artifactId> >> > > <version>${commonsDbcpVersion}</ >> > > version> >> > > </dependency> >> > > <dependency> >> > > <groupId>commons-pool</groupId> >> > > <artifactId>commons-pool</artifactId> >> > > <version>${commonsPoolVersion}</ >> > > version> >> > > </dependency> >> > > <dependency> >> > > <groupId>hsqldb</groupId> >> > > <artifactId>hsqldb</artifactId> >> > > <version>${hsqldbVersion}</version> >> > > </dependency> >> > > </dependencies> >> > > <configuration> >> > > <webAppConfig> >> > > <contextPath>/</contextPath> >> > > <!--- LOOKY HERE ... THIS IS THE KEY - >> > > USING OVERLAYS --> >> > > <baseResource >> > > implementation="org.mortbay.resource.ResourceCollection"> >> > > >> > > <resourcesAsCSV>${basedir}/src/main/ >> > > webapp,${basedir}/target/myapp/com.example.MyApp</resourcesAsCSV> >> > > </baseResource> >> > > </webAppConfig> >> > > <!-- My jetty config - I think you can >> > > figure this part out yourself --> >> > > <jettyConfig>${basedir}/src/test/jetty/ >> > > hsql/jetty.xml</jettyConfig> >> > > <scanIntervalSeconds>5</ >> > > scanIntervalSeconds> >> > > <scanTargets> >> > > <scanTarget>${basedir}/src/main/ >> > > resources</scanTarget> >> > > <scanTarget>${basedir}/src/main/ >> > > webapp</scanTarget> >> > > <scanTarget>${basedir}/target/myapp/ >> > > com.example.MyApp</scanTarget> >> > > </scanTargets> >> > > <systemProperties> >> > > <!-- Just some HSQL config stuff - just >> > > ignore for now --> >> > > <systemProperty> >> > > <name>dbtest</name> >> > > <value>${basedir}/src/test/db/ >> > > testdb</value> >> > > </systemProperty> >> > > <systemProperty> >> > > <name>hibernate_driver</name> >> > > <value>org.hsqldb.jdbcDriver</ >> > > value> >> > > </systemProperty> >> > > <systemProperty> >> > > <name>hibernate_dialect</name> >> >> > > <value>com.example.myapp.util.CustomHSQLDialect</value> >> > > </systemProperty> >> > > </systemProperties> >> > > </configuration> >> > > </plugin> >> >> > > The next part is telling the war packager to get rid of the package >> > > name, so when you deploy, you don't have that nasty module name: >> >> > > <plugin> >> > > <groupId>org.apache.maven.plugins</groupId> >> > > <artifactId>maven-war-plugin</artifactId> >> > > <configuration> >> > > <webappDirectory>${project.build.directory}/$ >> > > {project.build.finalName}/com.example.MyApp</webappDirectory> >> > > </configuration> >> > > </plugin> >> >> > > Now you can run mvn jetty:run and then run GWT in --noserver mode. >> > > You will notice that you can startup GWT >> > > withhttp://localhost:8080/index.html. >> > > You can put your index.html as your launch pad for your application. >> >> > > Now, if you want to run it all in hosted mode, including Spring, >> > > Hibernate, etc under Tomcat... I can post that configuration as its >> > > much more involved. However, you will have to live with the module >> > > name when running it in full hosted mode, but your deployment/war will >> > > not have the module name (due to the maven war config posted above). >> > > Just be sure you are not hard-coding URLs in your code and that >> > > everything is relative. >> >> > > I hope this helps. If you have issues...post the results and I will >> > > see if I can fill in the blanks. >> >> > > On Feb 23, 3:23 pm, Matt Raible <[email protected]> wrote: >> >> > > > I was able to solve this by adding the UrlRewriteFilter to my project >> > > > with the following configuration in WEB-INF/urlrewrite.xml: >> >> > > > <?xml version="1.0" encoding="UTF-8"?> >> > > > <!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 3.0//EN" >> > > > "http://tuckey.org/res/dtds/urlrewrite3.0.dtd"> >> >> > > > <urlrewrite> >> > > > <rule> >> > > > <from>/$</from> >> > > > <to type="forward" last="true">/com.mycompany.app.Application/ >> > > > Application.html</to> >> > > > </rule> >> > > > <rule> >> > > > <from>/index.html</from> >> > > > <to type="forward" last="true">/com.mycompany.app.Application/ >> > > > Application.html</to> >> > > > </rule> >> > > > <rule> >> > > > <from>^/(.*)\.(.*)$</from> >> > > > <to type="forward">/com.mycompany.app.Application/$1.$2</to> >> > > > </rule> >> > > > </urlrewrite> >> >> > > > Hope this helps someone else. >> >> > > > Matt >> >> > > > On Feb 18, 2:23 pm, Matt Raible <[email protected]> wrote: >> >> > > > > Is there a way to use the gwt-maven plugin to allow running in hosted >> > > > > mode, as well as deploying the app at root? >> >> > > > > Thanks, >> >> > > > > Matt >> >> > > > > On Wed, Feb 18, 2009 at 1:34 PM, Robert kebernet Cooper >> >> > > > > <[email protected]> wrote: >> >> > > > > > Rather "do that with the hosted mode tomcat".. >> >> > > > > > 2009/2/18 Robert "kebernet" Cooper <[email protected]>: >> > > > > >> Aah, yeah. You can't actually do that with the hosted mode >> > > > > >> browser. You would need to deploy the war (or start it in-place) >> > > > > >> and run the shell in noserver mode. >> >> > > > > >> 2009/2/18 Matt Raible <[email protected]>: >> >> > > > > >>> What do I change my pom.xml's runTarget to? It's current set at: >> >> > > > > >>> <runTarget>com.mycompany.Application/Application.html</runTarget> >> >> > > > > >>> If I make your suggested change and change my runLevel to: >> >> > > > > >>> <runTarget>index.html</runTarget> >> >> > > > > >>> I get the following error in hosted mode: >> >> > > > > >>> Unable to find/load module 'index.html' (see server log for >> > > > > >>> details) >> >> > > > > >>> Thanks, >> >> > > > > >>> Matt >> >> > > > > >>> On Wed, Feb 18, 2009 at 12:02 PM, Robert kebernet Cooper >> > > > > >>> <[email protected]> wrote: >> >> > > > > >>>> Actually, I don't think you even need to do that anymore. With >> > > > > >>>> the >> > > > > >>>> 1.4+ bootstrap, just include >> > > > > >>>> <script src="my.Module/my.Module.nocache.js" > >> >> ... >> >> read more ยป > > > -- :Robert "kebernet" Cooper ::[email protected] Alice's cleartext Charlie is the attacker Bob signs and encrypts http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x9E8759F8 --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "gwt-maven" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/gwt-maven?hl=en -~----------~----~----~----~------~----~------~--~---
