...
Scrollbar |
---|
As much as I we would like to dive right into Tapestry right nowthe code, we must first talk about set up your development environment. The joy and the pain of Java development is the volume of choice available. There's just a bewildering number of JDKs, IDEs and other TLAs (Three Letter Acronyms) out there.Let's talk about a stack of tools, all open source and freely available, that you'll need to setup. Likely you have some of these, or some version of thesereasonable alternatives, already on your development machine.
JDK 1.
...
8 or Newer
Tapestry 5 makes use of features of JDK 1.5. This includes Java Annotations, and a little bit of Java Generics. JDK 1.6 works fine too.
Eclipse Helios (3.6.1 or Newer)
Since we're emphasizing a free and open source stack, we'll concentrate on the best free IDE.
...
This tutorial uses the latest released version of Tapestry, which requires Java Development Kit (JDK) version 1.8 or newer. (But see Supported Environments and Versions if you want to use an older version of JDK or Tapestry.)
Eclipse IDE
For this tutorial we'll assume you're using Eclipse as your Integrated Development Environment (IDE). Eclipse is a popular IDE, but feel free to adapt these instructions to
...
IntelliJ, NetBeans, or any other.
Eclipse comes in various flavors, and includes a reasonable XML editor built-in. It can be downloaded from the eclipse.org web site. I use the We recommend the latest version of Eclipse IDE for Java Developers .
Jetty
Jetty is an open source servlet container created by Greg Wilkins of Webtide (which offers commercial support for Jetty). Jetty is high performance and designed for easy embedding in other software.
RunJettyRun Eclipse Plugin
RunJettyRun is a very simple Eclipse plugin that bundles a version of Jetty (Jetty 6 at this writing) so that you can create Eclipse launches that start Jetty to execute your web application.
You can install RunJettyRun using Eclipse's Install New Software... menu item; the update URL is http://run-jetty-run.googlecode.com/svn/trunk/updatesite.
This tutorial was written with RunJettyRun version 1.1.1.
...
(but anything from version 3.7 onward should work fine).
Apache Maven 3
Maven is a software build tool of rather epic ambitions. It has a very sophisticated plugin system that allows it to do virtually anything, though compiling Java code, building WAR and JAR files, and creating reports and web sites are its forte.Perhaps the biggest advantage of Maven over, say, Ant, is that it can with the ability to automatically download project dependencies (such as the Tapestry JAR files, and the JAR files that Tapestry itself depends on) automatically for you, from one of several central repositories.
Maven is not essential for using Tapestry, but is especially helpful when performing the initial setup set-up of a Tapestry application. Feel free to substitute Gradle or Ivy if you prefer.
Maven 2.2.1 is available Eclipse comes with a Maven plugin, M2Eclipse (also known as m2e) with an embedded version of Maven. We'll use that here for simplicity's sake. Alternatively, you could install Maven from http://maven.apache.org/download.html and use it from the command line ("mvn").
Note |
---|
Maven 3.0 is now available but we have not tested the tutorial against it. |
There are plugins available for Eclipse, but we will not be using those here; instead, we'll use Maven to generate Eclipse control files for us.
Tapestry 5.2.4
You should not have to download this directly; as we'll see, Maven should take care of downloading Tapestry, and its dependencies, as needed.
Jetty
For simplicity, this tutorial uses Jetty, a lightweight open source web server and servlet container available from the Eclipse Foundation. Of course, you could use pretty much any other Java servlet container (Tomcat, Glassfish, JBoss, etc), but the instructions that follow assume Jetty.
We will use Maven to download and run Jetty automatically, so you will NOT have to download it for this tutorial. (Alternatively, you could download and install the RunJettyRun Eclipse plugin from the Eclipse Marketplace.)
Tapestry
Tapestry is available as a set of JAR files, but you will not have to download them yourself. As with Jetty, Maven will take care of downloading Tapestry and its dependencies.
Next: Creating The Skeleton Application
...
Scrollbar |
---|