How to Handle Special Characters in Search? - Endeca Best Practices

Endeca uses only alphanumeric characters to be searchable by default as part of Endeca search query.

Problem Statement:
If any search term contains any special characters then Endeca replaces special characters by "space" and makes endeca query. This may not give intended results.

Ex: If a search term is β Antibody, Endeca internally replaces search term special chars with space and search term would be Antibody".

Solution:
For Forge-based Application:
1. Open  /opt/app/endeca/apps/CRS/config/pipeline/CRS.search_chars.xml

2.  Add all characters that you want to make searchable.
3.  Run baseline
update 


For Forge-less  Application:
1. Open  /opt/app/endeca/apps/CRS/config/mdex/CRS.search_chars.xml
2.  Add all characters that you want to make searchable.
3.  Run baseline
update


Pipeline Changes Looks like as below:

How to remove Endeca application entry from Workbench when user deleted complete project folder from the Endeca box without following clean removal steps and application entry is still registered with IFCR?

Problem Statement:  How to remove Endeca application entry from Workbench when user deleted complete project folder from the Endeca box without following clean removal steps and application entry is still registered with IFCR?

ERROR Message: 05.26.16 09:16:24] SEVERE: Caught an exception while invoking method 'run' on object 'InitialSetup'. 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.utility.IFCRUtility$HttpStatusException
com.endeca.soleng.eac.toolkit.utility.IFCRUtility execute - Precondition Failed (412): Cannot copy JcrNodeResource, type=endeca/site, superType=null, path=/prototype/default to /sites/CRSen: destination exists


Solution: 
1) Create the new Endeca application [ex: CRSen] with the same name using deployment template
/opt/app/endeca/ToolsAndFrameworks/3.1.2/deployment_template/bin]$ ./deploy.sh --app ../../reference/discover-data/deploy.xml 

2) Run Application provision command   
/opt/app/endeca/apps/CRSen/control$]./initialize_services.sh

3) Use runcommand.sh|bat to remove app
/opt/app/endeca/apps/CRSen/control$]./runcommand.sh --remove-app

 How to create new application using deployment template?

/opt/app/endeca/ToolsAndFrameworks/3.1.2/deployment_template/bin]$ ./deploy.sh --app ../../reference/discover-data/deploy.xml

 ------------------------------------------------------------------------------
   Found version 6.1 of the Endeca IAP installed in directory
   /opt/app/endeca/PlatformServices/6.1.3. If either the version or location are
   incorrect, type 'Q' to quit and adjust your ENDECA_ROOT environment variable.
   Press enter to continue with these settings.

   Continue?
>Hit Enter

 ------------------------------------------------------------------------------
     Deployment Template installation script.

     This script creates the directory structure for your
     deployment and installs configuration files and scripts
     into the directory structure.
  
05/26/2016 09:14:19 [deploy.pl] INFO:  Starting deployment template
   installation.

 ------------------------------------------------------------------------------
   The following app modules were specified on the command line argument:

   ../../reference/discover-data/deploy.xml
  

   Modules may be deployed standalone or on top of a base deployment type. Do
   you want to install a base deployment with the specified module(s)?

   Install base deployment? [Y/N]:
Y
05/26/2016 09:14:22 [AppDescriptorReader] INFO:  Parsing application descriptor
   file ../../reference/discover-data/deploy.xml.
05/26/2016 09:14:22 [AppDescriptorReader] INFO:  Parsing application descriptor
   file
   /opt/app/endeca/ToolsAndFrameworks/3.1.2/deployment_template/lib/../app-templates/base_descriptor.xml.

 ------------------------------------------------------------------------------
   Enter a short name for your application.

   Note: The name must conform to this regular expression: ^[a-zA-Z0-9]+$
    [default: Discover]

   Choosing a different application name may require additional configuration on
   your web application.

   Application name:
CRSen

 ------------------------------------------------------------------------------
   Specify the path into which the application will be deployed. The specified
   directory must exist and cannot contain spaces.

   For example, to deploy into /localdisk/apps/CRSen, specify the path as
   /localdisk/apps.

   Deployment directory:
/opt/app/endeca/apps

 ------------------------------------------------------------------------------
   Specify the port on which the Endeca Application Controller is running. This
   is configured in the server.xml file in the workspace of the Endeca software
   install and should be the same for all applications deployed in this
   environment. Ports must be in the range 1024-65535 [default: 8888].

   EAC port:
8888
05/26/2016 09:14:40 [deploy.pl] INFO:  Deploying application into
   /opt/app/endeca/apps/CRSen

 ------------------------------------------------------------------------------
   What port is the Workbench running? [Default: 8006]
8006

 ------------------------------------------------------------------------------
   What port should be used for the Live Dgraph? [Default: 15000]
15000

 ------------------------------------------------------------------------------
   What port should be used for the Authoring Dgraph? [Default: 15002]
15002

 ------------------------------------------------------------------------------
   What port should be used for LogServer? [Default: 15010]
15010
05/26/2016 09:14:54 [AppDescriptorReader] INFO:  Parsing application descriptor
   file
   /opt/app/endeca/ToolsAndFrameworks/3.1.2/deployment_template/lib/../app-templates/base_descriptor.xml.
05/26/2016 09:14:54 [deploy.pl] INFO:  Processing install with id 'Dgraph'
05/26/2016 09:14:54 [AppDescriptorReader] INFO:  Parsing application descriptor
   file ../../reference/discover-data/deploy.xml.
05/26/2016 09:14:54 [deploy.pl] INFO:  Processing install with id
   'DefaultTemplateManagerApp'
05/26/2016 09:14:54 [deploy.pl] INFO:  Application successfully deployed.