What's the easiest way to do this? Do we need to just create a regular war Ant task ourselves, or is there some easier way, with Netbeans? I have the usual /dist folder containing all the files needed (jnlp, jar, html, etc), but I don't want to have to copy those files over separately, and preferably they'd be zipped up into a war automatically.
Related
I am developing a Java application with Eclipse and under Apache Tomcat.
when I load an image it puts it in this directory : C:\wamp\www.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\myproject\.
If I want to display the image I should refresh the directory (images) in Eclipse.
Does that happen only when I use Eclipse? And if I deploy the project, will the image be loaded always in this folder or in any folder?
When you create a Tomcat project with Eclipse, you have a special folder where you can copy your web resources to, e.g. images, CSS files, and the like.
When you deploy your web application, Eclipse will package it correctly to make sure the images and CSS get copied over.
Make sure you use relative paths, not absolute paths. Also I would recommend you write a maven script or ant script to handle packaging and deployment instead of using Eclipse. It is cleaner and you understand better how things work.
I have a number for Word Docs and PDFs that need to be copied to a file storage on start of my Grails app.
I figured I can just leverage BootStrap.groovy to check for existing files then copy if none found. However, I don't know the best practice of including the files into the WAR file.
How can I copy these files?
I don't know if it is a best practice, however we have all our external files into web-app directory. i.e. We have directories reports and pdf besides css and images directories. All that files are package and deploy into war file.
I am using Glassfish 3.1.2 with Dojo 1.7 and would like to shorten the build process, it's taking quite a while for maven to copy the dojo js files each build. I could use the CDN version dojo but I would like to be able to debug when offline. Is there a way to tell Glassfish to use the pre-zipped dojo source file? Just to be clear, I don't want Glassfish to zip the files for me.
Can you place the desired resources in an independent WAR file, and deploy separately? You'll have a context path to the resources (diff URL) that is dependent on the new WAR file, but you'll be able to deploy it once.
If that's not satisfactory, you could alternatively write a small servlet (packaged in your normal app) to expose resources that you locate (*.getClass().getResourceStream()) from a jar file you've placed in glassfishv3/glassfish/domains/domain1/lib. This is trivial to do via a restful-ws, also some libraries (primefaces) facilitate exposing resources.
Experts
When we redeploy any application from an IDE such as MYEclipse , it just redeploys the .class files. I want to customize the eclipse developer, so the deployer can also deploy the custom files (other than class files).
Should i write any custom ANT script for Myeclipse or any custom settings the My Eclipse provides us ?
IDEs along the classes and libraries usually deploy everything they find in the web / www-root folder (in the folder that contains the WEB-INF and META-INF).
So you can configure your deployed applications structure using the IDE by structuring the content of that folder.
If it still doesn't fit your needs, then ANT would be the best option.
In my opinion ANT is always the best option, but using the development environment's functionality is proven faster then writing an ant build file.
Say, if you're developing a web service, a web application consuming that service, and a library that both the service and the webapp uses, then with a single (and not even long or difficult) ant file you can build them, create the aar, war and jar files and deploy them all in their correct places, eg. under axis, inside the global lib folder, and in the webapps folder.
All these in one step.
After a build of a java applet I would like to copy a file, or files from $PROJECT_DIR\data into the build directory. Can I do this easily somehow by marking the files in some way, or must I write an ant copy statement?
Ant build.xml is the way to go, IMO.