First Previous Next Last Core Development Guide  

CHAPTER 9    Configuring a Director Application

This chapter explains how to use Director wizards in the Novell exteNd Workbench to create and configure Director applications. It contains the following sections:

 
Top of page

About configuring Director applications

A Director application is packaged in a single Director EAR or Director WAR file. You can create the EAR or WAR by running the Director Project Wizard in Workbench. The wizard lets you select the subsystems you want to use and specify configuration properties for these subsystems. In the wizard, you also configure a custom Web application module that will hold your application code. After you've finished making your selections, the wizard creates a project that includes the J2EE modules you need for your application.

Once you've run the wizard, you can add additional application-specific J2EE modules to the project. You can also add or remove subsystems or make any other necessary changes to the structure and content of the EAR or WAR, just as you would with any J2EE application.

When you're ready to deploy the application, you can use the facilities provided with Workbench to upload the EAR or WAR to one or more servers.

Basic steps   Here are the general steps you need to follow to configure a Director application:

  1. Install Workbench and Director.

    The Director installation program adds several extensions to Workbench. It also installs the standard Director template that you can use as the basis for creating your Director EAR or WAR projects.

    For more information    For installation instructions, see the Release Notes.

  2. If you will use the Search subsystem, configure the Autonomy DRE.

    For more information    For instructions, see the Search Guide.

  3. Create a new database for your Director application, and if your JDBC driver expects it, define an ODBC data source name (DSN) for your newly created database. Director uses a default name of Director for the data source, but you can use your own name.

    This database holds Director data tables for several of its subsystems.

    On an exteNd application server, this can be different from the deployment database. A typical scenario is to deploy the Director application to the SilverMaster database with a separate database for Director data.

    For more information    For instructions, see your DBMS documentation.

  4. Create a new Director EAR or WAR project using the Director Project Wizard with a Director template.

    For more information    For instructions, see Creating a new Director project.

  5. Set up dynamic loading so that you can test application resources without frequent redeployments.

    For more information    For instructions, see Dynamic loading of resources and classes.

  6. Do the required deployment setup for your server. Some setup is done in Workbench; for the rest, you use your server's tools.

  7. Deploy the application to provide access to Web-tier Director tools.

    For more information    For instructions, see Deploying a Director Application.

 
Top of page

Creating a new Director project

You create a new Director project with the Director Project Wizard, which is available in exteNd Workbench after you've installed Director. The Director Project Wizard uses a Director template as the basis of your project.

About templates   A template is a collection of subsystems (which may have custom configurations) and application modules. Each template exists in a template directory on your file system. Various subsystem directories and other files are in that template directory. The wizard copies files from the template to create your project.

A template may include a Workbench project file (with the .SPF extension) for a Director EAR or WAR, but the project file is not required. If the template includes a project file, you can open the template project and continue developing it.

Limitations to templates   In the wizard, you can start from any existing Director project, making it your template, and your project can be a template for another application. However, this hierarchy of source templates doesn't provide ongoing inheritance. Once your project is created (by copying the modules and components from the template to the new project), there is no further connection to the source template. Changes made to a template are not reflected in existing projects that were derived from that template.

Available templates   The basic Director template makes all application functionality available in the wizard:

Template

Functionality

Location in the Director install directory

Director

Basic framework for any Director application. It includes all the available subsystems.

templates\Director directory

Samples

Various sample modules that demonstrate application-building techniques.

samples directory

In the Director wizards, the template location can also be the root directory of any Director project.

Typical versus custom setup   What you get from a typical setup depends on the template you choose. From the basic Director template, your project gets all of the J2EE archives and components required to use the following subsystems:

Typical setup from the Director template also provides the following Web tiers:

Custom setup from the Director template lets you choose which of the subsystems and Web tiers will be part of your project.

Both typical and custom setup provide a panel for configuring a custom Web application. If you include a resource set, then subsystems that have a resource set binding in their configuration file are bound to this resource set.

In additional to the panels described in the following procedure, you may see other panels that have been designed for the template you choose.

