Personalizing Reflection for the Web Using the SQL Plug-in
Technical Note 1835
Last Reviewed 02-Jun-2011
Applies To
Reflection for the Web 2014 (All Editions)
Reflection for the Web 2011 (All Editions)
Reflection for the Web 2008 (All Editions)

This technical note describes how to personalize Reflection for the Web sessions with information stored in an SQL Server database (or any database with a JDBC driver).

For information about personalizing Reflection for the Web sessions with information stored in a text file, see Technical Note 1807.

Using the SQL Plug-in

Reflection for the Web provides an SQL plug-in. Proceed through the sections below to configure Reflection for the Web to use the SQL plug-in for personalization.

Create a Table in Your SQL Server Database

In your SQL Server database, create a table that maps clients with Reflection for the Web settings. The example provided in this technical note creates a table with two fields, my_dns_fieldname and my_devicename_fieldname, which contain client DNS names and their corresponding IBM devicenames or logical units (LUs).

Configure Reflection to Use the SQL Plug-in

To enable the Personalization feature in Reflection, you must edit two files in the ReflectionData folder to identify the plug-in and to create the data source.

Locate the ReflectionData Directory

The default location of the ReflectionData directory depends on your version of Reflection for the Web and the platform on which you run Reflection for the Web. If you install to a non-default location, use the path to which you installed.

Reflection for the Web 2014 or 2011

On Windows Server 2008, Windows 7, and Windows Vista:


On Windows Server 2003 and Windows XP:

C:\Documents and Settings\All Users\Application Data\Attachmate\ReflectionServer\ReflectionData

On UNIX/Linux Platform:


Reflection for the Web 2008

On Windows Server 2008, Windows 7, Windows Vista:

C:\Program Files\ReflectionServer\ReflectionData

On Windows Server 2003, Windows XP:

C:\Program Files\ReflectionServer\ReflectionData

On UNIX/Linux Platform:

ReflectionData located in the management server installation directory.

Specify the SQL Plug-in

  1. Edit the PropertyDS.xml file to specify that the Reflection for the Web management server use the SQL plug-in.

Open ReflectionData\PropertyDS.xml and locate the following lines:

  1. Insert sql.SqlPlugin (shown in red below) between the two STRING tags to read as follows:
  1. Save the file and then restart the Reflection Server.

Create the Data Source

Follow the steps in this section to create a customized data source. First determine the parameters and properties you want to customize; then modify the p13_sql_conf.txt file.

Determine Preferred Data Mappings

  1. Decide which parameters you want to map.

For information on valid parameters you could use in your SQL statement (such as %%DNS), see the comments in the ReflectionData/p13n_sql_conf.txt file.

  1. Decide which properties you want to use.

Many properties can also be used with personalization. For a list of valid properties, see the Administrative WebStation > Advanced > API and Scripting > API Reference.

  1. Optional: To personalize a setting based on a user's identity, Reflection for the Web must be configured to use an authentication method that establishes user identity: LDAP, Portal, SiteMinder, X.509, or Single Sign-on.
    1. Verify the current access control method in Reflection for the Web. In the Administrative WebStation, click Access Control Setup. The Current Settings table lists the type of authentication in effect.
    2. To configure or change the access control method, click the Configure button on the Access Control Setup page.

Note: If the authentication method is None, then the identity of the end user cannot be determined.

Modify the p13_sql_conf.txt File

Open ReflectionData/p13n_sql_conf.txt, to which you will add your data mappings. The file contains comments describing the required format. Each line that begins with a # symbol is a comment.

Add the following lines to the p13n_sql_conf.txt file, replacing the variables with the correct values for your environment. The variables are described in the table following the sample.

Sample p13n_sql_conf.txt File

View this sample p13n_sql_conf.txt to see how to connect to a Microsoft SQL Server database using Oracle's JDBC-ODBC bridge and the ODBC driver included with Microsoft Windows. However, you can use any database with a JDBC driver.

            DbDriver: sun.jdbc.odbc.JdbcOdbcDriver
            DbURL: jdbc:odbc:Driver={SQL Server};server=
            DbMngName: <my_username>
            DbMngPwd: <my_encoded_password>

            SearchStatement: SELECT * FROM <my_sql_table> 
        WHERE <my_dns_fieldname> = %%DNS

            Field_Name_0: <my_devicename_fieldname>
            Field_RWebParamName_0: deviceName

The variables used in this sample are defined in the following table.

The name of the database server.
The SQL Server database name.
The SQL Server login user.
The Base64 encoded SQL Server login password.
The database password is stored as a Base64 encoded string. If you do not have a Base64 encoder tool, you can easily find one by searching the web for "base64 encoder." Once you have obtained a Base64 encoder, encode your database password and then paste the results into the p13n_sql_conf.txt file.

The SQL Server table name.
The field in your table containing the client DNS names.
The field in your table containing the corresponding devicenames.
  1. To make the JDBC driver available to the Reflection Server, place the driver (jar file) in this folder:

Reflection for the Web 2014 or 2011:

<install path>\ReflectionServer\apache-tomcat\webapps\rweb\WEB-INF\lib

Reflection for the Web 2008:

<install path>\ReflectionServer\jakarta-tomcat\webapps\rweb\WEB-INF\lib

  1. Restart your Reflection Server. The Reflection Server must be restarted whenever the PropertyDS.xml or p13n_sql_conf.txt files are updated.
Related Technical Notes
1807 Using the Personalization Feature in Reflection for the Web

Did this technical note answer your question?


Need further help? For technical support, please contact Support.