Description

Introduction

The NovaTec inspectIT DVD Store Application is a simple webshop applicationthat is used to demonstrate and test inspectIT.

It is based on JavaEE 6, JBoss 5.1, Seam and a H2 database.

Download

The dvdstore can be downloaded from the FTP server. The latest versions can be found here.

Starting the application

The easiest way to start the DVD Store without inspectIT is to execute the following start scripts:

  1. startH2.sh
  2. startJBoss.sh
  3. open the dvdstore application (Internet Shortcut "NovaTec inspectIT DVD Store Demo", it open an browser with the URL "http://localhost:8080/dvdstore/home")

If you want to start the application with inspectIT you have to execute the following steps:

  1. Start the CMR by executing the "startup.sh" found in the "inspectit/<operating system>/<platform>/CMR"-folder
  2. start the inspectIT GUI in the "inspectIT/<operating system>/<platform>/inspectIT/" folder
    1. If this is the first execution of the demo a valid inspectIT license must be imported into the CMR using the GUI
  3. startJBossWithIT.sh
  4. open the dvdstore application (Internet Shortcut "NovaTec inspectIT DVD Store Demo", it open an browser with the URL "http://localhost:8080/dvdstore/home")

If you want to make some load tests you can use the following script to start JMeter:

  1. startJMeter.sh

Exercise

An Exercise how to get started can be downloaded here.

Folder structure

Based on the build options the dvdstore demo can contain different applications. Basically, the demo zip-file has the following folder structure:

DVDStoreApp

 

 

 

jboss-5.1.0.GA

Contains the application server, the dvd store application and the inspectIT agent

 

jakarta-jmeter-2.4

Contains jmeter for load tests and the test plans

 

database

Contains the database file and the h2 dbms executable

 

inspectit

Contains the inspectIT analysis software (GUI + CMR)

 

loadtests

contains JMeter load test scripts

 

java

contains JRE Version 6 (x86 for windows/linux) that is used by the dvdstore jboss application and the h2 database

 

startJBoss.sh

Start script for the JBoss Applicationserver without inspectIT

 

startJBossWithIT.sh

Start script for the JBoss Applicationserver with the inspectIT agent

 

startH2.sh

Starts the h2 dbms. The default jdbc path is
jdbc:h2:tcp://localhost/database/dvdstore22

 

startJMeter.sh

Starts JMeter load test tool

 

NovaTec inspectIT DVD Store Demo

Internet Shortcut: Opens the webbrowser and navigates to the address
http://localhost:8080/dvdstore

The DVD Store application is already deployed in the JBoss application server and you only have to start it.

Please ensure that you have started the H2 DBMS before starting the JBoss application server. Otherwise

you will see database connection errors.

If you want to measure the application you have to use the startJBossWithIT.sh start script.

There are three predefined load tests in the "loadTest" subdirectory of JMeter.

The DVDStore application

The start page

On the start page you will find some information about login data of default users.

The store front

In the store page you can select a movie out of the pre-selection or you can search for some movies.

The slow querying performance issue which is described later is affecting the search functionality.

The Java Business Process Modelling Engine

The DVD Store application uses the JBoss jBPM engine to manage the page workflow. There are different

workflows which can be activated by the administrator in the administrion surface.


On the right, the user can select between three different order processes which are described in the middle of

the surface.

Process

Description

order process 1

sends orders immediately to shipping, where the manager should ship the order and record
the tracking number for the user to see.

order process 2

adds an approval step where the manager is first given the chance to approve the order
before sending it to shipping. In each case, the status of the order is shown in the
customer's order list.

order process 3

introduces a decision node. Only orders over $100.00 need to be accepted. Smaller orders
are automatically approved for shipping.

User accounts

There are some predefined users you can use. Five users have normal normal user permissions and one

user is member of the administrator group. User-permissions are managed by the application, stored in the

database and not managed by the application server.

In the following table the predefined users are listed with their role name in the application.

Username

Password

Role

user1

password

normal user

user2

password

normal user

user3

password

normal user

user4

password

normal user

user5

password

normal user

manager

password

administrator

Important:

If you create a new user account you have to enter a credit card number. Do NOT enter your original

personal credit card number into the form for security reasons.