@Andreas: Forgot to mention that if you're *not* using Eclipse for Java
EE, when you make changes to server-side code, you will also need to restart
GWT embedded Jetty instance.  For GWT 2.0+, click the Restart Server button
in the Development Mode view, or for older versions of GWT, the Reload
Server button on the Hosted Mode shell toolbar.

Keith

On Mon, Mar 15, 2010 at 2:27 PM, Keith Platfoot <kplatf...@google.com>wrote:

> Hi Andreas,
>
> It looks like you're following the correct procedure, and you indicated
> that you were able to load the application in devmode, but you're not seeing
> code changes reflected when you Refresh the browser.  It might help if I
> explain briefly how changes are *supposed* to be reflected, and suggest a
> few ideas for things to check if refresh is not working:
>
> - Client-side code changes should *always* be reflected when you click
> Refresh in your browser during a devmode session, regardless of your source
> folders' build output paths.  This is because GWT devmode is actually using
> your .java source files, not the compiled .class files.  Double-check in
> your launch configuration's Classpath tab that your source folders appear at
> the top of the User Entries section.  If your gwt:run goal *does*correctly 
> reflect code changes in devmode when you Refresh, it would be
> useful to compare the devmode process arguments in that case to the devmode
> process created by the Eclipse launch configuration (you can find the
> arguments in Eclipse by right-click > Properties the "java" process in the
> stacktrace view in the Debug perspective).  Let me know if there are
> differences between the two sets of arguments.
>
> - Server-side code changes will only be reflected if the compiled .class
> files are propagated to your runtime WAR directory's WEB-INF/classes
> directory.  As you mentioned, one way to do this is to set your source
> folders' build output paths to your runtime WAR directory's WEB-INF/classes
> directory.  Of course, Eclipse must also be configured to build
> automatically (Project > Build Automatically).  If server-side code refresh
> is still not working, you might try making a change, and then manually
> verifying that the runtime WAR directory is getting the new .class file in
> WEB-INF/classes.
>
> - Changes to your HTML/CSS/other static resources will need to be mirrored
> in your runtime WAR directory (similar to server-side code changes).  I'm
> not aware of any out-of-the-box solution for this if you're using a standard
> Eclipse distribution (Eclipse Classic or Eclipse for Java developers).
>  You'll need to stop devmode, do another 'mvn clean package', and then
> launch devmode again.  However, if you're using Eclipse for Java EE, there
> is a way to configure it to automatically push WAR resource changes while
> devmode is running (this should answer your question in your #3 step).
>
> Basically, you start by converting your project into a Dynamic Web Project.
>  I don't know if you can automatically  migrate an existing project, but it
> should be possible to create a new Dynamic Web Project and then simply
> import your original project's source folders and build path entries.  Next,
> you'll need to configure the Eclipse project to use 'src/main/webapp' as
> your WAR directory instead of 'WebContent' (Eclipse default).  Close Eclipse
> and edit the file at: <project
> root>/.settings/org.eclipse.wst.common.component.  Find the <wb-resource>
> element with a 'source-path' attribute of '/WebContent'.  Change the
> attribute value to '/src/main/webapp', save the file, and re-open Eclipse.
>  Now, when you start the project's configured server (Tomcat, Jetty, etc...
> define a server in the Servers view), Eclipse will automatically propagate
> changes in your source code and static resource files to your runtime WAR
> directory.  However, in Eclipse for Java EE, this runtime WAR directory will
> *not* be 'target/<exploded WAR>'.  Eclipse will instead create a staging
> directory in a temporary location (by default,
> <workspace>/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/<project>)
> and *this* is the WAR directory you'll need to select when launching the
> Web Application launch configuration.  One more note: Eclipse for Java EE
> will also automatically push your updated .class files into
> <WAR>/WEB-INF/classes, so no need to manually change your source folders'
> build output paths.
>
> Does that all make sense?  At launch, we'll be adding a couple new FAQ
> entries to our documentation to explain the process of using the Google
> plugin with Maven, with Eclipse for Java EE, and with both at once.
>  Hopefully my instructions here will suffice in the meanwhile.  Let me know
> if you need any further explanation or assistance.
>
> Keith
>
> On Sun, Mar 14, 2010 at 2:03 PM, andreas 
> <horst.andrea...@googlemail.com>wrote:
>
>> Hey Keith,
>>
>> thanks for this detailed information. I just went through and followed
>> them step by step.
>>
>> I started by creating a new maven project using gwt-maven archetype. I
>> changed its pom.xml to use current versions of GWT 2.0.3 and Java 6.
>> Then I enabled the GEP.
>>
>> 1. Set the war directoy as you said. When I first tried, I forgot to
>> uncheck the "launch" checkbox but did it this time.
>>
>> 2. Did not have to delete old launch configurations since this is a
>> new project. Created one by launching it via "Run As.." -> "Web
>> Application" from GEP
>>
>> 3. I use Eclipse EE. On that first launch, I pointed the runtime WAR
>> directory to the folder under "target" you mentioned. One thing I did
>> not clearly understand: you said "unless you're also using Eclipse
>> EE..."; well I do so where else should or could the runtime WAR
>> directory point to? I also did a 'mvn clean package'.
>>
>> 4. Yes, yes and yes. The web application is displayed in the browser
>> as expected.
>>
>> 5. Programm args:
>> -remoteUI ${gwt_remote_ui_server_port}:${unique_id} -startupUrl
>> index.html -logLevel INFO -port 8888 -war /home/ahorst/workspace/
>> GWTEntryApp/target/GWTEntryApp-0.0.1-SNAPSHOT
>> de.se.proced.GWTEntryApp.Application
>>
>> VM args:
>> -Xmx512m
>>
>> Working directory:
>> /GWTEntryApp/target/GWTEntryApp-0.0.1-SNAPSHOT
>>
>> So far it all worked. Unfortunately the "refresh" code changes does
>> not work. I set output folders of src/main/java and src/main/resources
>> to the WEB-INF/classes inside the working directory. Did this through
>> the build path configuration.
>>
>> Code changes are not reflected upon refresh; neither in the browser
>> (F5) or by restarting the server in the Development view.
>>
>> Nevertheless when I launch the gwt:run goal, it works.
>>
>> Could it be a gwt-maven property that stops "refresh" code changes?
>> Besides the GWT and Java version I did not change anything. I guess I
>> have to stick to the gwt-maven docs to find out if the exploded WAR is
>> not set properly.
>>
>> On 12 Mrz., 18:15, Keith Platfoot <kplatf...@google.com> wrote:
>> > Hi Andreas,
>> >
>> > Hm, not sure why you're seeing that error.  Let me ask a few questions
>> to
>> > see if we can get to the bottom of this.
>> >
>> > 1. You set the WAR directory to 'src/main/webapp' via the Google > Web
>> > Application project properties page, right?  Did you also uncheck the
>> box
>> > below that says 'Launch and deploy from this directory'?  This is
>> necessary
>> > because the 'src/main/webapp' directory is not a complete WAR directory
>> > (WEB-INF/lib and WEB-INF/classes are empty, etc.).
>> >
>> > 2. Are you launching the project using the regular Run/Debug As > Web
>> > Application shortcut?  Did you make sure to first delete any other Web
>> > Application launch configurations associated with the project?
>> >
>> > 3. When you launch, you should be prompted to select the runtime WAR
>> > directory.  Unless you're also using Eclipse for Java EE, you'll
>> probably
>> > want to first do a 'mvn clean package' and then select the exploded WAR
>> in
>> > '/target/<AppName>-<version>' as your runtime WAR.
>> >
>> > 4. When you launch, are you seeing the Development Mode view appear at
>> the
>> > bottom of your workspace, with a URL to open in your browser?  Does the
>> URL
>> > have a ?gwt.codesvr=x.x.x.x:9997 at the end?  Does your web browser have
>> the
>> > GWT Development Mode plugin installed? (the browser should load a page
>> to
>> > prompt you if it's not installed).
>> >
>> > 5. After you launch, what are the arguments in the generated launch
>> > configuration?  One of the features of 1.3 is the ability to
>> inspect/tweak
>> > the arguments via the regular Arguments tab in the launch configuration
>> > dialog.  Let me know what your exact argument set is.
>> >
>> > Also: to see code changes reflected when you hit refresh, you'll need to
>> get
>> > the class files into your runtime WAR directory.  One simple way to do
>> this
>> > is by changing your build output path (probably just for src/main/java
>> and
>> > src/main/resources) to the WEB-INF/classes directory in your runtime
>> WAR.
>> >  This works, but it is a bit hacky.
>> >
>> > Alternatively, you can convert your project into a Dynamic Web Project
>> in
>> > Eclipse for Java EE, which provides automatic refresh-on-change behavior
>> out
>> > of the box.  It also creates a staging WAR directory by default so you
>> don't
>> > have to use the exploded WAR under /target.  If you're interested in
>> this
>> > approach, I can send you detailed instructions (which will also appear
>> in
>> > our FAQs after 1.3 launch).
>> >
>> > Keith
>> >
>> > On Fri, Mar 12, 2010 at 8:19 AM, andreas <
>> horst.andrea...@googlemail.com>wrote:
>> >
>> > > Hi Keith,
>> >
>> > > we are happy to test the preview version.
>> >
>> > > We are using Maven and the gwt-maven-project layout for our projects.
>> > > We loved the dependency management and also clear code structure
>> > > coming along with Maven but ran in the same problem mentioned a lot
>> > > before: we could not get Google Eclipse Plugin run with our projects.
>> >
>> > > The first workaround was to use the gwt:run goal, which actually works
>> > > fine and forget about GEP.
>> >
>> > > Now I still wanted to find out if we can use that nice web application
>> > > run configuration of GEP again with the preview release. So I
>> > > installed it and set the "war/" folder to "src/main/webapp" and tried
>> > > to run our project as a web application.
>> >
>> > > It did not work and we got the error "project may need to be
>> > > (re)compiled". I figured out that the launch configuration was missing
>> > > all the generated js-files. When they are located in "src/main/webapp"
>> > > it launches the web application, but apparently using the generated
>> js-
>> > > files. No changes to the java code are reflected upon refresh.
>> >
>> > > Am I missing something in the setup process of the GEP preview
>> > > version?
>> >
>> > > On 4 Mrz., 01:25, Keith Platfoot <kplatf...@google.com> wrote:
>> > > > Hi everyone,
>> >
>> > > > Last month, I announced some of the changes we had planned for the
>> 1.3
>> > > > version of the Google Plugin for Eclipse. To recap, this release is
>> > > focused
>> > > > on making life easier for developers using GWT/App Engine alongside
>> > > > third-party tools, including Maven and Eclipse for Java EE. In my
>> post, I
>> > > > promised we'd let you download a preview of 1.3 to get some hands-on
>> > > testing
>> > > > of the new features and provide us with your feedback before the
>> official
>> > > > release.
>> >
>> > > > I'm happy to announce that the time has come. An early preview of
>> 1.3 is
>> > > now
>> > > > available for download at the following URLs:
>> >
>> > > >
>> http://dl.google.com/eclipse/plugin/3.5/zips/com.google.gdt.eclipse.s...
>> >
>> > > >
>> http://dl.google.com/eclipse/plugin/3.4/zips/com.google.gdt.eclipse.s...
>> >
>> > > >
>> http://dl.google.com/eclipse/plugin/3.3/zips/com.google.gdt.eclipse.s...
>> >
>> > > > Note: Ensure that your version of Eclipse has Eclipse's Web Standard
>> > > Tools
>> > > > (WST) installed before installing the plugin. WST can be installed
>> by
>> > > > navigating to the Software Installation section, and selecting the
>> the
>> > > > appropriate WST feature from the update site for your version of
>> Eclipse.
>> > > > The update sites and feature names are provided below:
>> >
>> > > >    - 3.5 (Galileo): Galileo > Web, XML, and Java EE Development >
>> Eclipse
>> > > >    Web Developer Tools
>> > > >    - 3.4 (Ganymede): Ganymede Update Site > Web and Java EE
>> Development >
>> > > >    Web Developer Tools
>> > > >    - 3.3 (Europa): Europa Discovery Site > Web and JEE Development >
>> Web
>> > > >    Standard Tools Project
>> >
>> > > > This is a preview build, so the usual caveats and warnings apply: it
>> is
>> > > not
>> > > > officially supported, and we recommend using a clean installation of
>> > > Eclipse
>> > > > and a new workspace. Also, we're distributing this preview as a zip
>> file
>> > > so
>> > > > be sure to follow the instructions on our Installing the Google
>> Plugin
>> > > for
>> > > > Eclipse from zip files page (
>> > >http://code.google.com/eclipse/docs/install-from-zip.html).
>> >
>> > > > *Known Issues*
>> >
>> > > >    - If you change launch configuration settings in the Server or
>> GWT
>> > > tab,
>> > > >    you'll need to switch to the Arguments tab before clicking Apply
>> or
>> > > >    Run/Debug.  This will be fixed in the final release.
>> >
>> > > > That being said, we are very interested in your experience with this
>> new
>> > > > release, which we hope will allow the Google plugin to interoperate
>> much
>> > > > better with alternative project structures and third-party tools.
>> The
>> > > > tentative 1.3 release notes are as follows:
>> >
>> > > > Enhancements
>> >
>> > > >    - Configurable WAR directory to allow better integration with
>> Eclipse
>> > > for
>> > > >    Java EE <http://www.eclipse.org/downloads/moreinfo/jee.php> and
>> > > projects
>> > > >    built with Maven <http://maven.apache.org/>
>> > > >    - Web Application launch configurations now display and allow
>> editing
>> > > of
>> > > >    generated Program and VM arguments
>> > > >    - Errors/Warnings preference page for customizing the severity of
>> any
>> > > >    generated problem marker
>> > > >    - Projects can reference GWT/App Engine SDKs directly via JARs
>> instead
>> > > of
>> > > >    through SDK library
>> > > >    - GWT+App Engine projects automatically configured for optimal
>> caching
>> >
>> > > > Fixes
>> >
>> > > >    - GWT Issue 3583<
>> > >http://code.google.com/p/google-web-toolkit/issues/detail?id=3583>:
>> > > >    Google Eclipse Plugin configuration is too strict
>> > > >    - GWT Issue 3592<
>> > >http://code.google.com/p/google-web-toolkit/issues/detail?id=3592>:
>> > > >    Eclipse plugin to add 'cache forever' configuration for new 'GWT
>> + App
>> > > >    Engine' projects
>> > > >    - GWT Issue 3902<
>> > >http://code.google.com/p/google-web-toolkit/issues/detail?id=3902>:
>> > > >    Allow users to configure the severity of problems reported by the
>> > > eclipse
>> > > >    plugin
>> > > >    - App Engine Issue
>> > > > 1515<http://code.google.com/p/googleappengine/issues/detail?id=1515
>> >:
>> > > >    Eclipse plugin requires fixed location for war directory
>> > > >    - App Engine Issue
>> > > > 2115<http://code.google.com/p/googleappengine/issues/detail?id=2115
>> >:
>> > > >    Using the @PersistenceAware annotation puts the Eclipse Enhancer
>> in an
>> > > >    Infinite Loop
>> > > >    - App Engine Issue
>> > > > 1941<http://code.google.com/p/googleappengine/issues/detail?id=1941
>> >:
>> > > >    Plugin fails to enhance dependent classes on source level changes
>> >
>> > > > For a complete list of fixed issues, see the GWT issue
>> > > > tracker<
>> > >
>> http://code.google.com/p/google-web-toolkit/issues/list?can=1&q=label...>
>> > > >  and App Engine issue
>> > > > tracker<
>> > >
>> http://code.google.com/p/googleappengine/issues/list?can=1&q=label:GP...>
>> > > > .
>> >
>> > > > We encourage all interested developers to take the preview build for
>> a
>> > > spin,
>> > > > and let us know what you think. We'll do everything possible to
>> > > incorporate
>> > > > your feedback before the final release, slated for later this month.
>> > > Thanks!
>> >
>> > > > Keith, on behalf of the Google Plugin for Eclipse team
>> >
>> > > --
>> > > You received this message because you are subscribed to the Google
>> Groups
>> > > "Google Web Toolkit" group.
>> > > To post to this group, send email to
>> google-web-tool...@googlegroups.com.
>> > > To unsubscribe from this group, send email to
>> > > google-web-toolkit+unsubscr...@googlegroups.com<google-web-toolkit%2bunsubscr...@googlegroups.com>
>> <google-web-toolkit%2bunsubscr...@googlegroups.com<google-web-toolkit%252bunsubscr...@googlegroups.com>
>> >
>> > > .
>> > > For more options, visit this group at
>> > >http://groups.google.com/group/google-web-toolkit?hl=en.
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Google Web Toolkit" group.
>> To post to this group, send email to google-web-tool...@googlegroups.com.
>> To unsubscribe from this group, send email to
>> google-web-toolkit+unsubscr...@googlegroups.com<google-web-toolkit%2bunsubscr...@googlegroups.com>
>> .
>> For more options, visit this group at
>> http://groups.google.com/group/google-web-toolkit?hl=en.
>>
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to google-web-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to