How To Remove Obsolete Custom Service From MDS DB

(Doc ID 2386203.1)

Last updated on APRIL 13, 2018

Applies to:

Oracle WebCenter Portal - Version 11.1.1.9.161128 and later
Information in this document applies to any platform.

Goal

In a custom Oracle WebCenter Portal Framework application, a custom search service "com.myserver.usersearch" was added. This service had following entry in META-INF/service-definition.xml file:

<service-definition id="com.myserver.usersearch" version="11.1.1.0.0">
<resource-view urlRewriterClass="com.myserver.tagrender.UserRewriter"/>
<name>Users</name>
<search-definition xmlns="http://xmlns.oracle.com/webcenter/search" id="com.myserver.usersearch" version="11.1.1.0.0">
<query-manager-class>
com.myserver.usersearch.UserQueryManager
</query-manager-class>
</search-definition>
</service-definition>

Later this service was removed from the application; it neither has service implementation nor xml configuration.

Ever since, the application retrieves user's search preferences:

import oracle.webcenter.search.model.SearchPreferences;

the following error is reported:

[2018-03-11T07:42:49.514-04:00] [AppServer3] [ERROR] [WCS-43067] [oracle.webcenter.framework.internal.service.ServiceUtils] [tid: [ACTIVE].ExecuteThread: '15' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: Xxxx.Xxxxxx] [ecid: 0054HNY6p9R8pmwLGEl3if00052F000Q75,0:2] [APP: myPortalApp#V3] [URI: /myPortalApp/faces/home.jspx] Error "Unable to find the service with ID "com.myserver.usersearch" in the service registry." getting service with ID "com.myserver.usersearch".
[2018-03-11T07:42:49.514-04:00] [AppServer3] [WARNING] [] [oracle.webcenter.framework.internal.service.ServiceUtils] [tid: [ACTIVE].ExecuteThread: '15' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: Xxxx.Xxxxxx] [ecid: 0054HNY6p9R8pmwLGEl3if00052F000Q75,0:2] [APP: myPortalApp#V3] [URI: /myPortalApp/faces/home.jspx] [[
oracle.webcenter.framework.service.ServiceNotFoundException: Unable to find the service with the ID "com.myserver.usersearch" in the service registry.
at oracle.webcenter.framework.service.ServiceRegistry.getService(ServiceRegistry.java:96)
at oracle.webcenter.framework.internal.service.ServiceUtils.getServiceById(ServiceUtils.java:315)
at oracle.webcenter.search.internal.model.util.FrameworkUtils.getServices(FrameworkUtils.java:763)
at oracle.webcenter.search.model.SearchPreferences.loadServiceIds(SearchPreferences.java:166)
at oracle.webcenter.search.model.SearchOptions.load(SearchOptions.java:314)
at oracle.webcenter.search.model.SearchPreferences.<init>(SearchPreferences.java:113)
at com.myserver.session.UserSessionMap.setDefaultSearchPreferences(UserSessionMap.java:95)

 

Quick research shows that MDS database still has entries referencing "com.myserver.usersearch" service.
How can the obsolete custom service "com.myserver.usersearch" be removed from the MDS DB?
Also, note that a number of application users already set "com.myserver.usersearch" service as selected in SearchPreferences. How can the these references be removed as well?


 

Solution

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms