MSKCC ADF Project Structure Part 2

Stage 2 – Two Applications for our initial 11g ADF development. This stage is an intermediate step before Pillar Architecture stage. We will be building our ADF 11g application based on the following structure.

General structure (thanks to Chris Muir for the template!):

stage2

Actual components:

viewresources.jar

  • archive for custom ADF META-INF resources.
  • icons
  • javascripts

CommonApp

Architectural Projects (4):

  • CommonModel -Architectural, framework extensions and cross modules BC components.
  • CommonViewController-Architectural e.g. framework extensions, ui/taskflow templates.
  • CommonDeclarativeComponent -Declarative components only.
  • Common-Tier independent components, e.g. Utils, Constants, Resource Bundles.

MSKCCApps

Module Projects (2):

  • Model – Module specific ADF BCs separated by package.
  • ViewController- Module specific ADF Faces separated by package.

Pros:

  • Team can focus on code instead of configuration.
  • Code can be reused in future pillar Architecture stage.

Cons:

  • Cannot sustain for long period as it could potentially turn into a “Colossal App”.
  • Will have to refactor/rebuild some code when transition into pillar Architecture stage.

Stage 2 application dependency: 

CommonApp dependency

Project Dependency Dependent on Build/deploy type  
viewresources.jar

0

jar (META-INF/adf)
MVCShare

0

class output
CommonModel

1

MVCShare adflib
DeclarativeComponent

2

MVCShare, viewresources.jar adflib
CommonViewController

3

CommonModel, DeclarativeComponent,viewresources.jar adflib

MSKCCApps dependency

Project Dependency Dependent on Build/deploy type  
Model

1

CommonModel class output
ViewController

4

Model, CommonViewController, DeclarativeComponent,viewresources.jar ear

Stage 2 package & directory structure:

commonstructure

MSKCCApps

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