How to configure a data source of type Oracle to use with service name and not with SID. To be able to use the data objects.
When wanting to do it by service name, it shows us the following message:
Listener refused the connection with the following error ORA 12505 TNS listener does not currently know of SID given in connect descriptor ]
Release : 17.x
Component : Catalog - MDB Issue
Database Engine: Oracle
OOTB Catalog uses SID only for datasources
There is a customization (out of support scope) to change the connections from SID to Service Name:
1. Take a backup of C:\Program Files\CA\Service Catalog\view\webapps\usm\explorer\dataprocessor\dpicdbadd.xsl
2. Edit C:\Program Files\CA\Service Catalog\view\webapps\usm\explorer\dataprocessor\dpicdbadd.xsl and change the lines number 52,75 and 270.
From: odbcdsn.value = dburl.substr(dburl.lastIndexOf("/")+1);
To: odbcdsn.value = dburl.substr(dburl.lastIndexOf(":")+1);
From: k2 = dburl.indexOf("/", k1 + 1);
To: k2 = dburl.indexOf(":", k1 + 1);
From: db_url = "jdbc:oracle:thin:@" + hostname + ":" + dbport.value + "/" + db_name.value;
To: db_url = "jdbc:oracle:thin:@" + hostname + ":" + dbport.value + ":" + db_name.value;
3. Save changes
4. Delete translets
5. Restart Services