Procedure To create a new Director project:

  1. In exteNd Workbench, select File>New Project.

    The New Project dialog appears.

  2. Select the Director tab, then choose Director Project and click OK.

    cdNewProject

  3. On the Template Location panel in the Director Project Wizard, specify the full path for a directory that contains the template you want to use. You can specify one of the following:

    cdTemplateLocation

    You can type the path of a template directory or click the Browse button to select a directory on your file system.

    After you've made your selection, click OK. Then on the Template Location panel click Next.

  4. When the wizard prompts you, click Yes to confirm your template choice.

    cdConfirmTemplate

    The wizard takes a minute to scan the template directory for a list of available subsystems. Then it displays the Project Information panel.

  5. In the Project Information panel, fill in the following fields.

    TIP:   If you fill in the fields in order, subsequent fields are filled in automatically with useful default values.

    Project setting

    What you do

    Project Type

    Specify whether this will be an EAR project or a WAR project.

    Project Name

    Specify the name you want to use for the project file (the .SPF extension is automatically appended). In Workbench, the Navigation Pane's Source Layout displays the project name.

    As you enter a project name, the archive name is filled in automatically.

    Project Location

    Specify a root directory for the project. You can type a path and/or use the Browse button to select a directory location. The location doesn't have to exist yet.

    As you enter a project location, the archive location is filled in automatically.

    If you do not specify an absolute path, the wizard locates the project under the Workbench bin directory.

    The wizard copies template files and subdirectories to this location.

    Archive Name

    Specify the name of the archive file that will be generated. The .EAR or .WAR extension is automatically added, depending on the project type specified. In Workbench, the Navigation Pane's Archive Layout displays the archive name.

    You can keep the default archive name (which matches the project name) or enter a new one.

    Archive Location

    Specify a directory location for the project archive or accept the default, which is the Project Location.

    J2EE Version

    If your server supports J2EE 1.3, select J2EE 1.3; otherwise, select J2EE 1.2.

    NOTE:   If you want to change the J2EE version of a project at a later time, see "How to Handle J2EE Versions" in the Workbench Getting Started.

    A filled-in panel might look like this:

    cdProjectInformation

  6. When you finish the project settings, click Next.

    If the directories you specified do not exist yet, the wizard asks permission to create each of them.

    cdProjectDirectoryCreate

  7. Click Yes to confirm each new directory.

    The wizard displays the Setup Type panel.

    cdSetupType

    You have a choice of these setup types:

    Setup type

    What the wizard does

    Typical

    Copies all the subsystems in the template to your project directory and uses default values for most configuration options. You can make some configuration choices.

    Custom

    Lets you choose which subsystems the wizard will copy to your project directory and provides panels for setting their configuration options.

  8. On the Setup Type panel, select the type you want and click Next.

    If you select Custom, the wizard displays the Subsystem Selection panel so you can select the subsystems you want. If you select Typical, skip to Step 10.

  9. On the Subsystem Selection pane, select the subsystems you want then click Next.

    For more information    For descriptions of the Director subsystems, see About Novell exteNd Director.

    If you try to eliminate a subsystem that is required by another selected subsystem, a dialog tells you what subsystems depend on the one you're trying to omit. You have to omit those dependent subsystems before you can remove the subsystem that they require.

    NOTE:   The following subsystems are required for a WAR project: Framework, Directory, Portal, User, and Security.

    cdSubsystemSelection

    The wizard displays the Custom Web App panel, where you specify options for the WAR that will contain your application code.

  10. On the Custom Web App panel, make these settings for the WAR, then click Next.

    Custom WAR setting

    What to specify

    Create a Custom Web App now?

    Select Yes to add custom Web application functionality. In an EAR project, the wizard includes a separate WAR project for the Web application.

    If you select No, you can add one later with the Custom Web App Wizard (described in Adding a custom Web application to the project).

    NOTE:   For WAR projects, Director requires a custom Web application. Therefore, this option is not available when you're creating a WAR project.

    Name

    The context name for the WAR. This is used in URLs for pages of your application.

    NOTE:   For WAR projects, the context name for the WAR is the same as the Project Name specified on the Project Information panel. This option is not editable when you're creating a WAR project.

    Type

    In an EAR project, select Resource Set or Portal check boxes to specify whether the WAR will include this Director functionality. Note that you can't select Portal without including Resource Set.

    Resource sets enable dynamic loading of descriptors and classes and are required by some subsystems, such as Rule and Portal.

    Portal provides login, pages with components, user-defined pages, and coordinated themes for page design.

    NOTE:   For WAR projects, Director requires a custom Web application that includes a resource set and a portal. Therefore, the Resource Set and Portal check boxes are grayed out for WAR projects.

    For more information    For information about Director portals, see the Portal Guide. For information about resource sets, see Using the Resource Set in a Director Application.

    Resources

    Select the component collections, tag libraries, and conditions and actions for rules that you want to include in your application WAR. The list of available resources depends on the subsystems you've selected.

    Some resources are required by other functionality you may have selected. For example, if you select Portal, you also need to include Core Components.

    For more information    For information about components provided with Director, see Samples.

    Template Resources Location

    A location for storing available resources that you can add to the project later.

    By default, this is the TemplateResources directory of the template. You can specify a different location and Director will copy available resources and make them available if you run Director Setup later.

    cdCustomWebApp

    The wizard displays the Namespace Application panel.

    NOTE:   EAR namespacing applies only to EAR projects. The Namespace Application panel is not displayed for WAR projects.

  11. On the Namespace panel, enable namespacing by entering a namespace context and making sure the Yes check box is selected (selected by default).

    The namespace is used in the URL for your Director application. The default is the project name.

    Namespacing allows you to deploy multiple Director EAR files to the same server when those applications have similar URLs and content. For example, if you deploy the PAC in several different EAR files to the same server, the application server will not be able to distinguish the different versions of the PAC unless EAR namespacing is enabled. If you won't have conflicting applications, you can disable namespacing so that your application's URL is shorter.

    For more information    For more information about namespacing in a Director application, see EAR namespacing.

    cdNamespaceApplication

  12. Click Next to go on to the next panel.

    If you selected the Content Management subsystem, the wizard displays the Content Management Search Configuration panel, which has three tabs.

    If you didn't select Content Management, go on to Step 15.

    cdCMSearchConfiguration

  13. On the Repository tab, you can make these settings:

    Configuration setting

    What to specify

    Enable link to the search service?

    Select Yes if you want to use the Autonomy search capabilities with the Content Management subsystem.

    IMPORTANT:   If you enable search (the default), make sure you configure the Autonomy DRE to run with your server, as described in the Search Guide. Otherwise, features of the Content Management subsystem and the PMC will be disabled.

    Query Engine Host Name

    Specify the host name or IP address of the Autonomy DRE (Dynamic Reasoning Engine). The default is localhost.

    Query Port

    Specify the port number on which the DRE expects to receive queries. The default is 2000.

    Index Port

    Specify the port number the DRE uses for indexing. The default is 2001.

    Repository Name

    Specify the name of the content management repository. The value is always Default.

    On the Synchronization tab you can make these settings:

    Configuration setting

    What to specify

    Synchronization Mode

    Specify how changes to documents are made known to the DRE. Values are:

    • immediate — Propagates changes when they occur; recommended when there is a low volume of document additions and updates

    • batch — Propagates changes to the DRE as a scheduled background task; recommended for environments with a high frequency of changes

    Operations that cause immediate synchronization

    When synchronization mode is immediate, select the operations that cause changes to propagate to the DRE. Use the arrow buttons to move operations to and from the Available and Selected lists.

    For performance reasons, you may not want all operations to be synchronized immediately.

    Number of deleted documents to batch up

    When synchronization mode is batch, specify the number of documents to be deleted as a batch.

    On the Filters tab you can make these settings:

    Configuration setting

    What to specify

    Binary document text filter directory

    Specify where to find the Autonomy filters for importing documents that have a binary file format. The default location is Director-install-dir\Autonomy\OmniSlaves.

    Then click Next.

    If you selected Typical setup, skip to Step 15 for the Directory Configuration panel.

  14. On the Content Management Caching Configuration panel, make the settings you want, and click Next.

    Configuration setting

    What to specify

    Cache Fields?

    Select the types of objects you want to cache. Usually you will want to cache all object types.

    Caching is efficient because the application makes fewer SQL queries of the database. If there are constraints on memory usage, you may choose not to cache.

    Content management caching is not related to PAC cache settings.

    Cache Doc Types?

    Cache Folders?

    Cache Categories?

    The wizard displays the Directory Configuration panel.

  15. On the Directory Configuration panel, select a server-specific security realm. Then click Next.

    The security realms are described below:

    Realm configuration

    Description

    Ldap

    Base configuration for LDAP support in exteNd Director.

    PersistManager

    Write access to user information stored directly in the Director database.

    exteNd Server

    Write access to a exteNd application server realm. The default configuration is SilverUsers.

    exteNd ServerLdap

    Write access to a exteNd application server LDAP realm, using the Novell eDirectory LDAP implementation.

    exteNd Server (compatible)

    Write access to a backward compatible exteNd application server.

    WebLogic

    Write access to a WebLogic application server realm.

    WebLogic (readable only)

    Read-only access to a WebLogic application server realm.

    WebLogicLdap

    Write access to a WebLogic application server LDAP realm, using the Novell eDirectory LDAP implementation.

    WebSphere

    Write access to a WebSphere custom registry using the Director database.

    WebSphereLdap

    Write access to a WebSphere application server LDAP realm, using the Novell eDirectory LDAP implementation.

    Select SilverStream (compatible) if you have a user list from a previous version of Director on the target server.

    cdDirectoryConfiguration

  16. If you select an LDAP realm, you need to specify your LDAP configuration options on the Directory Ldap Configuration panel.

    The LDAP configuration options are described below:

    Ldap Property

    Description

    Realm

    The selected LDAP realm configuration.

    Realm Name

    A name representing the realm implementation class.

    Anonymous User

    Anonymous principal name.

    Administrator

    Name of the LDAP administrator. This user is used internally to access the realm.

    Password

    Administrator password (see previous item)

    Administrator Connections

    Number of simultaneous administrator connections (or bindings) allowed.

    Administrator Conn Wait

    Time to wait (milliseconds) for an admin connection to the LDAP server before timing out.

    LDAP Host

    Host machine and port for the LDAP server.

    Use SSL

    Check to connect the LDAP sever with the Secure Socket Layer (SSL) for data encryption.

    NOTE:   If you are using SSL it is assumed that you have a valid certificate set up on your application server. See your application server documentation for details.

    New User Container

    LDAP tree entry for new user registration. This container allows new user to add themselves to the realm without specifying a Distinguished Name.

    User Container DN

    The distinguished name (DN) or fully qualified LDAP name of the user container. This defines the search scope for users and groups in the LDAP tree. (See next item)

    User Container Scope

    The scope of user entries in the LDAP tree, relative to the User Container (see previous item). Options are:

    • object: entries in the user container base level only

    • onelevel: entries in the user container and one level beneath it in the tree.

    • subtree: entries in the user container and all levels beneath it.

    User Object Attribute

    Attribute representing the user object class.

    IMPORTANT:   Do not use spaces in this name.

    Login Attribute

    Attribute representing the user login name.

    IMPORTANT:   Do not use spaces in this name.

    User Membership Attribute

    Optional. Attribute representing the user's group membership.

    IMPORTANT:   Do not use spaces in this name.

    Group Container DN

    The distinguished name of the group container object.

    Group Container Scope

    The scope of user entries in the LDAP directory, relative to the group container (see previous item). Options are:

    • object: entries in the group container base level only

    • onelevel: entries in the group container and one level beneath it in the tree.

    • subtree: entries in the group container and all levels beneath it.

    Group Object Attribute

    Attribute representing the group object class.

    IMPORTANT:   Do not use spaces in this name.

    Group Membership Attribute

    Optional. Attribute representing the user's group membership.

    IMPORTANT:   Do not use spaces in this name.

    Object Attribute

    Name of the attribute that specifies the object type in the LDAP tree.

    IMPORTANT:   Do not use spaces in this name.

    UUID Auxiliary Class

    The auxiliary class that adds the UUID attribute to the user container. This is necessary for accessing the LDAP realm from the exteNd Director APIs.

    UUID Attribute

    Name of the UUID attribute (see previous item).

    IMPORTANT:   Do not use spaces in this name.

    Connection Timeout (millis)

    Time to wait (milliseconds) for a user connection to the LDAP server before timing out.

    ldapconfigWizPane

    When you click Next, the wizard displays the Framework Configuration panel.

    cdFrameworkConfiguration

  17. On the Framework Configuration panel, specify values for these framework settings:

    Framework option

    What you do

    Director Framework Datasource

    Specify the JNDI name for your application's database. The database contains Director application data such as content and user information. The value you specify depends on the target application server.

    On an exteNd application server, the JNDI name includes qualifiers around the database name, like this: Databases/Director/DataSource. If your database is not named Director, substitute its name between the qualifiers. For example, if your data source name is MyDB, specify Databases/MyDB/DataSource.

    NOTE:   Note that the application database can be, and usually is, different from the deployment database, which typically is the SilverMaster database.

    On WebLogic and WebSphere, the JNDI name does not need extra qualifiers. Replace the suggested value with the JNDI name for the database. For example, for a data source named MyDB, specify MyDB.

    TIP:   Typically you will not need to access the JNDI name directly in your applications. However if you need to do so, you can use the framework API to get the property stored in the FrameworkService config.xml, as shown in this coding technique:

      // get an EbiConfig object
      com.sssw.fw.api.EbiConfig myconfig = com.sssw.fw.factory.EboFactory.getConfig();
      // get value from the key in config.xml 
      String dsname = myconfig.getProperty("com.sssw.fw.datasource.jndi-name");
      // access the data source
      try{
         javax.naming.InitialContext ctx = new javax.naming.InitialContext();
         javax.sql.DataSource source = (javax.sql.DataSource)ctx.lookup(dsname);
      }
      catch(javax.naming.NamingException ne){}
    

    Locksmith

    To use ACL-based security, specify the user ID for administering security using the PAC. The ID you specify must exist in the server's authentication realm when you deploy the Director EAR or WAR.

    NOTE:   If you do not want to use ACL-based security in your application, set the Locksmith to anonymous to prevent ACLs from being set up for the Director Admin elements.

    For more information    For more information about the locksmith user, see the section about subsystem administrators in the User Management Guide.

  18. Specify values for these cluster options:

    Cluster option

    What you do

    Do you want to use clustering?

    Select Yes to enable Director support for clustering.

    The server you deploy to must already be set up as part of a server cluster.

    Host

    Specify the URL of the server that will run the Director Cache Coordinator.

    NOTE:   You must use the Director installation program to install the Cache Coordinator on the server.

    Port

    Specify the RMI port number that the Cache Coordinator will listen on. This must be the same value you specify when you install the Cache Coordinator.

    The Generated UID field displays an application identifier used for clustering. You cannot change it.

  19. Specify a writable directory for Director use:

    Option

    Value

    Server Accessible Temp Directory

    Specify a directory to which the server has write access. Director uses the directory for several types of files:

    • Temporary files

    • getmacaddr utility for generating unique identifiers (UIDs) for Director objects. If getmacaddr doesn't exist in the directory you specify, Director copies the utility from the FrameworkService JAR to this location.

    • Parent folder of PortalCache

    The value you specify is stored in the Framework's config.xml in the key ContentCache.Disk.directory. The default is the user's TEMP or TMP environment variable.

    Then click Next.

    If you selected Typical setup, skip to Step 22 and the Summary panel. If you selected Custom setup and included the WebDAV subsystem, the wizard displays the WebDAV Configuration panel next.

  20. If you selected an LDAP realm, you need to specify your user options on the User Ldap Options panel.

    The user options are described below:

    Ldap option

    Description

    Exclude User Attributes

    User attributes that you want to be inaccessible to the Director APIs.

    Include User Attributes

    User attributes that you want to be accessible from the Director APIs.

    Include Auxiliary Classes

    (Optional) Use to include any custom auxiliary class attributes. These will be added to the user object class hierarchy.

    Use "|" to separate classes, and "," to separate attributes. For example:

      auxclass1,attr1,attr2|auxclass2,attr1,attr2
    

    Exclude Syntax Definitions

    Syntax definitions that you want excluded from the Director APIs.

    LDAP syntaxes determine the data types that can be stored as an attribute. They are defined in RFC 2252 and RFC 2256.

    ldapconfigWizPane2

    NOTE:   Before you deploy a project that uses an LDAP realm, you need to perform some additional configuration steps.

    For more information    For more information, see Configuring an LDAP Realm.

  21. On the WebDAV Configuration panel, you can make settings for composing an URL for WebDAV access. A user's WebDAV client program uses the context root and servlet path as its URL for accessing the WebDAV server in your Director application. You might change the default values to provide a shorter or application-related URL.

    Configuration setting

    What to specify

    Service Context Root

    The relative URL for the WebDAV subsystem WAR in your Director application

    Servlet Path

    The WebDAV subsystem servlet in the WebDAV WAR.

    Require locks for update operation

    Select the Yes check box to require that files be checked out and locked before they are moved, copied, or deleted. Locking preserves data consistency when multiple users update data.

    Clear the check box if your WebDAV client does not support a locking mechanism. In particular, Microsoft File Explorer does not support locking of WebFolders.

    cdWebDAVConfiguration

    Then click Next.

    The wizard summarizes the project details.

  22. On the Summary panel, clear the Build project after wizard is finished check box if you don't want to build the project archives right away.

    TIP:   A recently built project is necessary for editing J2EE descriptor files and for deploying Director Web-tier tools. You can let the wizard start the build process or you can select Build commands on the Project menu later.

    cdProjectSummary

  23. Click Finish to create the project.

    The wizard takes some time to copy the template files to the project directory. Then it builds the project, if you selected that option.

    Now you're ready to begin work on your application.

 
