4 Performing Post-Deployment Tasks

This chapter describes the tasks you perform after deploying the Digital Business Experience solution.

Integrating Launch and CXIF

This section describes the tasks you perform to integrate Launch and CXIF applications with the Digital Business Experience solution.

See Integrate Launch with Digital Business Experience in Oracle Communications Launch Cloud Service Implementation Guide for information about Launch integration with Digital Business Experience solution and other applications.

Prerequisites

Before integrating Launch and CXIF applications, you must perform the following:

  • Request for Launch environment. Contact Oracle Support for assistance.

  • Request for CXIF environment. Contact Oracle Support for assistance.

  • Request for Launch and CXIF integration. Contact Oracle Support for assistance.

Integrating Launch and CXIF with Siebel CRM and PDC

After the prerequisites are completed, perform the following:

Integrating Siebel CRM on Containers with AIA Cloud Native

This section provides instructions for integrating Siebel CRM on Containers with AIA cloud native.

To integrate Siebel CRM on Containers with AIA cloud native:
  1. Get the following JAR files:
    • From Siebel containers, get siebel.jar and SiebelJI_enu.jar.
    • From the WebLogic container, get wlthint3client.jar.
  2. Log in to Siebel eCommunication Web UI as SADMIN user and update the JAVA64 profile parameters to include the three JAR files:

    Note:

    Ensure that the path /sfs/aiacn/jms is a persistent store so that the files are retained after the pod restarts.
    /sfs/aiacn/jms:/sfs/aiacn/jms/Siebel.jar:/sfs/aiacn/jms/SiebelJI_enu.jar:/sfs/aiacn/jms/wlthint3client.jar:.
  3. Relocate the JAR files:
    1. Connect to the Siebel SES pod.
    2. Create a folder with the same name as what is listed in step 2 (/sfs/aiacn/jms), where /sfs is a shared persistent folder, and then copy the 3 JAR files into the folder.
  4. In the same folder, create the jndi.properties file and copy the following text into it:

    Note:

    • Ensure that the AIACN t3 channel URL and user name and password are set with the correct values.

    • In the below example, Siebel and AIA are in the same cluster and different namespace.

    java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory
    java.naming.provider.url=t3://soa_cluster_service_name.soa_namespace.svc.cluster.local:soa_service_cluster_port
    java.naming.security.principal=soa_console_username
    java.naming.security.credentials=soa_console_password
  5. Copy the three JAR files into the Apache TOMCAT /siebel/mde/applicationcontainer/lib folder.
  6. Restart Apache TOMCAT server inside Siebel SES pod.
  7. Configure Siebel Web Service in Siebel DB.
    1. Create the "update_siebel_ws.sql" SQL script with the following content:
      UPDATE S_WS_PORT SET PORT_ADDRESS='jms://jms/aia/AIA_SALESORDERJMSQUEUE@jms/aia/COMMS_SUBMITORDER_CONSUMER', PORT_TRANSPORT='JMS' WHERE NAME='SWISubmitOrderPort';
      UPDATE S_WS_PORT SET PORT_ADDRESS='jms://jms/aia/AIA_SALESORDERJMSQUEUE@jms/aia/COMMS_SUBMITORDER_CONSUMER', PORT_TRANSPORT='JMS' WHERE NAME='SWISubmitOrder_o2cPort';
      UPDATE S_WS_PORT SET PORT_ADDRESS='jms://jms/aia/AIA_SALESORDERJMSQUEUE@jms/aia/COMMS_SUBMITORDER_CONSUMER', PORT_TRANSPORT='JMS' WHERE NAME='SWISubmitQuote_o2cPort';
      UPDATE S_WS_PORT SET PORT_ADDRESS='jms://jms/aia/AIA_SPECIALRATINGJMSQ@jms/aia/COMMS_SPECIALRATINGLIST_CONSUMER', PORT_TRANSPORT='JMS' WHERE NAME='SWISpecialRatingListPort';
      UPDATE S_WS_PORT SET PORT_ADDRESS='jms://jms/aia/AIA_CMUREQADJIOJMSQUEUE@jms/aia/COMMS_ADJUSTMENT_CONSUMER', PORT_TRANSPORT='JMS' WHERE NAME='SWICreateAdjustmentPort';
      UPDATE S_WS_PORT SET PORT_ADDRESS='http://aiacn_clusterService_name.aiacn_kubernetes_name:aiacn_clusterService_port/soa-infra/services/default/AccountBalanceSiebelCommsReqABCS/AccountBalanceSiebelCommsReqABCS_ep' WHERE NAME='_soap_AccountBalanceSiebelCommsReqABCS_AccountBalanceSiebelCommsReqABCS';
      UPDATE S_WS_PORT SET PORT_ADDRESS='http://aiacn_clusterService_name.aiacn_kubernetes_name:aiacn_clusterService_port/soa-infra/services/default/AdjustmentSiebelCommsReqABCS/AdjustmentSiebelCommsReqABCS_ep' WHERE NAME='AdjustmentSiebelCommsReqABCSPort';
      UPDATE S_WS_PORT SET PORT_ADDRESS='http://aiacn_clusterService_name.aiacn_kubernetes_name:aiacn_clusterService_port/soa-infra/services/default/InvoiceSiebelCommsReqABCS/InvoiceSiebelCommsReqABCS_ep' WHERE NAME='_soap_InvoiceSiebelCommsReqABCS_InvoiceSiebelCommsReqABCS';
      UPDATE S_WS_PORT SET PORT_ADDRESS='http://aiacn_clusterService_name.aiacn_kubernetes_name:aiacn_clusterService_port/soa-infra/services/default/PaymentSiebelCommsReqABCS/PaymentSiebelCommsReqABCS_ep' WHERE NAME='PaymentSiebelCommsReqABCSPort';
      UPDATE S_WS_PORT SET PORT_ADDRESS='http://aiacn_clusterService_name.aiacn_kubernetes_name:aiacn_clusterService_port/soa-infra/services/default/UnbilledUsageSiebelCommsReqABCS/UnbilledUsageSiebelCommsReqABCS_ep' WHERE NAME='_soap_UnbilledUsageSiebelCommsReqABCS_UnbilledUsageSiebelCommsReqABCS';
      UPDATE S_WS_PORT SET PORT_ADDRESS='http://aiacn_clusterService_name.aiacn_kubernetes_name:aiacn_clusterService_port/soa-infra/services/default/SyncCustomerSiebelEventAggregator/Client' WHERE NAME='SyncCustomerSiebelEventAggregatorPort'; 
      UPDATE S_WS_PORT SET PORT_ADDRESS='http://aiacn_clusterService_name.aiacn_kubernetes_name:aiacn_clusterService_port/soa-infra/services/default/UpdateCreditAlertSiebelCommsReqABCSImpl/UpdateCreditAlertSiebelCommsReqABCSImpl' WHERE NAME='UpdateCreditAlertSiebelCommsReqABCSImplServicePort';
      SET ESCAPE ON; 
      UPDATE S_WS_PORT SET PORT_ADDRESS='https://Siebel_hostname:Siebel_port/siebel/eai/enu/start.swe?SWEExtSource=SecureWebService\&SWEExtCmd=Execute\&WSSOAP=1' WHERE NAME='SWIOrderUpsert';
      UPDATE S_WS_PORT SET PORT_ADDRESS='https://Siebel_hostname:Siebel_port/siebel/eai/enu/start.swe?SWEExtSource=SecureWebService\&SWEExtCmd=Execute\&WSSOAP=1' WHERE NAME='SWI Product Attribute Import';
      UPDATE S_WS_PORT SET PORT_ADDRESS='https://Siebel_hostname:Siebel_port/siebel/eai/enu/start.swe?SWEExtSource=SecureWebService\&SWEExtCmd=Execute\&WSSOAP=1' WHERE NAME='SWI Product Class Import';
      UPDATE S_WS_PORT SET PORT_ADDRESS='https://Siebel_hostname:Siebel_port/siebel/eai/enu/start.swe?SWEExtSource=SecureWebService\&SWEExtCmd=Execute\&WSSOAP=1' WHERE NAME='SWIProductImport';
      UPDATE S_WS_PORT SET PORT_ADDRESS='https://Siebel_hostname:Siebel_port/siebel/eai/enu/start.swe?SWEExtSource=SecureWebService\&SWEExtCmd=Execute\&WSSOAP=1' WHERE NAME='SWIPromotionImport';
      UPDATE S_WS_PORT SET PORT_ADDRESS='https://Siebel_hostname:Siebel_port/siebel/eai/enu/start.swe?SWEExtSource=SecureWebService\&SWEExtCmd=Execute\&WSSOAP=1' WHERE NAME='SWIUpsertQuote';
      UPDATE S_WS_PORT SET PORT_ADDRESS='https://Siebel_hostname:Siebel_port/siebel/app/eai/enu?SWEExtSource=WebService\&SWEExtCmd=Execute\&WSSOAP=1' WHERE NAME='COMMSCancelOrderPort';
      UPDATE S_WS_PORT SET PORT_ADDRESS='https://Siebel_hostname:Siebel_port/siebel/app/eai/enu?SWEExtSource=WebService\&SWEExtCmd=Execute\&WSSOAP=1' WHERE NAME='COMMSCustomServicesPort';
      UPDATE S_WS_PORT SET PORT_ADDRESS='https://Siebel_hostname:Siebel_port/siebel/app/eai/enu?SWEExtSource=WebService\&SWEExtCmd=Execute\&WSSOAP=1' WHERE NAME='COMMSOrderUpsert';
      UPDATE S_WS_PORT SET PORT_ADDRESS='https://Siebel_hostname:Siebel_port/siebel/app/eai/enu?SWEExtSource=WebService\&SWEExtCmd=Execute\&WSSOAP=1' WHERE NAME='COMMSSubmitBillingOrder';
      commit;
      quit;
    2. Connect to Siebel DB and run the SQL script with DB user name and the corresponding password.
  8. Configure the Siebel repository in Siebel DB:
    1. Create the "update_siebel_repository.sql" SQL script with the following contents:
      UPDATE S_SYS_PREF SET VAL='TRUE' WHERE SYS_PREF_CD='Enable AIA Comms';
      UPDATE S_SYS_PREF SET VAL='TRUE' WHERE SYS_PREF_CD='Enable AIA MDM';
      UPDATE S_SYS_PREF SET VAL='TRUE' WHERE SYS_PREF_CD='Enable AIA Testing';
      UPDATE S_SYS_PREF SET VAL='FALSE' WHERE SYS_PREF_CD='Enable AIA Utility';
      UPDATE S_SYS_PREF SET VAL='No' WHERE SYS_PREF_CD='Enable Promotion Group';
      UPDATE S_SYS_PREF SET VAL='/siebel/mde/siebsrvr/temp/OrderBackup/' WHERE SYS_PREF_CD='AIA Order Backup Path';
      UPDATE S_SYS_PREF SET VAL='Yes' WHERE SYS_PREF_CD='Enable Promotion Group';
      UPDATE S_SYS_PREF SET VAL='Y' WHERE SYS_PREF_CD='Promotion Group Compatibility';
      commit;
      quit;
    2. Connect to Siebel DB and run the SQL script with DB user name and the corresponding password.
  9. Configure EAI File Transfer Folder:
    1. Connect to the SES pod of the Siebel CRM on Containers instance.
    2. Run the following two Siebel commands respectively and set "EAIFileTransportFolders" with the created "OrderBackup" sub-folder's full path as follows:

      Note:

      Ensure that the /siebel/mde/siebsrvr/temp/OrderBackup folder is created in the Siebel SES container. If not, then create the folder and proceed with below commands.
      [aiacn_pod-0:/siebel/mde]#srvrmgr /g cgw-aiacn-0.ses-aiacn.siebel-cn.svc.cluster.local:2320 /e aiacn /u username /p password /c "change ent param EAIFileTransportFolders=/siebel/mde/siebsrvr/temp/OrderBackup"
      srvrmgr> change ent param EAIFileTransportFolders=/siebel/mde/siebsrvr/temp/OrderBackup
      srvrmgr> change ent param EAIFileTransportFolders=/siebel/mde/siebsrvr/temp/OrderBackup for server aiacn_pod-0
    3. Restart the SES service using the kubectl command:
      kubectl -n siebel_namespace, delete pod Siebel_Enterprise_Server_pod_name-0
    4. After the pod is recreated and you have verified that it is running, follow steps 5 and 6.
  10. (Optional) Import products into Siebel CRM on Containers by using the Siebel eCommunication application. Refer to Siebel CRM documentation for instructions.
  11. Import Siebel CRM on Containers SSL/TLS security certificates and configure AIA cloud native with the certificates. See Installing SSL Certificates for more details.
    1. Validate that keystore custom identity and custom trust are created successfully. To do this, log in to the Enterprise Manager Console for AIA and navigate to the Keystore section.
    2. Validate that Siebel trust certificate is available in the custom trust keystore in the Keystore section.
    3. Log in to the Weblogic Console of AIA cloud native. For each managed server, in the Keystore section, ensure the following:
      • kss://system/custom_identity_keystorename is displayed for Custom Identity Store.
      • kss://system/custom_trust_keystorename is displayed for Custom Trust Store.
    4. Validate /u01/oracle/user_projects/domains/domain_name/bin/setDomainEnv.sh with custom trust:
      1. Connect to any managed server pod.
      2. Open the /u01/oracle/user_projects/domains/domain_name/bin/setDomainEnv.sh using the vi tool.
      3. Validate that -Djavax.net.ssl.trustStore=kss://system/custom_trust_keystorename -Djavax.net.ssl.trustStoreType=kss -Djavax.net.ssl.keyStorePassword=password -Djavax.net.ssl.trustStorePassword=password is configured in EXTRA_JAVA_PROPERTIES.
  12. Configure Siebel credentials in the Enterprise Console of AIA cloud native.
    1. Navigate to the Credentials section and edit participatingapplications.siebel.server.eai.password to specify the username and password.
    2. Repeat step a. for participatingapplications.siebel.server.db.password if you want to change the Siebel DB credentials.
    3. Restart the AIA cloud native services by using the domain-lifecycle scripts.
  13. Configure AIA cloud native MetaData with Siebel Connection details, Business Unit ID, and PRICELIST.
    1. Get the latest AIAConfigurationProperties.xml and PRICELIST.dvm files:
      1. In the Enterprise Manager Console for AIA, navigate to the MDS Configuration section and export the zip file.
      2. Copy the following files from the zip: soa/configuration/default/AIAConfigurationProperties.xml and apps/AIAMetaData/dvm/PRICELIST.dvm. For more information on MDS operations, refer to Managing the Metadata Repository in Administering Oracle Fusion Middleware.
    2. Update Siebel connection details:
      1. In the AIAConfigurationProperties.xml file, update all the values of the XML tag SEBL_01.EndpointURI with correct details if required.
    3. Update the Business Unit ID details:
      1. Log in to Siebel and get Siebel Business Unit ID by navigating to Organizations. Navigate to About Record, and copy the Row Number.
      2. In the AIAConfigurationProperties.xml file, update all the values of the XML tag Siebel.SEBL_01.BusinessUnit, with the copied Default Organization Row Number.
    4. Update Pricelist details:
      1. Pricelists:
        1. Log in to Siebel and create or confirm pricelists as required on Siebel. Copy the Row Number of the required pricelist. For more information, refer to Siebel Price List in the Application Services Interface Reference Guide.

        2. In the PRICELIST.dvm file, update or add the values for SEBL_01 column of row with the copied Row Number and with the other required values.

          For more information, refer to Working with the PRICELIST DVM in the Order to Cash Implementation Guide .

        3. Repeat steps 1 and 2 for each pricelist.
      2. Default Pricelist:
        1. In the AIAConfigurationProperties.xml file, update all the values of XML tag Siebel.SEBL_01.PriceList.ID with Row Number from Siebel for default pricelist.

          Note:

          Mention the default pricelist details in the AIAConfigurationProperties.xml file. In case of multi-pricelist configuration, do not mention the default pricelist section in the PRICELIST.dvm file.
    5. Update AIA MDS with the updated PRICELIST.dvm and the AIAConfigurationProperties.xml files. For more information about updating files in AIA MDS, refer to Updating Files in AIA MDS in the Application Integration Architecture Cloud Native Deployment Guide.
    6. Restart AIA cloud native using the domain-lifecycle scripts.
  14. Enable the eai_enu application configuration using the Siebel Management Console. Refer to the Siebel Management Console documentation for instructions.

