Author: Marius Bogoevici
Level: Beginner
Technologies: Spring MVC, JSP, JPA
Summary: The spring-greeter
quickstart is based on the greeter
quickstart, but differs in that it uses Spring MVC for Mapping GET and POST requests.
Target Product: WildFly
Source: https://github.com/wildfly/quickstart/
The application this project produces is designed to be run on WildFly Application Server 11 or later.
The spring-greeter
quickstart is based on the greeter
quickstart, but differs in that it uses Spring MVC for Mapping GET and POST requests:
<mvc:annotation-driven\>
configured in src/main/webapp/WEB-INF/spring-mvc-context.xml
tells Spring to look for @RequestMapping
in our controllers.CreateController.java
and GreetController
Spring's XML configurations are used to get hold of the database and entity manager (via jndi) to perform transactional operations:
<tx:jta-transaction-manager/>
and <tx:annotation-driven/>
are configured in /src/main/webapp/WEB-INF/spring-business-context.xml
@Transactional
, which Spring, using aspect oriented programming, surrounds with boilerplate code to make the methods transactionalWhen you deploy this example, two users are automatically created for you: emuster and jdoe. This data is located in the src/main/resources/init-db.sql
file.
To test this example:
The application this project produces is designed to be run on WildFly Application Server 11 or later.
All you need to build this project is Java 8.0 (Java SDK 1.8) or later and Maven 3.3.1 or later. See Configure Maven for WildFly 11 to make sure you are configured correctly for testing the quickstarts.
For Linux: bin/standalone.sh
For Windows: bin\standalone.bat
This will deploy target/spring-greeter.war to the running instance of the server.
If you do not have maven configured you can manually copy target/spring-greeter.war to WILDFLY_HOME/standalone/deployments.
The application will be running at the following URL: http://localhost:8080/spring-greeter/
mvn wildfly:undeploy
Or you can manually remove the application by removing spring-greeter.war from WILDFLY_HOME/standalone/deployments
This quickstart provides Arquillian functional tests as well. They are located in the functional-tests/ subdirectory under the root directory of this quickstart. Functional tests verify that your application behaves correctly from the user's point of view. The tests open a browser instance, simulate clicking around the page as a normal user would do, and then close the browser instance.
To run these tests, you must build the main project as described above.
mvn clean package
Navigate to the functional-tests/ directory in this quickstart.
mvn clean verify -Parq-remote
If you prefer to run the functional tests using managed instance of the WildFly server, meaning the tests will start the server for you, type the following command:
mvn clean verify -Parq-managed
You can also start the server and deploy the quickstarts or run the Arquillian tests from Eclipse using JBoss tools. For general information about how to import a quickstart, add a WildFly server, and build and deploy a quickstart, see Use JBoss Developer Studio or Eclipse to Run the Quickstarts.
If you want to debug the source code or look at the Javadocs of any library in the project, run either of the following commands to pull them into your local repository. The IDE should then detect them.
mvn dependency:sources
mvn dependency:resolve -Dclassifier=javadoc