views:

727

answers:

2

Recently we migrated from using ant to maven. Within Netbeans, I used to edit and save html, xhtml, javascript, css files in the WAR and almost immediately the changes were available on the server.

Now, when I edit and save those types of files in the WAR, nothing happens. I have to right click my EAR -> Build with dependencies -> Run to make the changes available. This process takes ages.

I've found a few similar questions, but am still confused.

EDIT: I just wiped my development environment and setup from scratch again. Then I duplicated the setup on a co-worker's machine (him on Windows, me on Ubuntu). With the same setup process, less different OSs, he can edit/save xhtml files and see the changes without additional steps!

+1  A: 

Not really a good idea... but I may have done it for rapid development as well. Shh! Use maven's exec plugin to do it. From my pom:

<plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <version>1.1</version>
            <executions>
                <execution>
                    <phase>integration-test</phase>
                    <goals>
                        <goal>exec</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <executable>asadmin</executable>
                <arguments>
                    <argument>deploy</argument>
                    <argument>${project.build.directory}/${project.build.finalName}</argument>
                </arguments>
            </configuration>
        </plugin>

EDIT: Assuming asadmin (which is a glassfish command) can be found.

Quotidian
A: 

Works on my machine running Ubuntu 9.10 with NetBeans 6.7.1, GlassFish v3 and a regular maven WAR project: when I update a xhtml document, a JSP, a Servlet, an EJB, whatever, changes get hot deployed to the server.

Nothing particular to mention about my server configuration as shown below.

alt text

I wanted to ask you to show your POM but if things work for a coworker, it seems useless.

Pascal Thivent