Source Artefacts of the Cúram Application

Source Artefacts of the Cúram Application shows the directory structure for the source artefacts of a Cúram application project i.e. the structure prior to performing a build. Source Artefacts of the Cúram Application describes each directory within the directory structure in more detail.

Source Artefacts of the Cúram Application includes the SERVER_DIR, ProjectPackage and CodePackage as place holders.

Figure 1. Cúram Application Structure
SERVER_DIR
  + project
    + config
    + properties
  + components
    + core
      + codetable
      + data
      + doc
      + events
      + lib
      + message
      + model
      + properties
      + rulesets
      + sample
      + webservices
      + workflow
      + wsdl
    + custom
      + source
        + <Project Package>
          + impl
        + <Code Package>
          + impl
            + wsdl
  + build.bat
  + build.sh
  + build.xml
  + buildhelp.bat
  + deprecationreport.xml
  + .classpath
  + .project
Table 1. Cúram Application Installation Structure

Name

Contents

project

A top level directory containing all information that is relevant to the entire project rather than specific components.

project/config

Configuration information related to the project, including top level configuration files for the data manager and web services connector.

project/properties

Properties that relate to the project as a whole.

components

Each project is made up of a number of components. This directory is simply a place holder for those components.

components/core

A pre-defined component which is used by all other components.

components/core/codetable

Codetable XML (ctx) files created by the developer are kept here. These files are used to define codetables for a Cúram application. The outputs produced from a codetable file consist of an SQL script to populate the code table in the database, and a Java file which provides the necessary constants to the application. See Message and Code Table Files for more information

components/core/data

The Data Manager for this component.

components/core/doc

The JavaDoc for this component.

components/core/events

Event XML (evx) files created by the developer are kept here. These files are used to define event classes and event types for a Cúram application. The outputs produced from an event file consist of an SQL script to populate the event class and event type tables in the database, and a Java file which provides the necessary constants to the application. See Events and Event Handlers for more information

components/core/lib

Contains the built component code packaged in a jar e.g. core.jar.

Additionally, any third-party jar files specified here will automatically be included in the classpath used during compilation or a Batch Launcher run. Files listed here will also be added to any EAR (Enterprise ARchive) file created and an entry added to the manifest file to reference this file.

components/core/message

Message (.xml) files created by the developer are stored here. The Java artefacts produced from a message file are a Java file and a properties file. See Message and Code Table Files for more information

components/core/model

The elements of a Cúram application UML model that relate to this component are available here.

components/core/properties

The component specific Application property definitions are stored here.

components/core/rulesets

Rules (.xml) files created by the developer are stored here. These files may be hand-crafted or created via an online client (Rules Editor). The Cúram Rules Editor Guide describes how to create these files and the Cúram Rules Definition Guide explains ruleset structure in some detail.

components/core/sample

An optional directory containing a zip file of a set of sample java source files matching the component built code within the lib directory. Used for debugging or reference,

components/core/webservices

An optional directory containing the .xsd schema files that are referenced by web services in this component.

components/core/workflow

Workflow process definition (.xml) files created by the developer are stored here. These files may be hand-crafted or created via an online client (Process Definition Tool). The Cúram Workflow Reference Guide describes these files in some detail.

components/core/wsdl

An optional directory containing the .wsdl (Web Service Description Language) files that are invoked from this component. A WSDL description can be spread over several files that reference each other possibly in some arbitrary directory structure. These references can be resolved as long as they are relative

components/custom

Any number of new components may be added. They all have the same structure as the core component.

components/custom/source

All handcrafted Java source code, produced by the developer, is located here.

build.bat, build.sh

A command file that builds your project. This wraps the build.xml file (an Apache Ant build file) that is contained within the EJBServer. The build structure and use of this file is described in Build Files and Their Targets

build.xml

An Ant build file that extends the SDEJ build scripts to enhance a number of targets.

deprecationreport.xml

An Ant build file that provides deprecation reporting.

buildhelp.bat

A command file that displays project help. This wraps the build.xml file. The use of this file is described in Build Files and Their Targets.