Integrating BRM Cloud Native with AIA Cloud Native

This section provides instructions for integrating BRM cloud native with AIA cloud native.

To integrate BRM cloud native with AIA cloud native:

  1. Validate the BRM cloud native CM parameter by running the following command:

    Note:

    Ensure that the BRM CM service is configured with the dnsName of the cluster, so that the CM service can be connected using the dnsName in the cluster.
    kubectl -n brmcn_namespace get deployment/cm -o yaml
    A sample output is as follows:
    - name: CM_DNS_NAME
      value: dns:<cm service>.<brm ns>.svc.cluster.local
  2. Deploy the BRM JCA Adapter. See Deploying the BRM JCA Adapter in Oracle Communications Application Integration Architecture Cloud Native Deployment Guide for more information.
  3. (Optional) Validate the connection between AIA cloud native and BRM cloud native by deploying the BRM JCA Adapter test client (Web application) and sending a test request with the test client Web UI. See Testing JCA Resource Adapter Configuration and BRM Connectivity in Oracle Communications BRM JCA Resource Adapter Guide for more information.
  4. Enable notification and Product Sync in BRM cloud native.
    1. Ensure that the fm_publish enable_publish parameter is set to 1 in the CM pin.conf. You can set this by using the helm chart or by editing the Kubernetes config manager entry of cm cm-pin-conf-config.
    2. For EAI (eai-java-server container in the cm pod), ensure that payload for Infranet.properties is set to payloadconfig_crm_sync.xml. This payload contains the required events (ProductInfoChange and DiscountInfo change) for generating the XML for EAI. Ensure that the DB is 0.0.0.0, which points to EAI. The DB entries mapping can be found in dm-oracle pin.conf. You can set this by using the helm chart or by editing the Kubernetes config manager entry of the EAI eai-java-server-infranet-properties-config and eai-java-server-payload.

      Note:

      Bounce the CM pod after the change to reflect the changes.

      Publisher DB=\"0.0.0.0

    3. In the dm-oracle-aq-event-map-config config file, uncomment ALL in aq_event_map.
    4. Ensure that notifications are enabled for the following:
      /event/notification/price/products/modify
      /event/notification/price/discounts/modify
      /event/notification/price/sponsorships/modify
      /event/customer/status
      /event/notification/amt/AccountInfoChange
    5. Run helm command from the BRM Helm charts path to publish Prod Sync data.
      cd $BRM_CNTK/artifacts
      $ helm upgrade --namespace <brm_namespace> brm-cn-apps helm-charts/ --values profiles/deploy-oci.yaml --values profiles/pdc-publish.yaml
    6. Restart the cm, dm-oracle, and dm-ifw-sync pods of the BRM cloud native instance.

