36 Adding Custom Fields to Customer Center

This section describes the procedures for adding custom fields to your Oracle Communications Billing and Revenue Management (BRM) Customer Center implementation.

Before you read this chapter, you should be familiar with these concepts:

You should also have a working knowledge of JBuilder.

Coding and Deploying Custom Fields for Customer Center

To code and deploy custom fields for Customer Center, perform these tasks in this order:

  1. Adding Custom Fields to Infranet.properties

  2. Generating Your Custom Field Java Source Code

  3. Compiling and Signing Your Custom Fields Java Source Code

  4. Building and Deploying Your New Profile Panel

Adding Custom Fields to Infranet.properties

As with all BRM Java clients, the field numbers for Customer Center custom fields must be added to Infranet.properties. If you add custom fields to Customer Center:

  1. Add your custom field numbers to the Infranet.properties file.

  2. Before creating your jar file, copy the modified Infranet.properties file to the top level of the directory structure along with your other compiled source files.

    Note:

    When Customer Center is deployed by using Web Start, an Infranet.properties file is normally not required since the BRM host and port information is read from the Web Start .jnlp file. However, if the Infranet.properties file exists in the CLASSPATH, it is recognized by Customer Center, or, more specifically, Portal Communication Module (PCM).

For example, if you are adding a custom credit score field and a custom panel for displaying that field, the file and directory structure might look like this:

  • ./Infranet.properties

  • ./com/

  • ./com/mycompany/

  • ./com/mycompany/CustomPanel.class

  • ./customfields/

  • ./customfields/CreditScore.class

Note that the Infranet.properties file is at the top level of this directory structure.

This jar command:

jar cvf ccCustomFields.jar .
  

Generates a jar file containing:

  • 0 Mon Dec 10 09:03:40 PST 2002 META-INF/MANIFEST.MF

  • 0 Mon Dec 10 08:58:28 PST 2002 Infranet.properties

  • 0 Mon Dec 10 09:01:14 PST 2002 com/

  • 0 Mon Dec 10 08:58:54 PST 2002 com/mycompany/

  • 0 Mon Dec 10 08:58:54 PST 2002 com/mycompany/CustomPanel.class

  • 0 Mon Dec 10 09:01:36 PST 2002 customfields/

  • 0 Mon Dec 10 09:01:36 PST 2002 customfields/CreditScore.class

    Important:

    Be sure to include the "." at the end of the jar command. This specifies the current directory.

    Note:

    This example assumes that you have only one Infranet.properties file packaged in a jar file per Customer Center deployment. The jar file is recognized and picked up when Customer Center is run.

For detailed custom field development procedures, see "Adding Custom Fields to Customer Center".

Generating Your Custom Field Java Source Code

This section describes how to select the custom fields profile object that you want to add to Customer Center.

Note:

This procedure uses the sample profile object /profile/customfieldsprof. Replace this object name with the one you create in Developer Center.
  1. Start Storable Class Editor in Developer Center.

  2. Create your custom fields in a profile object.

    For information, see the Storable Class Editor Help.

  3. Create a directory in the CustCntr/custom directory for your custom field Java code, as in this example:

    mkdir CustCntr\custom\custom_fields
      
    
  4. Choose File  – Generate Custom Fields Source.

  5. Click Browse and select the CustCntr/custom/custom_fields directory.

    Note:

    If you are deploying only in Java, you can deselect the option to export C code.
  6. Click OK.

    The source Java code for your custom fields is generated in CustCntr/custom/custom_fields. In this example, these files are:

    • InfranetPropertiesAdditions.properties

    • XCreditScore.java

    • XLicenseNum.java

  7. Click OK in the confirmation dialog box.

Compiling and Signing Your Custom Fields Java Source Code

This section describes how to compile and sign the profile object that you created by using the Storable Class Editor.

  1. Go to the CustCntr/custom/custom_fields directory.

  2. Copy the contents of the custom fields file (CCSDK_Home/CustomerCareSDK/CustCntr/custom/custom_fields) to the end of the CCSDK_Home/CustomerCareSDK/CustCntr/bin/Infranet.properties file by using a text editor.

    Note:

    The InfranetPropertiesAdditions.properties file contains information required when running code that references your custom fields.
  3. Rename the CCSDK_Home/CustomerCareSDK/CustCntr/custom/custom_fields/InfranetPropertiesAdditions.properties file to Infranet.properties.

    You use this file for deploying your custom fields with WebStart. This file is similar to the one you created in step 2 except it doesn't contain the connection and login parameters.

  4. If you have more than one set of custom fields, merge all associated InfranetPropertiesAdditions.properties files.

    Note:

    If you are deploying multiple sets of custom fields (you used Developer Center to generate multiple custom source files), you have several copies of the InfranetPropertiesAdditions.properties file. You must merge all of these files into the CCSDK_Home/CustomerCareSDK/CustCntr/bin/Infranet.properties file.
  5. Compile your custom fields.

    1. Go to your custom field directory (CCSDK_Home/CustomerCareSDK/CustCntr/custom/custom_fields).

    2. Compile your source code:

      javac -classpath ../../../lib/pcm.jar -d . *.java
        
      

      A directory matching the Java package name of your custom fields (in this example, customfields) is created.

  6. Package the compiled code and the revised Infranet.properties file, as in this example:

    jar cf ../ccCustomFields.jar customfields Infranet.properties
      
    

    The jar file is placed up one level in the CCSDK_Home/CustomerCareSDK/CustCntr/custom directory.

  7. If you are deploying the jar file using Web Start, sign the jar file.

    1. Go to CCSDK_Home/CustomerCareSDK/CustCntr/custom directory and find your jar file.

    2. Sign your jar file by using the signjar script, as in this example:

      signjar.bat ccCustomFields.jar
        
      
    3. Verify that the signing process completed properly by using the jarsigner utility provided in the JDK:

      jarsigner -verify ccCustomFields.jar
        
      

      The expected output is:

      jar verified.
      