Top of page

Reconfiguring your Director project

There are several ways you can change your Director EAR or WAR. In Workbench, you can use these Director tools:

 
Top of section

Changing the configuration

After you've created a Director project, configuration settings for various subsystems are stored in the subsystem's config.xml. You can change configuration settings you made in the Director Project Wizard using the Director Configuration tool or by editing the config.xml file. You can also change the binding between subsystem and resource set.

About subsystem-resource set binding    Several subsystems use data in a resource set. These subsystems use a binding setting in their configuration file to identify what resource set contains the resources they need. By default, the Director Project Wizard and the Custom Web App Wizard set this binding to the most recently created custom Web application, if it includes a resource set.

You can change the binding for the Rule, Workflow, and Security subsystems using the Director Configuration tool, described next. Note that because of this binding only one Web application in an EAR project can use rules; likewise for workflow and security roles.

Procedure To change configuration settings using a wizard:

  1. With your Director project open in Workbench, select Project>Director Project>Configuration.

  2. In the Director Project Configuration dialog, click the tab for the subsystem whose settings you want to change.

    Subsystem

    What you can change

    More information

    Content Management

    Cache options and Autonomy search options

    Step 13 and Step 14 of To create a new Director project:

    Directory

    Security realm

    Step 15 of To create a new Director project:

    Framework

    Director data source, locksmith, and clustering options

    Step 17 of To create a new Director project:

    Rule

    Resource set binding

    Binding subsystems to a resource set

    Security

    Resource set binding

    Binding subsystems to a resource set

    Workflow

    Resource set binding

    Binding subsystems to a resource set

    WebDAV

    WebDAV URL and locking requirement

    Step 21 of To create a new Director project:

  3. Click OK to save your changes.