Integrating OSM Cloud Native with AIA Cloud Native

This section provides instructions for integrating OSM cloud native with AIA cloud native.

To integrate OSM cloud native with AIA cloud native:
  1. Create a t3 channel in the AIA cloud native instance:
    • For a single cluster scenario, where in AIA cloud native, Siebel CRM cloud native, BRM cloud native, and OSM cloud native are deployed in the same cluster, create a t3 channel in the WebLogic Admin Console for AIA cloud native.
      1. Log in to AIA cloud native Weblogic Console.
      2. Navigate to the Servers section in the Domain Structure pane and then select a managed server (for example, select soa_server1).
      3. Navigate to the Channels tab in Protocols and create a new channel (for example, T3Channel).
      4. Specify the following:
        • Listen Address as soainfra-cluster-soa-cluster.namespace.svc.cluster.local.
        • External Listen Port as soa-cluster-service-name.namespace.svc.cluster.local
      5. Ensure that ‘Tunneling Enabled’ is selected.
      6. Repeat steps b. to e. for remaining managed servers.
    • For multiple clusters, where in AIA cloud native and OSM cloud native are deployed in different clusters, do the following:
      1. Connect to the AIA cloud native cluster and create an ingressroute that includes route rules for all common names and the respective ports.
        apiVersion: traefik.containo.us/v1alpha1
        kind: IngressRoute
        metadata:
          name: aia-ingress
          namespace: namespace
        spec:
          entryPoints:
          - web
          routes:
          - kind: Rule
            match: Host(`soa.domain_name.namespace.aia.org`)
            services:
            - name: soa_cluster_service_name
              port: soa_ms_port
              sticky:
                cookie:
                  httpOnly: true
          - kind: Rule
            match: Host(`t3.domain_name.namespace.aia.org`)
            services:
            - name: soa_cluster_service_name  
              port: soa_cluster_service_port
              sticky:
                cookie:
                  httpOnly: true
          - kind: Rule
            match: Host(`admin.domain_name.namespace.aia.org`)
            services:
            - name: soa_admin_server_service_name
              port: soa_admin_server_port
              sticky:
                cookie:
                  httpOnly: true
      2. Apply the yaml file to create the ingressroute:
        kubectl apply -f aia-ingress.yaml
      3. Edit the AIA cloud native domain configuration to specify the following settings for integrating with the OSM cloud native instance:

        Note:

        If the previous node is cordoned, deleted, or repaved, update the values for hostAliases and change the IP addresses to new IP addresses of a working node.
        spec:
        .........
        .........
          serverPod:
        .........
        .........
            hostAliases:
            - hostnames:
              - t3.instance.project.osm.org
              - instance.project.osm.org
              - admin.instance.project.osm.org
              ip: osm_node_IP_address
            - hostnames:
              - soa.soainfra.soa_namespace.aia.org
              - t3.domain_name.namespace.aia.org
              - admin.domain_name.namespace.aia.org
              ip: soa_node_IP_address
      4. Edit the OSM cloud native domain configuration to specify the same settings as described in step 1.b for integrating with the AIA cloud native instance.

        Note:

        Ensure that the AIA cloud native and OSM cloud native instance pods restart automatically after steps b and c. If they do not restart automatically, run the corresponding scripts to manually restart the AIA and OSM instances.
      5. Create a t3 channel in the WebLogic Admin Console for AIA cloud native, ensuring that the External Listen Address is set as the hostname defined earlier. In addition, ensure that the HTTP Enabled for This Protocol option is selected.
  2. Deploy the O2A cartridge into the OSM cloud native instance. See Creating Order-to-Activate Credentials and Accounts and Deploying the Sample Cartridge for instructions.
  3. Set the AIA cloud native SAF t3 value which was created earlier, in the OSM project specification file as follows:
    • For single cluster, specify the following:
      safConnectionConfig:
        - name: O2A_SAFImportedDestinations
          t3Url: t3://soa_cluster_servicename.namespace.svc.cluster.local:soa_cluster_serviceport
          secretName: osm_project_instance__saf_credentials_aia_secret_name

      Note:

      osm_project_instance__saf_credentials_aia_secret_name is the secret you created while setting up and deploying OSM.
    • For multiple clusters, specify the following:
      safConnectionConfig:
        - name: O2A_SAFImportedDestinations
          t3Url: http://t3_hostname_in_ingressroute:t3_port_created
          secretName: osm_project_instance__saf_credentials_aia_secret_name
  4. Restart the OSM instance to deploy the O2A cartridge with the AIA cloud native configuration. See Restarting the Instance in Oracle Communications Order and Service Management Cloud Native Deployment Guide.
  5. Log in to the Weblogic Admin Console for OSM cloud native and verify that the SAF setting is configured with the expected t3 Url value.
  6. Log in to the OSM Task Web client and verify that the O2A cartridge is deployed.
  7. In WebLogic Admin Console for OSM cloud native, copy the t3 URL displayed for T3ClustChannel for single cluster or the value of T3Channel (HTTP) for multi-cluster channel.
  8. In the WebLogic Admin Console for AIA cloud native, navigate to the JMS Modules page, for the OSM and SOM AIAJMSModules, set the URL test fields with the copied t3 URLs.

    Note:

    You must set a username and password for the WebLogic Admin Console for AIA cloud native.
  9. Restart the AIA cloud native domain services by using the domain-lifecycle scripts.
  10. In AIA WebLogic Console, navigate to the Store and Forward Agents page. In the Remote Endpoints tab for OSM_SAFAgent, ensure that for each Remote Endpoint, the t3 URL is displayed for single-cluster environment.
  11. Log in to Oracle Enterprise Manager Fusion Middleware Control for AIA cloud native, and add the singleton property. See the AIA Installation Guide for instructions.
  12. Configure the AIA queues to support JMS Priority. See the AIA Installation Guide for instructions.
  13. Add the No Authentication security policy to the Product class service. See the AIA Installation Guide for instructions. Ensure that you select "QueryProductClassAndAttributesSCECommsReqABCSImpl" in the Service and References region.
  14. Ensure that the JAVA_OPTIONS parameter -Dweblogic.rjvm.allowUnknownHost=true is added into AIA cloud native domain setting.
  15. In Oracle Enterprise Manager Fusion Middleware Control, for SOA Infrastructure, set the Callback Server URL and Server URL common properties with the SOA infrastructure URL.

