To answer my own question. It works fine with existing web.xml file. Just copy them over the generated file as mentioned above.
On Jan 6, 6:42 pm, "[email protected]" <[email protected]> wrote: > It's great we got this figured out, but how come GWT hosted mode > doesnt work with exisitng web.xml files so we dont have to code > special configuration for development and production deployment? > > Scott > > On Dec 12 2008, 4:26 pm, Joe Cole <[email protected]> > wrote: > > > Oh, and in your web.xml's that you ship to your production environment > > you would have a different listener setup. > > > <listener> > > > > <listener-class>com.yourcompany.ProductionConfiguration</listener-class> > > </listener> > > > On Dec 13, 11:00 am, Joe Cole <[email protected]> wrote: > > > > Here is our way: > > > > In: > > > tomcat/webapps/ROOT/WEB-INF/web.xml > > > > <resource-ref> > > > <res-ref-name>jdbc/dbsource</res-ref-name> > > > <res-type>javax.sql.DataSource</res-type> > > > <res-auth>Container</res-auth> > > > </resource-ref> > > > <listener> > > > <listener-class>com.yourcompany.LocalConfiguration</listener-> > > > class> > > > </listener> > > > > The only gotcha with this is that when you upgrade gwt it changes the > > > web.xml - we just revert it from version control and all works well. > > > > That listener sets up the entire servlet side, including properties & > > > guice bindings: > > > > public class LocalConfiguration extends AbstractConfiguration { > > > protected IPropertyManager createPropertyManager( > > > final ServletContext context) { > > > return new LocalPropertyManager(); > > > } > > > public IBindings getBindings() { > > > return new LocalBindings(); > > > } > > > > } > > > > This allows us to ship different setups to the system depending on > > > where it's being used (one for hosted mode, production, test, staging > > > etc). > > > The datasource is container managed which is why it's defined in the > > > file. > > > > The other file you will need for hosted mode is: > > > tomcat/conf/gwt/localhost/ROOT.xml > > > <Context privileged="true" antiResourceLocking="false" > > > antiJARLocking="false" debug="1" reloadable="true" > > > path=""> > > > > <!-- GWT uses Tomcat 5.0.28 - use the 5.0 "style" for > > > defining resources --> > > > <!-- note that you ALSO have to add stuff like commons- > > > pool, commons-dbcp > > > and your JDBC driver to the GWTShell classpath > > > --> > > > > <Resource name="jdbc/ToopsterDB" auth="Container" > > > type="javax.sql.DataSource" /> > > > > <ResourceParams name="jdbc/dbsource"> > > > > <parameter> > > > <name>factory</name> > > > <value> > > > > org.apache.commons.dbcp.BasicDataSourceFactory > > > </value> > > > </parameter> > > > > <parameter> > > > <name>username</name> > > > <value>YOURDBUSERNAME</value> > > > </parameter> > > > <parameter> > > > <name>password</name> > > > <value>SECRET</value> > > > </parameter> > > > <parameter> > > > <name>driverClassName</name> > > > <value>org.postgresql.Driver</value> > > > </parameter> > > > <parameter> > > > <name>url</name> > > > <value>jdbc:postgresql://URL/DB</value> > > > </parameter> > > > > </ResourceParams> > > > </Context> > > > > Let me know if this is useful - it took us a while to get this right, > > > and we have used it in multiple deployed apps and it works well. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google Web Toolkit" 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/Google-Web-Toolkit?hl=en -~----------~----~----~----~------~----~------~--~---