Procedure To change configuration settings by editing the config.xml file directly:

  1. With your Director project open in Workbench, go to the Project tab and locate the config.xml file.

    TIP:   The config.xml file is typically located in the subsystem-name-conf subdirectory of the subsystem-nameService.jar file for the subsystem. For example, the Directory subsystem has a config.xml file in the DirectoryService- conf subdirectory of the DirectoryService.jar file. In the case of the Web tiers, the config.xml is located in the conf subdirectory of WEB-INF.

    For more information    For more information about where project files are located, see Director project structure.

  2. Director provides a standard Key/Value editor for config.xml files.

    cdSettingsView3

  3. You can edit the XML source view if you prefer.

    NOTE:   The XML source view does not include multiple-line comments in some versions of Workbench. You can open the XML file in a text editor to be sure that you see the complete source.

Procedure To change configuration settings using a predefined view:

  1. With your Director project open in Workbench, go to the View tab within the Resources tab and select settings.ear.xml.

    NOTE:   The settings.ear.xml view lets you find configuration settings in an EAR project. In a WAR project, you need to use the settings.war.xml view.

    cdSettingsView

  2. The settings view includes a folder containing the configuration files for all subsystems. For example, open the Directory Service folder and select the config file.

    cdSettingsView2

 
Top of section