Integrating ODI with AIA Cloud Native

This section describes tasks to be performed to integrate ODI with AIA cloud native.

Prerequisites and Assumptions

The following are the prerequisites:

  • The Master Repository and the Work Repository are created in Oracle Data Integrator (ODI).
  • ODI is installed with template - J2EE Enterprise Agent and has the encode.sh script in $ODI_HOME/bin directory.
  • ODI agent is available and agent wsdl is reachable inside the AIA cloud native installation pods.
  • Verify Collections installation. Within the admin pod, verify that the following are present in the DVM path /u01/shared/aia-comms/commsOracleHome/comms_home/source/soainfra/apps/AIAMetaData/dvm:
    • CURRENCY_CODE.dvm
    • COLLECTION_STATUS.dvm
    • COLLECTION_ACTIONNAME.dvm
    • COLLECTION_PRIORITY.dvm
    • COLLECTION_SUBSTATUS.dvm
  • Confirm the URL for composite definition for "SyncCollectionHeaderInfoBRMCommsReqImpl" composite is correct.
  • Mount AIA PV on the machine where ODI is installed. Mount the PV at location "/u01/shared/".
  • You must configure a unified collections action view and a unified collections scenario view in single-schema or multischema environment to be queried by Oracle AIA. See Configuring Views for Oracle Application Infrastructure Architecture for detailed instructions about configuring views for Oracle AIA.

