James Sumners avatar James Sumners committed cf7f5e8

Fleshed out the README to provide more helpful details

Comments (0)

Files changed (1)

+# Overview #
+
 This is a simple skeleton project for a Spring WebMVC web application. It uses Maven to build the project.
 
 The project is configured to allow definition of properties files that will be parsed during build but not added to the final WAR package.
 
 or
 
->mvn package -P production
+>mvn package -P production
+
+**Important:** [the JavaDocs](http://static.springsource.org/spring/docs/3.1.x/javadoc-api/) are going to be your best friend. The [PDF](http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/pdf/spring-framework-reference.pdf) (starting on page 437) will be of limited use.
+
+## Getting Started ##
+
+1. Clone the repository to start a new project: `hg clone https://bitbucket.org/jsumners/spring-webmvc-skeleton YourNewProject`.
+2. Edit the `pom.xml` and change the "groupId", "artifactId", and "version" properties as desired.
+3. Rename `<project_root>/src/main/resources/project.properties` to match your artifactId. E.G. if you changed artifactId to "SuperCoolProject" then the properties file should be "SuperCoolProject.properties".
+	A. If you plan on using unit/whatever tests then you should do the same for `<project_root>/src/test/resources/project.properties`
+4. Edit `<project_root>/src/main/webapp/WEB-INF/web.xml` and adjust the "<display-name>" and "<servlet-name>" elements to your liking.
+	A. Adjust the `web.xml` under `<project_root>/src/main/webapp` if you care about testing.
+5. Rename `<project_root>/src/main/webapp/WEB-INF/springmvc-skel-servlet.xml` to match the servlet name in your `web.xml`. E.G. if you changed the "<servlet-name>" element value to "super-cool" then you would rename "springmvc-skel-servlet.xml" to "super-cool-servlet.xml".
+	A. Again, deal with the testing directory if you care about it.
+
+### Default Package ###
+
+The default project builds one controller that maps to `http://example.com/helloWorld` (where example.com is localhost or anything else). This controller is in the `com.example.MyWebApplication` package. As a result, `<project_root>/src/main/webapp/WEB-INF/springmvc-skel-servlet.xml` is set to scan `com.example.MyWebApplication` for annotated controllers. You should change this setting to match your project.
+
+### Default Views Location ###
+
+The default project maps views to `/WEB-INF/jsp/` with a suffix of `.jsp`. You should adjust `<project_root>/src/main/webapp/WEB-INF/springmvc-skel-servlet.xml` to suit your preferences.
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.