Adding subsystems

After you have created a Director project, you can use the Director Project Setup Wizard to add subsystems.

You can add subsystems from any template—you don't have to use the same template you used to create the project. Another template might include a subsystem that your original template didn't have. The Setup Wizard copies subsystem files to the project directory, adds subprojects to the Workbench project files, and makes configuration changes to XML files where necessary.

Procedure To add subsystems to your Director project:

  1. With your Director project open in Workbench, select Project>Director Project>Setup.

  2. On the Setup Option panel of the Setup Wizard, select Add.

    cdAddSubsystem

  3. On the Template Location panel, specify the directory for the template that contains the subsystems you want to add. Then click Next.

    For more information    For information about selecting templates, see Creating a new Director project.

    cdTemplateLocation

  4. Click Yes to confirm your template choice.

    cdConfirmTemplate

    The wizard scans the template looking for subsystems that are not already in your Director project. If no new subsystems are found, the wizard lets you pick another template.

  5. On the Subsystem Selection panel, select the subsystems you want to add.

    The Setup Wizard displays panels for configuration options.

  6. Make configuration settings as appropriate.

    The procedure To create a new Director project: has information about these panels (for example: see Content Management, Step 13 and Step 14; WebDAV, Step 21).

  7. On the last panel, check the summary information and clear the Build project after wizard is finished check box if you want.

  8. Click Finish.

