MSKCC ADF Project Structure Part 1

Stage 1- Single Application for beginner skilled team. This was a similar pattern we used for our ADF 10g application minus the 11g specific components.

Based on “Monster” aka “Colossal” structure:

monster

Source: Angels in the ADF Architecture

Actual components:
viewresources.jar (See Frank Nimphius’s article on sharing images)
• archive for custom ADF META-INF resources.
• icons
• javascripts

MSKCCApps
Architectural Projects (4):
• CommonModel -Architectural, framework extensions, and cross modules BC components
• CommonViewController -e.g. framework extensions, ui/taskflow templates
• DeclarativeComponent -Declarative components only
• MVCShare-Tier independent components, e.g. Utils, Constants, Resource Bundles
Module Projects (2):
• SubsystemModel -Module specific ADF BCs
• SubsystemViewController – Module specific ADF Faces.

Pros:
• Project dependency is simple.
• Reuse can be easily managed.
• Integration & deployment methods are identical to our current procedure.
• Development & Integration familiarity as it is easy to learn.
• Configuration is defined once, i.e. AM Pooling parameters, Dynamic JDBC.

Cons:
• Build/deploy is an all or nothing action.
• Many files & folders within Model/ViewController project.
• Large memory footprint with single deployment file.
• No facility for “weblogic shared library” option.
• Can only be deployed as a whole.
• It will turn into a “Colossal App”.

MSKCCApps dependency

Project Dependency Dependent on Project build/deploy type
viewresources.jar

0

jar file (META-INF/adf)
MVCShare

1

viewresources.jar class output
CommonModel

1

MVCShare class output
SubsystemModel

1

CommonModel class output
DeclarativeComponent

2

MVCShare, viewresources.jar adflib
CommonViewController

2

CommonModel, DeclarativeComponent class output
SubsystemViewController

4

CommonModel, ModulesModel,

CommonViewController, DeclarativeComponent

ear
Advertisements

About wesfang

www.linkedin.com/in/wesfang/ https://twitter.com/wesleyfang
This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s