Integrating ODI with AIA

To integrate ODI with AIA cloud native:

  1. Update the mailing details in the /u01/shared/aia-comms/commsOracleHome/comms_home/source/soainfra/apps/config/AIAConfigurationProperties.xml file as required. Update the following properties for the module CollectionsParameters file:
    • FromMailAddress
    • ToMailAddress
    • MailServer
    • MailSMTPPort
  2. Encode passwords for the following:
    • AIA XREF

      To encode the XREF password, run the following command and note the encoded password:

      $ODI_HOME/bin/encode.sh -INSTANCE=OdiInstanceName AIA_XREF_DB_Password
      Update the encoded password in the connections file:
      cd $AIA_PV/aia-comms/commsOracleHome/comms_home/source/soainfra/apps/services/industry/Communications/BulkDataProcess/BRMToSiebel/Collections/ODI/Oracle/V1/ODI_Master_Repository
        
      # Replace fp.db.xref.password with value received from encode.sh
      vi CONN_AIADS.xml
    • BRM
      To encode the BRM password, run the following command and note the encoded password:
      $ODI_HOME/bin/encode.sh -INSTANCE=OdiInstanceName BRM_Database_Advanced_Queuing_user_password
      Update the encoded password in the connections file:
      cd $AIA_PV/aia-comms/commsOracleHome/comms_home/source/soainfra/apps/services/industry/Communications/BulkDataProcess/BRMToSiebel/Collections/ODI/Oracle/V1/ODI_Master_Repository
        
      # Replace participatingapplications.brm.db.password with value received from encode.sh
      vi CONN_OracleBRMDS.xml
    • Siebel
      To encode the Siebel password, run the following command:
      $ODI_HOME/bin/encode.sh -INSTANCE=OdiInstanceName Siebel_database_user_password
      Update the encoded password in the connections file:
      cd $AIA_PV/aia-comms/commsOracleHome/comms_home/source/soainfra/apps/services/industry/Communications/BulkDataProcess/BRMToSiebel/Collections/ODI/Oracle/V1/ODI_Master_Repository
      
      # Replace participatingapplications.siebel.db.password with value received from encode.sh
      vi CONN_SiebelDS.xml
  3. Import the AIA connections to ODI Studio. If the AABC installation is successful, then the importAIAODIConnections.sh script will be generated in the AIA_PV directory. Run the following command to import:
    sh importAIAODIConnections.sh \
        -a AIA_PV_Path \
        -o ODI_DOMAIN_HOME_path \
        -i ODI Instance Name. Example: OracleDIAgent \
        -w ODI Workrep name. Example: WORKREP