Just as with the wizard for creating the Director project, this wizard takes some time to copy subsystem files from the template to the project directory. Then it builds the project, if you selected that option. When it finishes, you're ready to continue work on your application.

 
Top of section

Removing or disabling subsystems

The Director Project Setup Wizard lets you remove or disable any installed subsystem.

Removing means the subsystem is removed from the project and references are removed from the project definition. Its files are deleted from disk.

Disabling means the subsystem files remain part of the project, but Workbench omits the subsystem from the archive when it builds the project. The subsystem files are still in the project and you can re-enable it when you want.

In both cases, references to the subsystem are removed from configuration files and classpaths in manifest files.

Procedure To remove subsystems in your Director project:

  1. With your Director project open in Workbench, select Project>Director Project>Setup.

  2. On the Setup Option panel of the Setup Wizard, select Modify.

    cdModifySetup

  3. On the Subsystem Setup panel, clear the Selected check box for a subsystem you want to remove. Click Yes when the wizard asks if you are sure, warning that its files will be deleted.

    NOTE:   If you select a subsystem that another subsystem depends on, the wizard won't allow it to be deleted. A message tells you what subsystems depend on it.

    cdModifySetup2

    The wizard deletes the subsystem from the project and the subsystem files from disk.

  4. Delete additional subsystems if you want, and click Finish when you are done.

