3 Using the Domain Template Builder to Create Domain Templates

The following topics describe how to create a domain template:

Create a New Template

The Create a New Template screen is displayed when you start the Domain Template Builder as described in Chapter 2, "Starting the Domain Template Builder."

Table 3-1 describes the options on this screen.

Table 3-1 Options for Creating Templates

Choose this option When you want to

Create a Domain Template

Create a template that defines the full set of resources within a WebLogic domain, including infrastructure components, applications, services, security options, and general environment and operating system parameters.

You can use the template that you create as the basis for creating a WebLogic domain, by specifying the template in the Configuration Wizard, WLST, or the unpack command.

Create an Extension Template

Create a template that defines applications and services that can be used to extend existing WebLogic domains.

You can import applications and services stored in extension templates into an existing WebLogic domain by using the Configuration Wizard. For more information, see Chapter 4, "Creating Extension Templates by Using the Domain Template Builder."


Select Create a Domain Template and click Next.

The Select a Template Domain Source screen is displayed.

Select a Template Domain Source

The Select a Template Domain Source screen lets you choose the domain or domain template from which you want to create a new domain template.

To select an existing WebLogic domain as the source for the new template

  1. Select the Select a Domain tab.

  2. Navigate to the directory of the WebLogic domain from which you want to create a domain template. Valid domain directories are indicated by the Domain directory folder icon, shown here.

    Surrounding text describes domaindir.gif.
  3. Click Next.

    The Domain Template Builder verifies that the directory you selected contains a valid domain.

    Note:

    If the directory does not contain a valid domain, an error message is displayed.

    The Describe the Template screen is displayed.

To select a domain template as the source for the new template

  1. Select the Select a Template tab.

  2. From the list of templates displayed in the Templates pane, select a template.

    The templates in the list are located in the directory specified in the Locate Additional Templates pane. If you want to change the directory, click Browse, and then either navigate to the appropriate directory or enter the path manually.

  3. Click Next.

    The Describe the Template screen is displayed.

Describe the Template

Use the Describe the Template screen to provide a description for the template.

Note:

This description is displayed in the Select a Template pane of the Select a Template Domain Source screen.
  • If you selected a WebLogic domain as the source for the new template, enter the information required for the domain, and click Next.

  • If you selected a template as the source for the new template, information about the selected template is displayed. Review the information, and, if necessary, change it to suit the requirements of your domain. When done, click Next.

Table 3-2 describes the fields on the Describe the Template screen. Fields marked with an asterisk are required.

Table 3-2 Describe the Template

Field Description

*Name

Enter a valid name for the domain template. The name must be a string of characters, and can include spaces.

*Version

Enter a version number for the template, for example, 1.0.0 or 10.3.3.0

Author

Enter the name of the author of the template. The author must be a string of characters, and can include spaces.

Category

Enter the name of the category in which you want this template to be displayed. The category must be a string of characters, and can include spaces.

Description

Enter a description of the domain template. The description must be a string of characters, and can include spaces.


Specify Template JAR Name and Location

From the Specify Template JAR Name and Location screen, you can accept the provided default template JAR file name and directory location, or you change them. Table 3-3 describes the fields on this screen.

When done, click Next.

Table 3-3 Specify Template JAR File Name and Location

Field Description

Template jar name

This field defaults to a name based on the values you entered in the Name and Version fields on the previous screen. If the template name includes spaces, they are replaced by a period (.). The Name and Version are separated by an underscore (_). For example, if you entered "My new domain" for Name and 1.0.0 for Version on the previous screen, the JAR file name defaults to my.new.domain_1.0.0.

You can enter another name for the JAR file if you want. The name must not include spaces.

Template location

This field defaults to MW_HOME\user_templates, where MW_HOME is the Middleware home directory. If you want to store the file elsewhere, either enter the full path to the desired directory or click the Browse button to select the directory.


Add or Omit Applications

The Add or Omit Applications screen is displayed only if applications are included in the template or domain that you selected.

From the Add or Omit Applications screen, you can

  • Review the list of applications that are currently defined in your template source

  • Review the paths of the current and imported applications

  • If necessary, change the relative path for the directory into which applications are imported

  • If necessary, omit applications from the list of files to be imported.

