Showing posts with label endeca. Show all posts
Showing posts with label endeca. Show all posts

Jul 27, 2016

SEVERE: Caught an exception while invoking method 'run' on object 'BaselineUpdate'

Error:

Getting following error during ./basline_update.sh

Error : 

[[

8| Dgidx.cleanDirs();
9|
10| // run crawl and archive any changes in dvalId mappings
11| CAS.runBaselineCasCrawl("CBS-last-mile-crawl");
12| CAS.archiveDvalIdMappingsForCrawlIfChanged("CBS-last-mile-crawl");
13|
14| // archive logs and run the indexer

]]

[05.14.16 07:48:39] SEVERE: Caught an exception while invoking method 'run' on object 'BaselineUpdate'. Releasing locks.

Caused by java.lang.reflect.InvocationTargetException
sun.reflect.NativeMethodAccessorImpl invoke0 - null
Caused by com.endeca.soleng.eac.toolkit.exception.AppControlException
com.endeca.soleng.eac.toolkit.script.Script runBeanShellScript - Error executing valid BeanShell script.
Caused by com.endeca.soleng.eac.toolkit.exception.CasCommunicationException
com.endeca.eac.toolkit.component.cas.ContentAcquisitionServerComponent startBaselineCasCrawl - Error starting baseline crawl 'CBS-last-mile-crawl'.
Caused by com.endeca.cas.wsdl.CrawlNotFoundFault
sun.reflect.NativeConstructorAccessorImpl newInstance0 - null

[05.14.16 07:48:39] INFO: Released lock 'update_lock'.


APPLIES TO:

Oracle Commerce Platform - Version 10.2 and later
Information in this document applies to any platform.

CAUSE

Dimension Values are not rightly configured and imported into CAS components. Which results with above error during execution of baselineUpdate.sh on endeca APP.



SOLUTION

Note:  Exercise caution when directly modifying the versioned database schema.  For assistance identifying this problem and implementing the solution, please open an SR with Oracle Support.

1. Follow the steps in sequence

  • Check you have Crawler available at http://localhost:8500 with the same name. e.g. <app>-last-mile-crawl.
  • Generally this error occurs if you haven't initialized services.
  • After deploying application to specified folder with help of deploy.xml
  • Make sure you have <app>-data.xml and <app>-dimvals.xml available at location /test_data/basline folder.
  • Goto application_directory/control and execute
    1. ./initialise_services.sh
    2. ./import_site.sh
    3. execute load_basline_test_data.sh
    4. ./baseline_update.sh
  • Your issue will be resolved.



ENDECA_MDEX_ROOT is required for this component,but eac.properties

Error

Caused by: An error occurred while trying to start the component: ENDECA_MDEX_ROOT is required for this component,but eac.properties does not contain a valid ENDECA_MDEX_ROOT definition.: ENDECA_MDEX_ROOT is required for this component,but eac.properties does not contain a valid ENDECA_MDEX_ROOT definition.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at java.lang.Class.newInstance(Class.java:374)
at org.apache.axis.encoding.ser.BeanDeserializer.(BeanDeserializer.java:104)
at org.apache.axis.encoding.ser.BeanDeserializer.(BeanDeserializer.java:90)
at com.endeca.eac.client.EACFault.getDeserializer(EACFault.java:75)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)



Cause

This is problem is because one of MDEX properties in eac.properties file is missing or overwritten in installation.

SOLUTION

Please follow the steps below
  1. Navigate to <endeca_installation> directory.
  2. Search for eac.properties file.
  3. Check each file with MDEX environment variable and update the property with correct path to MDEX with version directory. eg. C:/endeca/MDEX/11.1

Export / Import Endeca App between Different Environments

APPLIES TO:


Oracle Commerce Platform - Version 10.2 and later
Information in this document applies to any platform.

Export endeca Application Steps

1. Record Store - Click here to get more details. This Step can be optional if baseline triggers using /atg/commerce/endeca/index/ProductCatalogSimpleIndexingAdmin Component

2. Dimension Value Id Manager - Navigate To CAS Bin folder and run following commands to export
CAS_Installation_Path/CAS/11.1.0/bin->./cas-cmd.[bat|sh] exportDimensionValueIdMappings -m <> -f /home/atg/dimvalid.csv


3. Endeca Pipeline - Copy Endeca_App/config/mdex folder

4. Editors Config - Copy Endeca_App/config/ifcr/configuration/tools/xmgr folder

5. Workbench Application - Navigate To Endeca Application control folder and run following commands to export content

       <>/control->./runcommand.[bat|sh] IFCR exportApplication
This would generate the zip/exploded folder.


6. Index-Config - Navigate To Endeca Application control folder and run following commands to export index-config.json
     <>/control->./index_config_cmd.[bat|sh] get-config -o all-File_Path/index-config.json



Import ENDECA APPLICATION STEPS

1. Record Store - Click here to get more details. This Step can be optional if baseline triggers using /atg/commerce/endeca/index/ProductCatalogSimpleIndexingAdmin Component.

2. Dimension Value Id Manager - Run below command to import dimension values
/CAS/11.1.0/bin->./cas-cmd.[bat|sh] importDimensionValueIdMappings -m <> -f /home/atg/dimvalid.csv

3. Endeca Pipeline - Use the backup of <>/config/mdex folder and move pipeline.

