-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Chris,
On 2/26/2016 12:36 PM, Christopher Schultz wrote: > To whom it may concern, > > On 2/26/16 2:07 PM, gmc filter wrote: >> Chris, I am specifically trying to avoid rebuilding the project >> each time I make small changes in jsp/html/whatever files, if >> that is what you are suggesting. Now that you mention this, I >> doubt any maven plugin can achieve what I'm trying to do either. > > This is one of my big problems with Maven: it doesn't seem to > really be geared towards /development/. I'm sure it's great for > end-to-end builds, but for a simple "update my local deployment > with that 2-character change I just did" doesn't seem to be on the > menu. > >> That did give me an idea though. I suppose I could write a >> script which simply overwrites the deployed file with a copy from >> my workspace... I would have to run this script each time I want >> to review my changes, which is disappointing, but I guess it will >> work for now. > > For me, ant is integrated into my IDE. When I want to publish > changes to my locally-running dev environment, I just click a > button and it's done in a few ms. Tomcat reloads the resource and > I'm good to go. > > -chris > >> On Fri, Feb 26, 2016 at 12:38 PM, Christopher Schultz < >> ch...@christopherschultz.net> wrote: > >>> To whom it may concern, >>> >>> On 2/26/16 11:53 AM, gmc filter wrote: >>>> I am currently using Maven to build my project and compile >>>> it into a WAR file. >>>> >>>> Does Maven have some plugin that can help me achieve what I >>>> am trying to >>> do? >>> >>> If Maven doesn't know how to copy one file from one place to >>> another, I'm still comfortable with my decision to completely >>> ignore its existence as a build tool. >>> >>> With ant, it's as simple as (paraphrasing): >>> >>> <copy toDir="${deploy.dir}"> <fileset dir="${jsp.source.dir}" >>> includes="**/*.jsp" /> </copy> >>> >>> -chris >>> >>>> On Fri, Feb 26, 2016 at 10:34 AM, Christopher Schultz < >>>> ch...@christopherschultz.net> wrote: >>>> >>>>> To whom it may concern, >>>>> >>>>> On 2/25/16 4:08 PM, gmc filter wrote: >>>>>> Hi all, I'm having some trouble with tomcat and symbolic >>>>>> links. I am working >>> with >>>>>> OSX and I use a local instance of Tomcat to do some >>>>>> testing before deploying my site elsewhere. >>>>>> >>>>>> What I want to do: I'd like to create a small script >>>>>> which will stop tomcat, clear out old deployment folders, >>>>>> rebuild my project, copy the resulting WAR file to the >>>>>> webapps folder, restart tomcat, wait for deployment to >>>>>> finish, and finally replace a JSP file with a symbolic >>> link >>>>>> to the corresponding file that is in my workspace. >>>>>> >>>>>> Why I want to do this: I'd like to be able to quickly >>>>>> rebuild and >>>>> redeploy >>>>>> my WAR and also edit my JSP files and see those changes >>>>>> by simply refreshing the already-open page. >>>>>> >>>>>> My problem: I have all of the above steps working so >>>>>> far. However, as >>>>> soon >>>>>> as I swap out the real index.JSP with a link to the one >>>>>> in my >>> workspace, >>>>> I >>>>>> can no longer load the page, I get a 404 error instead. >>>>>> >>>>>> What I have tried: I have found questions like mine >>>>>> asked many times >>> and >>>>>> usually the solution is to hunt down a "context.xml" >>>>>> file and add a tag into that file, 'allowLinking="true"'. >>>>>> I have tried to add this tag >>> into >>>>>> "<tomcat home>/libexec/conf/context.xml", "<tomcat >>>>>> home>/libexec/conf/Catalina/localhost/context.xml" >>>>>> (created this one) >>> and >>>>>> also "<tomcat >>>>>> home>/libexec/webapps/appname/META-INF/context.xml". >>> After >>>>>> multiple restarts, none of those seem to change any >>>>>> functionality that >>> I >>>>>> can see. >>>>>> >>>>>> By trial and error, I have eventually found that if I >>>>>> follow these >>>>> steps, I >>>>>> can get the link to work for a little while... Deploy >>>>>> the WAR Load the page (It works) Move index_bs.jsp to >>>>>> index_bs.jsp.bak (in the webapp directory) Load the page >>>>>> (404, as expected) Create a symbolic link from >>>>>> index_bs.jsp to index_bs.jsp.bak Load the page (It >>>>>> works!) Edit index_bs.jsp.bak, save Load the page (404 >>>>>> again) >>>>>> >>>>>> This seems very strange to me. Obviously I've reached a >>>>>> point where symbolic linking works somewhat, but as soon >>>>>> as I edit the original >>> file >>>>>> (my main goal here) the link stops working as expected. >>>>>> Does anyone >>> know >>>>>> what I'm doing wrong here? I must be missing >>>>>> something... >>>>>> >>>>>> >>>>>> Some information about my setup: OSX 10.10.5 Tomcat >>>>>> 8.0.28 installed with my username running brew brew to >>>>>> "/usr/local/Cellar/tomcat/8.0.28/" >>>>>> >>>>> >>> "/usr/local/Cellar/tomcat/8.0.28/libexec/webapps/hue-web-1.0-SNAPSHO T > >>> .war" >>>>>> >>> > deployed successfully to >>>>>> "/usr/local/Cellar/tomcat/8.0.28/libexec/webapps/hue-web-1.0-SNAP S > >>>>>> HOT/" >>>>>> >>>>>> > Target file is >>>>>> "/Users/uid/mygithub/hue-stuff/hue-web/src/main/webapp/index_bs.j s > >>>>>> p" >>>>> >>>>> >>>>>> > If you need an IDE-independent build process (which I highly > recommend), >>>>> consider something like Apache ant (similar to UNIX "make" >>>>> but way better for the Java world) or even Maven, if you >>>>> don't mind the >>> overhead. >>>>> >>>>> Using symlinks with Tomcat is sometimes problematic, though >>>>> I can't explain why it's actually failing for your >>>>> specific case... I would have expected that to work. >>>>> >>>>> -chris >>>>> I use Maven exclusively (migrated from Ant about 2 years ago). I've never had the update problem with NetBeans and a NetBeans-controlled Tomcat. For Eclipse, I think there used to be issues. I run Mars.1 (just to make sure that my pom.xml changes play nicely with Eclipe), and just tried a small project. Changes to index.jsp are reflected after a browser refresh. Changes to CSS are reflected after a browser refresh. My Eclipse setup for Tomcat uses the defaults, so if you take over a locally installed Tomcat (rather than running out of workspace/.metadata), your mileage may vary. For NetBeans, I have compile-on-save turned on. This means that when I save a Java file, only that file gets recompiled and added to target/artifactId/WEB-INF/classes. Tomcat detects this and reloads the web application automatically. I don't know if this happens in Eclipse or not. I suppose that I could test. If you need / want incremental builds with Maven, you should check out the Takari Maven Lifecycle plugin (https://github.com/takari/takari-lifecycle). I haven't yet, but there are lots of features that look promising (including incremental builds for resource changes). . . . . just my two cents /mde/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJW0MBaAAoJEEFGbsYNeTwtOQAIAIwNlMcY12Fbe6DabVkmRM1K j9gHKU2e12T6P8lHzsKckkVZLyIRiSXA9tn0p94bEtqyMI2rvqhy6yk5hoetDv3t Rk493xQ5Qqb1dd7LyZ6tjojPwkwCDQZPObBIGqOnhlX4Gfd27YvzduWgluhzUUAH 9TM4E1OQ2ur0irgT5FsR3ufViz/H5AC+0BTrVeKqMn1vNoe9ZAdb0jG2jF11HXY9 9JZAmNwVANznjOlMYRDExIGrMRm4zre622z5oLIEKAghp1wZXCkTkVeGmT7lSxzG xeYJWmreF/+q/WTdBlBW5jqWfiyYDTNGthVrAJAifdszUYXrVBqjh5TuOREVMzU= =o1ZZ -----END PGP SIGNATURE----- --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org