By default, the Domain Template Builder includes applications from the domain or template you specified as the source for the template that you are creating. For example:

  • If you selected a template as the source for the new template, and if the source template has a separately defined applications directory, all the application files defined in the applications directory are included by default.

  • If you selected a domain as the source for the new template, applications that fulfill the following conditions are included by default:

    • Applications that are defined in the config.xml file by the app-deployment element

    • Applications that are not considered internal applications in your product installation are included by default

      Note:

      When you create or extend a clustered domain (by using the Configuration Wizard or WLST) based on a template that contains applications with application-scoped JDBC or JMS resources, you may need to perform certain additional steps after creating or extending the domain. These steps are needed to ensure that the application and its application-scoped resources are targeted and deployed properly. For more information about targeting and deploying application-scoped modules, see "Deploying Applications and Modules with weblogic.deployer" in Deploying Applications to Oracle WebLogic Server.

To add applications in (or omit them from) the template:

  1. In the Applications pane, review the list of applications to be included in your template. By default, all the applications are selected.

    The listed applications reside in the directory specified in the Current Application Path field. The applications are copied into your template from this location.

  2. To change the relative path of the directory into which an application is imported, do the following:

    1. Select the application in the Applications pane.

    2. In the Imported Application Path field, enter the relative path you want to use after the application is imported into your template.

      Note:

      Some of the applications listed in the Applications pane may be included with the WebLogic products. You cannot change the relative paths for these applications. When you select these applications in the Applications pane, the Imported Application Path field is replaced by an Internal Application Path field. Because these files are installed on your system during your product installation, they are not copied into the template at template creation time. When you use this template to create a domain, this path points to the application files located in your product installation directory.
  3. Deselect the check box for any application that you do not want to include in the template.

  4. Click Next.

    The Add Files screen is displayed.

Add Files

By default, the Domain Template Builder includes files from the WebLogic domain or template you specified as the source for the new template.

  • If you selected an existing template as the source for the new template, all files from the source template are automatically included. If the existing template defines a separate applications directory, the applications in the template are listed under the Applications Root Directory in the Current Template View pane.

  • If you selected a domain as the source for your new template, the following files and directories are included by default:

    • All files in the root directory with the following extensions: .cmd, .sh, .xml, .properties, and .ini

    • All files with the .pem extension defined in the SSL configuration for your domain

    • bin directory

    • lib directory

    • All files in the security directory that are not created automatically during domain creation

      For example, in WebLogic, XACMLRoleMapperInit.ldift is not created automatically, and therefore is included in the template by default when creating a template.

    • All files and subdirectories in the config directory that are not included by the Domain Template Builder automatically during template creation. For example, config.xml and any JDBC and JMS resources defined in config.xml are not displayed in the Current Template View pane by default because the Domain Template Builder automatically includes them in the template when creating the template.

      Note:

      By default, the servers directory is not included in the template. If you have configured additional security data such as users, groups, or roles, through the WebLogic Server Administration Console or other online tools, it is stored in the LDAP server and is not included in the template. You must export the data first and then import it into the target domain.

You may also need to include other files from your domain or file system that are required by the applications.

The Add Files screen lets you to review, add, or remove files in the template.

  • To view the current list of files in your template, expand the Domain Root Directory and Applications Root Directory in the Current Template View pane.

  • To add a file, navigate to the file within the File System View pane and select Add File. You can use the filters in the Show File Types drop-down list to limit the files displayed in this pane. For example, to display only files with the .cmd extension, select *.cmd from the drop-down list.

  • To remove a file, select the file from the Current Template View pane, and select Remove File.

    Note:

    You cannot remove files shown in red or their parent directories as they consist of the applications defined in the config.xml file in the template source. These files are included by default in the template being created. If you do not want these files included in your template, you must remove the application with which they are associated. To do so, click Previous to return to the Add or Omit Applications screen and deselect the appropriate check box for the application.

    If you attempt to add a file that is created automatically by the Configuration Wizard at domain creation time, an error message is displayed.

After adding and removing files as necessary, click Next.

The Add SQL Scripts screen is displayed.

Add SQL Scripts

You can add your own SQL scripts to the new template, so that the scripts are available when you create a WebLogic domain based on the template.