Procedure To enable or disable subsystems:

  1. With your Director project open in Workbench, select Project>Director Project>Setup.

  2. On the Setup Option panel of the Setup Wizard, select Modify.

    The wizard displays the Subsystem Setup panel.

  3. Disable a subsystem by clearing its Enabled check box. Then click Yes when the wizard asks if you are sure you want to disable the subsystem.

    cdModifySetup3

    The wizard deletes the subsystem from the project but leaves the files on disk so you can reenable it later.

  4. Enable a subsystem by selecting its Enabled check box.

    The wizard adds the subsystem back into the project.

  5. Disable or enable additional subsystems if you want, and click Finish when you are done.

Procedure To find out what subsystems are enabled:

  1. With your Director project open in Workbench, select Project>Director Project>Information.

    The Subsystem Information dialog displays the version and Enabled status of the subsystem in your project.

    cdSubsystemInfo

  2. Click OK when you are done.

 
Top of section

Adding a custom Web application to the project

When you run the Director Project Wizard to create a new EAR project, the wizard creates one custom Web application in the EAR. If you want to partition your application functionality into multiple WARs, you can use the Custom Web App Wizard to add additional modules.

Each custom Web application can include a resource set and a portal Web tier. If you include a resource set, subsystems that have a resource set binding—Rule, Security, and Workflow—are reset to point to the new resource set. After you use the wizard, you can reset subsystem bindings to other resource sets as needed.

Resource set restrictions    Before you decide to partition your application into many WARs, keep in mind Director restrictions for using the Rule, Workflow, and Security subsystems.

If you do have more than one Web application, you need to consider how you will use the rules, workflow, and security roles. Only one WAR can use rules; only one can use workflow; and only one can use security roles. The same WAR can use them all, or each subsystem can be bound to a different WAR.

You establish which WAR can use the subsystem's features by specifying a binding in the subsystem. The binding identifies the resource set that contains the application-defined definitions for that subsystem.

Procedure To add another custom Web application:

  1. With your Director project open in Workbench, select File>New Project.

  2. Select the Director tab, then choose Custom Web App and click OK.

  3. Fill in the Custom Web App panel, described in Step 10 of the procedure To create a new Director project:.

    cdCustomWebApp

  4. Click Finish.

    The wizard adds a new WAR to the project with the options you specified.

 
Top of page

Updating your Director project

The Director Project Setup Wizard provides a way to update your project files. It compares the files in a template (normally the template from which the project was created) to the files in your project directory and copies all files that are not present or have changed.

NOTE:   This update utility does not analyze how your project is configured. It copies files from subsystems that your project does not include.