Verifying the Integration

To verify the Siebel CRM on Containers - BRM integration deployment:
  1. Login to ODI Studio with ODI user credentials.
  2. Verify and confirm that the AIA Collections Project is imported into the Designer section.
  3. Verify and confirm the connection details under Topology - Physical Architecture - Oracle and XML.
    • Oracle - AIA DS
    • Oracle - Oracle BRM DS
    • Oracle - Siebel DS
    • XML - AIA Config Properties DS
    • XML - Collection Action Name
    • XML - Collection Priority DS
    • XML - Collection Status Mapping
    • XML - Collection Substatus model
    • XML - Currency DS

Testing the Solution Deployment

This section provides information about testing the deployment of the solution to check if all applications are integrated correctly and the solution is working end-to-end as expected.

You must perform the following to test end-to-end deployment of the solution:

Testing the Solution using the Smoke Test Validation

This section provides details of the smoke test validations to be performed to test the deployment of the solution. It includes validating your access to UIs of all the applications integrated with the Digital Business Experience solution and validating if the load balancer is working fine.

Validating the Access to the Application UIs

Note:

  • A list of all the supported cloud native application URLs and their usernames and passwords will be shared to your Email ID.

  • Logging in to the VPN is mandatory.

To validate the access to all the application UIs:

  1. Open the email consisting of all application URLs and their credentials.
  2. Open the application URLs one-by-one and log in using your credentials.
  3. Verify if you can access all the URLs.

    Note:

    If you have trouble logging in to any of the application URLs, contact Oracle Support.

