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 » --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
