FWIW, it looks like the hosted mode in 1.6 will honor your target/[web app a splode] folder in hosted mode now too. I think that is it -- the new HostedMode class is segfaulting for me on the mac.
On Tue, Feb 24, 2009 at 4:30 PM, Robert kebernet Cooper <[email protected]> wrote: > 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 > -- :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 -~----------~----~----~----~------~----~------~--~---
