In this course, the main computer system for hands-on learning activities is workstation.
These activities also involve two others hosts, servera and serverb.
The system called bastion must always be running.
These two systems are in the lab.example.com DNS domain.
All student computer systems have a standard user account, student, which has student as the password.
The root password on all student systems is redhat.
Table 1. Classroom Machines
| Machine name | IP addresses | Role |
|---|---|---|
| workstation.lab.example.com | 172.25.250.9 | Graphical workstation that the student uses.Server to install JBoss EAP |
| bastion.lab.example.com | 172.25.250.254 | Router to link VMs to central course servers |
| classroom.lab.example.com | 172.25.252.254 | Server to host the required classroom materials for the course |
| utility.lab.example.com | 172.25.250.253 | Server to provide supporting services. |
| servera.lab.example.com | 172.25.250.10 | Server to install JBoss EAP |
| serverb.lab.example.com | 172.25.250.11 | Server to install JBoss EAP |
The bastion system acts as a router between the network that connects the student machines and the classroom network. If bastion is down, then other student machines might not function properly, or might even hang during boot.
There are two types of hands-on learning activities: the guided exercises at the end of each lecture, and the review exercises at the end of each chapter.
You can start the exercises in any order.
All exercises have an /opt/jboss-eap-7.4 directory for JBoss EAP binary files.
This directory always contains the admin user with redhat123 as the password to manage the JBoss EAP managed domains and standalone servers.
You copy the resources and configurations from that source to the exercise working directory.
The exercise working directory is /home/student/AD248/labs/ for all the guided exercises.
The review exercises use a managed domain distributed in the three machines: exercise-nameworkstation, servera, and serverb.
The exercise working directories for review exercises are /opt/domain and /opt/standalone in those three machines.
Both exercise types need to start each practice by using the lab start command.
That command ensures that you have a clean environment and all the needed resources for the exercise.
Only review exercises have a exercise-namelab grade command to grade your work.exercise-name
It is mandatory to run lab finish when you finish each exercise.exercise-name
In the review exercises, the lab finish command deletes the content of exercise-name/opt/domain and /opt/standalone.
Run lab finish from review exercises only when you have graded your exercise.
The content of exercise-name/home/student/AD248/labs/ is never deleted.exercise-name
If you stops the classroom before finishing an exercise that starts JBoss EAP manually, then you need to start again all JBoss EAP standalone instances or host controllers when the classroom reboots. All other components, such as containers, or modified files in all machines, are ready at classroom restart.
Most of the applications in use in the course are from the Red Hat JBoss Enterprise Application Platform (JBoss EAP) Quickstarts repository at https://github.com/jboss-developer/jboss-eap-quickstarts/tree/7.4.x.
Some of the quick start applications have modifications to better fit the exercise objectives.
Some other applications are specific developments for this course.
All applications include their source code inside the WAR or JAR files.
The following is the list of applications used in the course:
kitchensink.war
From https://github.com/jboss-developer/jboss-eap-quickstarts/tree/7.4.x/kitchensink.
The kitchensink quickstart demonstrates a Jakarta EE 8 web-enabled database application using JSF, CDI, EJB, JPA, and Bean Validation.
In the data sources chapter the application is modified to no drop the database, and to not use the embedded data source.
temperature-converter.war
From https://github.com/jboss-developer/jboss-eap-quickstarts/tree/7.4.x/temperature-converter.
The temperature-converter quickstart does temperature conversion using an EJB Stateless Session Bean (SLSB), CDI, and a JSF front-end client.
greeter.war
From https://github.com/jboss-developer/jboss-eap-quickstarts/tree/7.4.x/greeter.
The greeter quickstart demonstrates the use of CDI, JPA, JTA, EJB and JSF in JBoss EAP.
logtest.war
Red Hat Training simple web application to emit log by using a servlet.
The application reads the level and the message from the user input, and write it to the log from the com.redhat.training.view Java package.
cluster.war
Red Hat Training simple web application to inform about the numbers of visits from an HTTP session by using a Java Server Page (JSP).
The application reads the number of visits from an HTTP session attribute, and increments it.
The JSP also shows which JBoss EAP instance from the node is responding the request.
The application has the <distributable/> tag in its web.xml file to inform the application server that the application needs session replication between cluster members.
helloworld-mdb.war, mdb-client.war, and messaging-mdb-secure.jar
Messaging applications.
From https://github.com/jboss-developer/jboss-eap-quickstarts/tree/7.4.x/helloworld-mdb.
The mdb-client.war is the web interface also coming from the helloworld-mdb repository.
The messaging-mdb-secure.jar is a JMS client that access the same JMS Queue, but using admin/admin as credentials.