Note:

SQL scripts that are included with the product do not need to be added to the template.

The Add SQL Scripts window lets you add SQL scripts for each database that you expect to be used with the WebLogic domains created from this template. You can also specify the order in which the scripts are executed. When you create a WebLogic domain based on this template, the databases and associated SQL scripts that you include are displayed on the Run Database Scripts screen of the Configuration Wizard.

Note:

If you use a template as the basis for the new template, SQL files that are included in the source template are displayed in the Selected Database Scripts pane, organized by database type.

To add SQL scripts to the template:

  1. In the Database Type and Version pane, select a database from the Type drop-down list.

  2. Select the database version from the Version drop-down list or enter a version number directly in the field.

  3. Click Add SQL File.

    The Open dialog box is displayed.

  4. Navigate to the directory that contains the SQL scripts for the selected database.

  5. Select the SQL files to be added, and click Add SQL File(s).

    The SQL files that you added are displayed in the Selected SQL Files pane. The Selected Database Scripts pane displays a tree-view of all the databases and associated SQL scripts included in the template.

    You can change the order in which the SQL files are executed by using the Up and Down arrow icons. The specified sequence is reflected in the Selected Database Scripts pane.

  6. Repeat steps 1 through 5 for each database for which you want to include SQL files.

  7. Click Next.

To remove SQL scripts from the template:

  1. From the Type drop-down list in the Database Type and Version pane, select the database for which you want to remove SQL scripts.

  2. Select the database version from the Version drop-down list or enter a version number directly in the field.

    The SQL scripts for the selected database displayed in the Selected Database Scripts pane are listed in the Selected SQL Files pane.

  3. In the Selected SQL Files pane, select the SQL file to be removed and click Remove SQL File.

  4. Repeat steps 1 through 3 for each SQL script that you want to remove.

  5. Click Next.

    The Configure the Administration Server screen is displayed.

    Note:

    If you are creating an extension template, the Security Configuration Options screen is displayed next. For more information, see Security Configuration Options.

Configure the Administration Server

In every WebLogic domain, one server must be designated as the Administration Server. The Administration Server is the central point from which the entire domain is managed.

You can access the Administrator Server by using the following URL:

protocol://listen-address:listen-port

The protocol can be any of the following: t3, t3s, http, https.

You can define the listen-address and listen-port for the Administration Server on the Configure the Administration Server screen of the Domain Template Builder.

For information about the fields on the Configure the Administration Server screen, see "Configure the Administration Server" in Creating Domains Using the Configuration Wizard.

After configuring the Administration Server, click Next.

The Configure Administrator Username and Password screen is displayed.

Configure Administrator Username and Password

When you create a domain template, the administrator username and password from the original WebLogic domain or template are included in your new template. If necessary, you can modify this username and password.

You can also provide extra security for application resources using the following security features:

  • Users and groups: Classification of individuals and groups of individuals who may be granted a security role. Typically, a group is a collection of users who share a role or function within a company, such as working in the same department.

  • Global security roles: Dynamically computed privileges that are used to restrict access to WebLogic resources. These privileges are granted to or withheld from users according to the roles that they are assigned.