4. Editors Config - Copy editors_config from step 5 and change host and post information based on environment under each json file and run the following command
         <>/control -> set_editors_config.[bat|sh]

5. Index-Config - Run below command to import index-config.json
<>/control->./index_config_cmd.[bat|sh] set-config -o all -f File_path/index-config.json


6. Endeca Baseline Update-  Run below Command

      <>/control -> ./baseline_update.[bat|sh]

7. Workbench Content - Run below command to import workbench content
        <>/control->./runcommand.sh IFCR importApplication <>

8. Promote Content - Run the following command to promote content from Authoring to Live. Promote content can be run the Workbench as well.
           <>/control -> ./promote_content.[bat|sh]


    Important step to be performed in end

    In the Last Do base line indexing from Store Dyn/admin from ProductCatalogSimpleIndexingAdmin component. This will help in creating exact dim mapping , data and dim vals for endeca schema. These files will not be visible for you to check the mappings.


    May 20, 2016

    AssemblerTools : com.endeca.store.exceptions.PathNotFoundException: No node found at path: [pages/]

    Error

    Unable to retrieve site definition for site id: /: com.endeca.store.exceptions.PathNotFoundException: No node found at path: [pages/]

    APPLIES TO:

    Oracle Commerce Platform - Version 10.2 and later
    Information in this document applies to any platform.

    Cause

    Above problem occurs when there is a mismatch bewteen site id in endeca app and Site Id of store front.

    Solution

    Follow below steps to get rid of this problem :
    1. Navigate to <Endeca_installation_path>/apps/<project_app>/config/import/pages.
    2. Ediit _.json file present.
    3. Check defaultSiteId property and match with Site Id in Store Front.
    4. You can check Site Id of store in BCC or through ACC.
    5. Match both ids and restart endeca services.

    Not able to access User / Profile Repository in ACC

    Error

    java.io.StreamCorruptedException: unexpected block data
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1364)
        at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)



    APPLIES TO:

    Oracle Commerce Platform - Version 9.4 and later
    Information in this document applies to any platform.


    Cause

    This error is because your particular Repository in ACC is not able to find particular class to load the properties of the xml.


    e.g when you click on Users or Orders in ACC, above error appears in front of you.


    Solution


    So the solution is , find out if there are any external classes used for your repository. In my case pci encryption was used to encrypt password in UserProfile.xml and ACC was not able to locate that class when loading the particular repository.

    So Add following lines in pci encryption module :

    Go to encryption module MANIFEST.MF file

    Add line ATG-Client-Class-Path: bin/ config/config.jar lib/classes.jar

    Build project wit ANT and restart the server.

    Cheers!!!

    May 19, 2016

    How to migrate Production / Stage Endeca App to Local Environemnt ?

    Data Migration Needs

    As per ATG-Endeca Integration, All product catalog data gets stored in Endeca CAS record store during baseline process. Sometimes, these data needs to be migrated from Production to UAT or UAT to Dev.

    APPLIES TO

    Oracle Commerce Platform - Version 10.2 and later
    Information in this document applies to any platform.

    Solution

    Export Data from Environment - Production

    1. Identify record store names to be migrated.


    Navigate to CAS Installation directory and list the record stores
    /CAS/<>/bin->./component-manager-cmd.sh list-components
    CRS_en_dimvals
    CRS_en_data
    CRS_en_schema

    2. Identify if there are any active-transactions or not

    /CAS/<>/bin->
    ./recordstore-cmd.sh list-active-transactions -a CRS_en_dimvals
    ./recordstore-cmd.sh list-active-transactions -a CRS_en_data
    ./recordstore-cmd.sh list-active-transactions -a CRS_en_schema

    3. Fetch the current record store configuration

    /CAS/<>/bin->

    ./recordstore-cmd.sh get-configuration -a CRS_en_dimvals -f CRS_en_dimvals.xml
    ./recordstore-cmd.sh get-configuration -a CRS_en_data -f CRS_en_data.xml
    ./recordstore-cmd.sh get-configuration -a CRS_en_schema -f CRS_en_schema.xml

    4. Read data from record store and write into XML files

    /CAS/<>/bin-> 
    ./recordstore-cmd.sh read-baseline -a CRS_en_dimvals -f data_CRS_en_dimvals.xml
    ./recordstore-cmd.sh read-baseline -a CRS_en_schema -f data_CRS_en_schema.xml
    ./recordstore-cmd.sh read-baseline -a CRS_en_data -f data_CRS_en_data.xml



    Import Data with schema to enviornment -UAT

    1. Set the CAS record Store Configuration using step 3 during import process

    /CAS/<>/bin-> 
    recordstore-cmd.bat set-configuration -a CRS_en_dimvals -f CRS_en_dimvals.xml
    recordstore-cmd.bat set-configuration -a CRS_en_schema -f CRS_en_schema.xml
    recordstore-cmd.bat set-configuration -a CRS_en_data -f CRS_en_data.xml

    2. Use step 4 data and write record into record store 
    /CAS/<>/bin-> 
    recordstore-cmd.bat write -a CRS_en_dimvals -f data_CRS_en_dimvals.xml
    recordstore-cmd.bat write -a CRS_en_schema -f data_CRS_en_schema.xml
    recordstore-cmd.bat write -a CRS_en_data -f data_CRS_en_data.xml

    Note :- CRS_en_schema is not used for CAS based Indexing after 11.1 version.