Configuring JBuilder to Add Custom Fields to Customer Center

This section describes how to configure your custom fields in JBuilder. This enables you to use the fields later when building a new panel or other customization.

Before you use JBuilder to configure your custom fields, set up a JBuilder project. See "Setting Up JBuilder to Customize the Customer Center Interface".

  1. Start JBuilder.

  2. Open your BRM project. See "Creating a JBuilder Project for Customer Center SDK".

  3. Chose Project –  Project Properties.

  4. Click the Required Libraries tab.

    You should see a single library named CCSDK.

  5. Select the CCSDK library and then click Edit.

  6. In the Configure Libraries dialog box, click Add.

  7. Go to your CCSDK install directory, select your custom fields jar file, and then click OK.

  8. Click OK in each of the open dialog boxes.

  9. Go to the CCSDK_Home/CustomerCareSDK/CustCntrExamples/Profile directory.

  10. Copy ProfileTemplate.txt to your custom fields file (CustomFieldsProfile.java in this example).

  11. Choose File - Open File and open the CustomFieldsProfile.java file.

  12. Replace the two instances of XXX with your Java Class name (CustomFieldsProfile in this case).

  13. In CustomFieldsProfile.java, find this line:

    setProfileType();
      
    

    And specify the customfieldsprof subclass:

    setProfileType(customfieldsprof);
      
    

    This maps to the profile object created in Developer Center. This example shown in Figure 36-1 references the /profile/customfieldsprof profile object.

    Figure 36-1 CustomFieldsProfile Example

    Description of Figure 36-1 follows
    Description of ''Figure 36-1 CustomFieldsProfile Example''

  14. Click the Design tab at the bottom of the JBuilder window.

  15. Verify that you can launch the Business Application SDK (BAS) widget Configurator and that it displays your custom profile object and custom fields.

    1. In the widget palette at the top of the JBuilder window, click the CCSDK Components tab.

    2. In the lower left pane, click the PIATextfield widget. This is typically the first widget in the list.

    3. Drag the widget into your panel.

    4. Right-click the widget instance on the left side of the window and click Configurator.

    5. If prompted, log in to BRM.

    6. Expand the node containing your custom field and select your profile object.

    If your profile object is visible in the configurator, you have successfully made JBuilder aware of your custom fields. You can continue constructing your panel. If it is not visible verify that:

    • Your JBuilder library path is correct.

    • There are no errors in the Infranet.properties file you modified in CustCntr/bin when you combined the existing file with the InfranetPropertiesAdditions.properties file that was generated by Developer Center.

    • Your CustCntr/bin/Infranet.properties file contains the entries for your custom fields. Choose Project – Project Properties in JBuilder, click the Required libraries tab select CCSDKlib in the list, and click Edit. Verify that CustCntr/bin and ccCustomFields.jar are in the list.

  16. When you have completed your panel layout, save your changes.

Building and Deploying Your New Profile Panel

This section describes how to build and deploy your custom fields in your custom profile panel:

  1. Run Configurator to add your profile panel to Customer Center, and save your changes:

    • If you are adding your new panel to a Customer Center account maintenance page, see "Tab Options".

    • If you are adding your new panel to a Customer Center new accounts wizard page, see "New Account Page Options".

  2. Run the build script (CCSDK_Home/CustomerCareSDK/buildAll.bat). This script compiles and packages your new panel into the CCSDK_Home/CustomerCareSDK/CustCntr/custom/ccCustom.jar file.

  3. Add ccCustomFields.jar to the CLASSPATH in the CCSDK_Home/CustomerCareSDK/CustCntr/bin/runCustomerCenter:

    set CLASSPATH=f:/7.2sdk/CustCntr/custom/ccCustomFields.jar;%CLASSPATH%
      
    
  4. Test your customizations. See "Testing Your Customizations".

  5. To deploy your customizations with Customer Center WebStart:

    1. Open the CCSDK_Home/CustomerCareSDK/CustCntr/custom/custom.jnlp file with a text editor.

    2. Add this entry for ccCustomFields.jar:

      <jar href="custom/ccCustomFields.jar"/>
      
    3. Continue with the standard deployment procedure. See "Deploying Your Customer Center Customizations".