To modify the administrator username and password:

  1. Specify a valid username in the Username field. This name is used to start the Administration Server and connect to it. User names are case sensitive.

    Do not use commas or any characters in the following comma-delimited list:

    \t, < >, #, |, &, ?, ( ), { }

  2. Specify a valid password in the User password field. A valid password must contain at least eight case-sensitive characters and at least one numeric character. The password value is encrypted.

  3. Re-enter the password in the Confirm user password field.

  4. Optionally, enter a login description for this username.

  5. If you want to configure additional users, groups, and global roles, select Yes at the bottom of the screen, and click Next. The Configure Users, Groups, and Global Roles screen is displayed.

    If you do not want to configure additional users, groups, and global roles, select No, and click Next. The Specify Start Menu Entries window is displayed (see Specify Start Menu Entries.

Configure Users, Groups, and Global Roles

The Configure Users, Groups and Global Roles screen is displayed in the Domain Template Builder in the following situations:

  • You are creating a domain template and you selected the option to configure users, groups, and global roles on the Configure Administrator Username and Password screen.

  • You are creating an extension template and you selected Yes on the Security Configurations Option screen.

Users, groups, and global roles are defined as follows:

  • A user is an entity that can be authenticated. The user can be a person or a software entity, such as a Java client. Each user is given a unique identity within a security realm.

  • A group is a collection of users who usually have something in common, such as that they are working in the same department in a company.

  • A security role is a privilege granted to users or groups based on specific conditions. Like groups, security roles allow you to restrict access to WebLogic resources for multiple users simultaneously. A security role that applies to all WebLogic resources deployed within a security realm (and, thus, within the entire WebLogic domain) is called a global role.

The Configure Users, Groups and Global Roles screen lets you define users, groups, and roles for authentication purposes. You must define at least one user.

Note:

Depending on the template or domain you selected, one or more users, groups, or roles may be defined already. In addition, WebLogic Server defines a default set of groups and roles. For a list of the default groups and roles defined in WebLogic Server, see "Users, Groups, and Security Roles" in Securing Resources Using Roles and Policies for Oracle WebLogic Server.

To configure users, groups, and global roles:

  1. Select the User tab and review the current user configuration. Add or change entries as required for your domain. To delete a user, click in any of the fields of the relevant row, and click Delete.

  2. Select the Group tab and review the current group configuration. Add or change the entries required for your domain. To delete a group, click in any of the fields of the relevant row, and click Delete.

  3. Select the Role tab and review the current role configuration. The predefined list of WebLogic Server global security roles is displayed. Add or change the entries required for your domain by using the guidelines provided in Table 3-4. To delete a role, click in any of its fields of the relevant row, and click Delete.

    Note:

    Do not make the default global security roles for administrative and server resources more restrictive. If you eliminate any existing security roles, you risk degrading WebLogic Server operation. You can, however, make the default security roles more inclusive (for example, by adding new security roles).

    Table 3-4 Configure Users, Groups and Global Roles

    Field Description

    Name*

    Enter a valid name for the role. Security role names are case sensitive. Do not use blank spaces, commas, hyphens, or any characters in the following comma-delimited list:

    \t, < >, #, |, &, ~, ?, ( ), { }

    The default value in this field is new_Role_n, where n specifies a numeric value that is used to differentiate among all default role names; the value of n for the first role is 1. The value is incremented by 1 for each role that is added.

    Description

    Enter a description of the role to be used for informational purposes only


    When you finish your updates, click Next.

    The Assign Users to Groups window is displayed.

Assign Users to Groups

The Assign Users to Groups screen lets you assign users to groups. It is recommended that you add users to groups. By managing groups, you can manage multiple users more efficiently.

  1. In the Group pane, select the group to which you want to assign users.

    The current assignments for the selected group are displayed in the left pane.

  2. In the right pane, do one of the following:

    • To assign a user to the selected group, select the check box for the user.

    • To remove a user from the selected group, clear the check box for the user.

    To select all users in the list, click Select All. To deselect all users in the list, click Unselect All.

    The list of groups associated with each user is updated to reflect the changes.

  3. Repeat steps 1 and 2 for each user that you want to assign to a group. You can assign a user to more than one group.

  4. Click Next.

    The Assign Groups to Groups screen is displayed.

Assign Groups to Groups

The Assign Groups to Groups screen lets you designate one group as a subgroup of another, to refine management of security for your domain.

Note:

You should not assign groups recursively. For example, do not assign groupA as a subgroup of groupB and groupB as a subgroup of groupA.
  1. In the Group pane, select the group to which you want to assign a subgroup.

    The current assignments for the selected group are displayed in the left pane.

  2. In the right pane, do one of the following:

    • To assign a group as a subgroup of the selected group, select the check box for the group.

      To select all groups in the list, click Select All.

    • To remove a subgroup from the selected group, deselect the check box for the group.

      To unselect all groups in the list, click Unselect All.

    The list of subgroups associated with each group is updated to reflect your changes.

  3. Repeat steps 1 and 2 for each group that you want to designate as a subgroup. You can make a group a subgroup of more than one group.

  4. Click Next.

    The Assign Users and Group to Global Roles screen is displayed.

Assign Users and Groups to Global Roles

The Assign Users and Groups to Global Roles screen prompts you to assign users and groups to the global security roles defined by WebLogic Server. For a list of the default roles and the privileges that users or groups in these security roles are granted, see "Default Global Roles" in Securing Resources Using Roles and Policies for Oracle WebLogic Server.

Note:

You must assign one or more users or groups (containing one or more users) to the administrator role to ensure that there is at least one user who can start WebLogic Server.
  1. In the Role pane, select the global role to which you want to assign users and groups.

    The current assignments for the selected role are displayed in the left pane.

  2. In the right pane, do one of the following:

    • To assign a user or group to the selected role, select the associated check box.

      To select all users and groups in the list, click Select All.

    • To remove a user or group from the selected role, clear the associated check box.

      To unselect all users and groups in the list, click Unselect All.

    The Role list corresponding to each user and group is updated to reflect the global roles to which the user and group are assigned.

  3. Repeat steps 1 and 2 for each user or group that you want to assign to a global role. You can assign a user or group to more than one global role.

  4. Click Next.

    The Specify Start Menu Entries screen is displayed.

    Note:

    If you are creating an extension template, the Prepare Scripts and Files with Replacement Variables window that is displayed next. For more information, see Prepare Scripts and Files with Replacement Variables.

Specify Start Menu Entries

The Specify Start Menu Entries window prompts you to create items to be added to the Windows Start menu.

The next step depends on the source for the new template that you are creating.

  • If you selected a WebLogic domain as the source for the new template, Start menu entries are not defined. To create Start menu entries for the domain, enter the required information and click Next. The required information is defined in Table 3-5.

  • If you selected a template as the source for your custom template, the Start menu entries from the selected template are displayed here. Review the information and, if necessary, modify it to meet the requirements of your domain, as described in Table 3-5.

Add, modify, or delete entries as required by your domain, using the guidelines provided in Table 3-5.

Table 3-5 Specify Start Menu Entries

Field Description

Shortcut link name

Enter a valid name for the shortcut to be displayed in the Start menu. The name must be a string of characters and it may include the space character.

Program

Specify the program to be run when the shortcut is selected. A list of the programs defined by the template source is shown in the drop-down list. To use a predefined program, select it from the drop-down list.

To specify an alternate program, enter the relative path to it in this field. To ensure that the template is portable, you can use variables such as $USER_INSTALL_DIR$ and $DOMAIN_DIRECTORY$ to specify your program path. For example:

$USER_INSTALL_DIR$\server\bin\installNodeMgrSvc.cmd.

Note: Do not specify any executable or script that does not reside in the MW_HOME directory.

Argument

Enter any parameter that you want to pass to the shortcut program.

Working directory

Enter the path of the directory from which the shortcut will be executed. If you have selected a program from the drop-down list in the Program field, this field is not available.

Note: By default, the working directory is the directory that contains the executable or script. In most cases, you do not need this field.

Description

Enter a description for the shortcut.


To delete an entry, click the tab for the Start menu entry, and click Delete.

When you finish updating your settings, click Next.

The Prepare Scripts and Files with Replacement Variables screen is displayed.

Prepare Scripts and Files with Replacement Variables

When you are creating a template, you want the scripts and files that you are packaging with your template to be free of local domain environment settings and ready for use by the Configuration Wizard. The Domain Template Builder automatically updates any standard scripts included in a template (such as start scripts) by replacing hard-coded values for various domain environment settings with replacement variables. The Configuration Wizard can replace these variables with new hard-coded values during the configuration of a new WebLogic domain.

The Prepare Scripts and Files with Replacement Variables screen enables you to replace hard-coded strings with replacement variables in files that have not been updated by the Domain Template Builder.

Note:

The check boxes of files that were automatically updated by the Domain Template Builder are selected.

To insert replacement variables into your files:

  1. Open the file in one of the following ways:

    • Double-click the appropriate filename in the Select File list.

    • Select the appropriate filename in the list and click Edit.

    The Instructions pane is replaced by an Edit File pane, in which the file is displayed. An editing toolbar is provided at the top of the Edit File pane.

  2. To insert a replacement variable:

    1. Select the string to be replaced.

    2. Click the right mouse button. A list of replacement variables is displayed.

    3. Select the required variable.

    The replacement variable replaces the selected string. The Configuration Wizard later substitutes literal strings for the replacement variables to set up a specific WebLogic domain. For definitions of the available replacement variables, see Replacement Variable Definitions.

  3. Repeat steps 1 and 2 for each string for which you want to substitute a variable.

  4. Review the changes and click Save to preserve your changes, or Revert to replace the current version of the file with the last saved version. If you edited the file since the last time you saved it, you are prompted to confirm the revert operation.

    Note:

    You can also click Reset in the Select File pane to revert to the saved version of the file.
  5. If you saved the edited file, select the check box next to the filename in the Select File pane.

  6. Repeat steps 1 through 5 for each file in which you want to insert replacement variables.

  7. Click Next.

    The Review the Domain Template window is displayed (see Review WebLogic Domain Template).

Replacement Variable Definitions

The following table defines the replacement variables most commonly used in files.

Table 3-6 List of Replacement Variables

Variable Definition

ADMIN_SERVER_URL

URL specifying the listen address (host name or IP address) and port number of the Administration Server for the WebLogic domain.

APPLICATIONS_DIRECTORY

Directory containing the applications required by the domain. By default, the pathname for this directory is MW_HOME\user_projects\applications\domain.

BEA_HOME

The Middleware Home directory (MW_HOME) in which the products associated with the domain are installed. On a Windows system, the default path for this directory is C:\Oracle\Middleware.

DOCSWEBROOT

The URL specifying the location of the product documentation on the Internet.

DOMAIN_HOME

Directory in which the domain resides.

DOMAIN_NAME

Name of the domain.

DOMAIN_USER

Administration username required to start the server.

JAVA_HOME

Location of the JDK used to start WebLogic Server.

JAVA_VENDOR

Vendor of the JVM, for example, Oracle, HP, IBM, and Sun.

JAVA_VM

Mode in which you want the JVM to run, such as -jrockit, -server, -hotspot.

LISTEN_PORT

Port to be used to listen for regular, non-secure requests (through protocols such as HTTP and T3). The default value is 7001.

PRODUCTION_MODE

Mode in which the server is started. If this variable is set to true, the server starts in production mode; if set to false, the server starts in development mode.

SAMPLES_HOME

Directory containing the samples provided with your product installation. By default, the pathname for this directory is MW_HOME\wlserver_version\samples.

SERVER_HOST

Name or address of the machine hosting the server.

SERVER_NAME

Name of the server to be started.

SERVER_PORT

Port to be used to listen for regular, non-secure requests (through protocols such as HTTP and T3). The default value is 7001.

SSL_PORT

Port to be used to listen for secure requests (through protocols such as HTTPS and T3S). The default value is 7002.

STARTMODE

Mode in which the server is started: development or production.

USERDOMAIN_HOME

Directory containing the user domains created with the Configuration Wizard. By default, the path for this directory is MW_HOME\user_projects\domains.

WL_HOME

Root directory of your WebLogic Server installation. By default, this directory is defined as MW_HOME\wlserver_version.

WLW_INSTALL_DIR

Root directory of your WebLogic Workshop installation. By default, the path for this directory is MW_HOME\workshop_version.


Review WebLogic Domain Template

The Review WebLogic Domain Template screen lets you review the settings for the new template before it is created.

  1. Select an item in the Template Summary pane on the left and review the associated details in the Details pane on the right. If you need to change any settings that you defined in previous windows, select Previous to return to the required configuration window.

    Note:

    You can limit the type of information displayed in the Template Summary screen by using the View drop-down list.
  2. Click Create.

    The Create a Template screen is displayed.

Creating Template

The Creating Template screen displays status messages during the template creation process. The Domain Template Builder generates a JAR file that contains all the components required to generate a new WebLogic domain, including the template settings that you provided.

When the process completes, click Done to exit the Domain Template Builder.

The files included in a template vary, depending on the WebLogic domain or template on which the template is based. For example, if you specify any Start menu entries in the Specify Start Menu Entries screen, a startmenu.xml file that contains the specified entries is included in the template. When you use this template to create a domain, Start menu entries are created by using the values specified in this file. For more information, see "Files Typically Included in a Template" in the Domain Template Reference.