Enterprise Java Development@TOPIC@

Chapter 23. Project 2 Getting Started

The following sketch of directory structure can be used as a starting point for your overall application. It assumes you already have either a consolidated Impl -or- a BO, DAO, and BLImpl set of projects in place from Project 1. You will not have the option of consolidating the EJB, WAR, EAR, and RMI Test into a single project for eSales. They must be implemented as separate projects with proper dependencies between them declared. You *do* have the option of merging all modules into a single WAR module for eBidbit or many of the alternatives as long as eBidbit is deployed as a WAR.

Figure 23.1. Candidate Source Module Structure

`-- eMarket
    |-- eSales
    |   |-- eSales (module(s) from project1)
    |   |-- eSalesEJB
    |   |   |-- pom.xml
    |   |   `-- src
    |   |       `-- main
    |   |           |-- java
    |   |           |   `-- esales
    |   |           |       `-- ejb
    |   |           `-- resources
    |   |               `-- META-INF
    |   |                   |-- beans.xml
    |   |                   |-- persistence.xml
    |   |                   |-- (ejb-jar.xml)
    |   |                   `-- (jboss-ejb3.xml)
    |   |-- eSalesWAR
    |   |   |-- pom.xml
    |   |   `-- src
    |   |       `-- main
    |   |           |-- java
    |   |           |   `-- esales
    |   |           |       `-- web
    |   |           |-- resources
    |   |           `-- webapp
    |   |               |-- WEB-INF
    |   |               |   |-- beans.xml
    |   |               |   |-- web.xml
    |   |               |   |-- (jboss-web.xml)
    |   |               |   `-- content
    |   |               `-- index.jsp
    |   |-- eSalesEAR
    |   |   `-- pom.xml
    |   |-- eSalesTest
    |   |   |-- pom.xml
    |   |   `-- src
    |   |       `-- test
    |   |           |-- java
    |   |           |   `-- esales
    |   |           |       `-- ejbclient
    |   |           `-- resources
    |   |               `-- jndi.properties
    |   `-- pom.xml
    |-- eBidbot (many options)
    |   |-- (eBidbotImpl -- should be merged with EJB or WAR)
    |   |-- (eBidbotEJB -- could be separate from WAR)
    |   |-- (eBidbotTest -- could be separate from WAR)
    |   |-- eBidbotWAR
    |   |   |-- pom.xml
    |   |   `-- src
    |   |       +-- main
    |   |       |   |-- java
    |   |       |   |   `-- ebidbot
    |   |       |   |       +-- ejb
    |   |       |   |       `-- web
    |   |       |   |-- resources
    |   |       |   |   `-- META-INF
    |   |       |   |       |-- persistence.xml
    |   |       |   |       `-- (ejb-jar.xml)
    |   |       |   `-- webapp
    |   |       |       |-- WEB-INF
    |   |       |       |   |-- beans.xml
    |   |       |       |   |-- web.xml
    |   |       |       |   |-- (jboss-web.xml)
    |   |       |       |   |-- (jboss-ejb3.xml)
    |   |       |       |   `-- content
    |   |       |       `-- index.jsp
    |   |       `-- test
    |   |           |-- java
    |   |           |   `-- ebidbot
    |   |           |       `-- ejbclient (*IT.java)
    |   |           `-- resources
    |   |               `-- jndi.properties
    |   `-- pom.xml
    `-- pom.xml