Procedure To update your Director project:

  1. With your Director project open in Workbench, select Project>Director Project>Setup.

  2. On the Setup Option panel of the Setup Wizard, select Update.

    cdUpdateSetup

  3. The Update Your Director Project Wizard appears.

    cdUpdateSetup2

  4. In the From location: box, enter the location of the source project, typically the standard EAR template in your Director installation. For example:

      C:\SilverStream\eXtendDirector\templates\Director
    
  5. In the To location: box, enter the location of the root of your target EAR project, for example:

      C:\Director_Projects\My_Project
    
  6. Select the Mode.

    Mode

    What it means

    All

    Update all files (no filtering)

    Classes

    Update .class files only (intended for updating subsystem classes in the library WAR)

    Selective

    See Step 7 (next)

  7. If you choose Selective, specify lists of extensions in the Include Extensions and/or Exclude Extensions fields. Separate extensions by semicolons.

  8. Check Check date & length to replace files that have a different length in addition to those that have a different date.

  9. Check Copy new files to include new files in addition to updated files. Any file that exist in the From location but not in the To location is considered to be a new file. This option is required for version updates.

  10. Check Trial to see a list of the files to be replaced or copied without actually performing the update.

  11. Click Go.

  12. Check the Release Notes associated with the source template for files that require a manual update.

NOTE:   If you want to change the J2EE version of your project to match the update, see "How to Handle J2EE Versions" in the Workbench Getting Started guide.

Procedure To update an individual Web application:

  1. In the Update facility, enter the location of the Web application template directory in the From location: box, for example

      C:\SilverStream\eXtendDirector\templates\Director\Portal
    
  2. Enter the location of your Web application in the To location: box, for example

      C:\Director_Projects\My_Project\My_Portal
    
  3. Repeat this step for each Web application in your project that is not named Portal.

 
Top of page

Editing the configuration of a resource set

Director provides a custom editor for editing the configuration file for a resource set. That file is always called resourceset.xml and is in the WEB-INF/conf directory of an application WAR that uses a resource set. This section describes interesting features of the editor.

NOTE:   The section Configuring the resource set provides information about the settings you make in resourceset.xml.

Procedure To open the resource set editor:

  1. On the Project tab of the Navigation Pane, find resourceset.xml in the WEB-INF/conf directory of the WAR.

    OR

    In the View tab within the Resources tab of the Navigation Pane, find resourceset.xml in an appropriate view.

  2. Double-click the file name.

    The editor opens and displays one of several tabbed panes. You can edit values in this Graphical View or you can select XML Source View and edit the XML as text.

    cdResourceSetEdit

 
Top of section

Using boolean variables in check box fields

Variables you define in resourceset.xml are available for use in any attribute or element value. In Graphical View, you can choose variables from a list. The editor will display either a checked or an empty check box according to the current value of the variable.

Procedure To use a variable for a check box value:

  1. Right-click on or beside the check box.

    A popup menu displays each boolean variable in normal and negated versions.

    cdResourceSetVariable

  2. Select the variable you want from the list.

    The box is checked if the variable expression is true and empty if the variable expression is false.

NOTE:   To see what values use variables, switch to XML Source View and look for variables in the form $variablename$ and !$variablename$.

 
Top of section

Working with entries for resourcePath and libPath

When working with the list of entries for resourcePath and libPath, there are several points to keep in mind:

 
Top of section

Using resource set utilities

The resource set is not just a feature of your deployed application. It is also running in Workbench to enable tools like the Relationship Viewer and Search and to find resource files used by editors and wizards. To control the resource set in the Workbench, the editor provides several utilities on the General tab.

These utilities affect the resource set in Workbench only, not on the server where you deploy your application.

Button

What it does

Stop, Start, Restart

Starts or stops the resource set.

Use Restart after changing entries on resourcePath and libPath so Workbench finds the correct resource set contents.

Use Stop to conserve memory when you're not editing a resource set's files or using it on the Resources tab of the Navigation Pane.

Validate

Runs the validation classes in the resource set. The default validation verifies that entries in libPath and resourcePath exist. If you've added your own validation classes, they are executed too.

For more information    For information on adding custom validation classes, see Validating a resource set.

If you set Validate to true in resourceset.xml (on the upper half of the General tab), the same validation process is run during the Director boot process on the server.

Clear

Clears the messages reported by resource set utilities.

Enable/Disable Resource Subprojects

Displays a list of resource JAR subprojects in the resource set. Clear the check boxes of projects whose JARs you want to leave out of the archive. The settings you specify will be used the next time you build the archive in Workbench.

When dynamic class loading is enabled, you need to disable subprojects whose classes will be loaded from a disk location. Typically this is the myapp-resource subproject. To find out what is being loaded from disk, see the last entries on the libPath tab.

You might also disable subprojects that your application isn't using yet to speed deployment.

    First Previous Next Last Core Development Guide  

Copyright © 2000, 2001, 2002, 2003 SilverStream Software, LLC, a wholly owned subsidiary of Novell, Inc. All rights reserved.