Validating the Access to Load Balancer

To validate if the load balancer is working fine:

  1. Open Postman on the environment you wish to test the loadbalancer from.
  2. Click New, and then click Request.
  3. From the Request Type drop-down list, select GET.

    The GET method page opens.

  4. In the GET URL field, enter the load balancer URL.

    Note:

    Use the public DNS name of your load balancer.
    Example load balancer URL for PDC:
    https://<public_load_balancer_dns_name>:31200/pdc/config
    Example load balancer URL for Siebel:
    https://<public_load_balancer_dns_name>:32200/siebel/config
  5. Under the Authorization tab, set the header for authorization.
  6. Click Send.
  7. Validate the response.
    • If the status code is 200 OK, the load balancer is working fine.
    • If the status code is 503 Service Unavailable, there might be a backend issue.

Testing the Integrations using Functional Testing

This section provides information about testing the Launch - PDC data sync and Launch - Siebel data sync, which is the functional testing of the integrations.

The functional testing includes the following:

  • Setting up the destination and lifecycle status

  • Importing and publishing an initiative

  • Verifying the data sync in Siebel

  • Verifying the data sync in PDC

Setting Up the Destination and Lifecycle Status

To set up the destination and lifecycle status:

  1. Sign in to the Launch application.
  2. From the taskbar available at the bottom of the Launch home page, select the Administration tab.

    The Administration page opens.

  3. Click Manage on the Lifecycle status card.

    The Entity lifecycle page opens.

  4. Click View on the Destinations card.

    Ensure that there are destinations created for Siebel and PDC.

    Note:

    Ensure that the value under the Sequence column for Siebel is 1 and for PDC is 2.
  5. Click Back (<) to go back to the Entity lifecycle page.
  6. Click Manage on the Lifecycle status card.

    The Lifecycle Status page opens.

  7. Click Save as New Version.

    A new version is created. For example, Version 2.0.

  8. From the Version drop-down list available in the Entity Lifecycle Status Configuration section, select the version created from Step 7. For example, Version 2.0.
  9. Under the Actions column, click the ellipsis button for the Ready to publish lifecycle status, and then click Edit.

    The Ready to Publish page opens.

  10. In the Destinations field, add the destinations created for Siebel and PDC.
  11. Click Save.
  12. Click the ellipsis button available in the Entity Lifecycle Status Configuration section, and then click Activate.

Importing and Publishing an Initiative

To import and publish an initiative:

  1. Sign in to the Launch application.
  2. From the taskbar available at the bottom of the Launch home page, select the Administration tab.

    The Administration page opens.

  3. Click Manage on the Job management card.

    The Job Management page opens.

  4. Click Create on the Import jobs card.

    The New Import Job page opens.

  5. Click Select a File, then browse the file (either .json or .zip only) you want to import, and then click Import. For example, initiative_test.json file.

    The Import Jobs page opens. Wait till the Job Status column for your job changes to Succeeded.

  6. Navigate back to the Administration page after the import job is successful.
  7. Click View on the Initiatives card.

    The Initiatives page opens.

  8. Search for the initiative with your import file name. For example, initiative_test.
  9. Under the Actions column for the initiative, click the ellipsis button, and then from the Change status to list, select the Ready to publish option.
  10. Click Publish by clicking the ellipsis button for your initiative.
  11. Track the status of your initiative till it changes to Launched.
  12. Click the ellipsis button for your initiative, then click View, and then click the Publish Tracker tab.

    Verify if the status of all jobs is updated to Success.

Verifying the Launch - Siebel Data Sync

To verify if the Launch - Siebel data is synced correctly:

  1. Sign in to Siebel using your credentials.
  2. From the taskbar available at the bottom, click Administration, and then click Product.

    The Products page opens.

  3. Search for a product with your initiative name. For example, initiative_test_PO.
  4. Check if the Price Type is One-Time.

    The data is successfully synced to Siebel.

Verifying the Launch - PDC Data Sync

To verify if the Launch - PDC data is synced correctly:

  1. Sign in to PDC using your credentials.
  2. From the taskbar available at the bottom, click Administration, and then click Charge Offer.

    The Charge Offer page opens.

  3. Search for a charge offer with your initiative name. For example, initiative_test_PO.
  4. From Charge Actions, select Charge Details, and then select Charge Category. Ensure that the Charge Category is One-Time.

    The data is successfully synced to PDC.