cancel
Showing results for 
Search instead for 
Did you mean: 

How to configure a custom PropertySearchManager for a repository manager

Former Member
0 Kudos

All,

I am trying to configure a PropertySearchManager for my customRepositoryManager. I have defined in my.co.xml, the value for the property search manager class. <i><b><property name="propertysearchmgr.class" value="MyPropertySearchManager"/></b></i>. But after I deploy my par to the server, when I go to System configuration-Knowledge Management-content Management-Repository Managers, I cannot see MyPropertySearchManager in the pick list for PropertySearchManager.

Any idea why? How can I configure MyRepositoryManager to use MyPropertySearchManager?

Thanks,

Seema

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Is there anyone who has configured a custom PropertySearchManager?

Thanks,

Seema

detlev_beutner
Active Contributor
0 Kudos

Hi Seema,

check out the repository manager's cc.xml definition; for example, the CM repository definition offers the possibilities for a propertysearchmgr.class as follows:

<attribute name="propertysearchmgr.class" type="enum" values="com.sapportals.wcm.repository.manager.cm.CmPropertySearchManager" default="com.sapportals.wcm.repository.manager.cm.CmPropertySearchManager" mandatory="false" hotReload="false"/>

You can compare this via com.sap.netweaver.bc.rf.manager.par.bak - PORTAL-INF\config\bc.rf.manager.prjconfig.configarchive - install\meta\lib\bc.rf.manager.prjconfig.configmeta - cm\repository_managers\CmRepositoryManager.cc.xml

In the co.xml class of the allowed values (or: none) can be chosen.

Hope it helps

Detlev

Answers (5)

Answers (5)

Former Member
0 Kudos

Hi Detlev,

It works now! I can see the property manager

But now my repository manager won't start up. I have to set he value to 'Not Set' for my propertysearch manager for my repositorymanager to start up.

Could this be a bug?

I am attaching the stacktrace below:

#1.5#00110A54F4C4006100000687000039E800040CC98FD67B6C#1139959747991#com.sap.netweaver.bc.rf.mi.AbstractManager#sap.com/irj#com.sap.netweaver.bc.rf.mi.AbstractManager.start(569)#Guest#9####865dfe109db111dac94500110a54f4c4#J-Integra for .NET TP Thread 2##0#0#Error##Plain###Failed to start manager: com.sapportals.wcm.crt.component.StartupException: Exception loading and instanciating sub-manager: com.shell.siep.wp.LiveLinkPropertySearchManager (java.lang.NoSuchMethodException: com.shell.siep.wp.LiveLinkPropertySearchManager.<init>(com.sap.netweaver.bc.rf.mi.IManager))

at com.sap.netweaver.bc.rf.mi.AbstractManager.createSubManager(AbstractManager.java:790)

at com.sap.netweaver.bc.rf.mi.AbstractManager.start(AbstractManager.java:617)

at com.sapportals.wcm.crt.CrtThreadSafeComponentHandler.tryToStart(CrtThreadSafeComponentHandler.java:246)

at com.sapportals.wcm.crt.CrtThreadSafeComponentHandler.handleLookup(CrtThreadSafeComponentHandler.java:108)

at com.sapportals.wcm.crt.CrtComponentManager.lookup(CrtComponentManager.java:322)

at com.sapportals.wcm.crt.CrtComponentManager.lookupChildComponent(CrtComponentManager.java:403)

at com.sapportals.wcm.crt.CrtContainerManager.lookupComponent(CrtContainerManager.java:44)

at com.sapportals.wcm.repository.runtime.CmAdapter.lookupRepositoryManager(CmAdapter.java:485)

at com.sapportals.wcm.repository.runtime.CmAdapter.getRepositoryManager(CmAdapter.java:467)

at com.sapportals.wcm.repository.service.AbstractRepositoryService.start(AbstractRepositoryService.java:181)

at com.sapportals.wcm.crt.CrtThreadSafeComponentHandler.tryToStart(CrtThreadSafeComponentHandler.java:246)

at com.sapportals.wcm.crt.CrtThreadSafeComponentHandler.handleLookup(CrtThreadSafeComponentHandler.java:108)

at com.sapportals.wcm.crt.CrtComponentManager.lookup(CrtComponentManager.java:322)

at com.sapportals.wcm.crt.CrtComponentManager.lookupChildComponent(CrtComponentManager.java:403)

at com.sapportals.wcm.crt.CrtContainerManager.lookupComponent(CrtContainerManager.java:44)

at com.sapportals.wcm.crt.CrtSystemImpl.lookupComponentByUri(CrtSystemImpl.java:131)

at com.sapportals.wcm.crt.CrtComponentManager.startUp(CrtComponentManager.java:278)

at com.sapportals.wcm.crt.CrtSystemImpl.startUpComponentManager(CrtSystemImpl.java:166)

at com.sapportals.wcm.repository.runtime.CmSystem.startUp(CmSystem.java:225)

at com.sapportals.wcm.repository.runtime.CmSystem.getInstance(CmSystem.java:164)

at com.sapportals.wcm.repository.runtime.CmAdapter.getResourceImpl(CmAdapter.java:974)

at com.sapportals.wcm.repository.runtime.CmAdapter.getResource(CmAdapter.java:192)

at com.sapportals.wcm.portal.service.KMServiceImpl.afterInit(KMServiceImpl.java:215)

at com.sapportals.portal.prt.core.broker.PortalServiceItem.__initServiceInstanceStep2(PortalServiceItem.java:867)

at com.sapportals.portal.prt.core.broker.PortalServiceItem.startServices(PortalServiceItem.java:1081)

at com.sapportals.portal.prt.core.broker.PortalAppBroker.startLoadOnStartupServices(PortalAppBroker.java:1610)

at com.sapportals.portal.prt.core.broker.PortalAppBroker.start(PortalAppBroker.java:1565)

at com.sapportals.portal.prt.core.broker.PortalAppBroker.startNonCoreApplications(PortalAppBroker.java:1516)

at com.sapportals.portal.prt.runtime.Portal.init(Portal.java:413)

at com.sapportals.portal.prt.core.PortalCoreInitializer.coreInit(PortalCoreInitializer.java:54)

at com.sapportals.portal.prt.dispatcher.PortalInitializer.<init>(PortalInitializer.java:129)

at com.sapportals.portal.prt.dispatcher.Dispatcher$doSetupPortalInitializer.run(Dispatcher.java:161)

at java.security.AccessController.doPrivileged(Native Method)

at com.sapportals.portal.prt.dispatcher.Dispatcher.initDispatcher(Dispatcher.java:359)

at com.sapportals.portal.prt.dispatcher.Dispatcher.access$000(Dispatcher.java:42)

at com.sapportals.portal.prt.dispatcher.Dispatcher$InitRunner.run(Dispatcher.java:114)

at com.sapportals.portal.prt.dispatcher.Dispatcher.init(Dispatcher.java:392)

at com.sap.engine.services.servlets_jsp.server.runtime.context.WebComponents.addServlet(WebComponents.java:138)

at com.sap.engine.services.servlets_jsp.server.container.ApplicationThreadInitializer.loadServlets(ApplicationThreadInitializer.java:376)

at com.sap.engine.services.servlets_jsp.server.container.ApplicationThreadInitializer.run(ApplicationThreadInitializer.java:110)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged(Native Method)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:95)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:160)

java.lang.NoSuchMethodException: com.shell.siep.wp.LiveLinkPropertySearchManager.<init>(com.sap.netweaver.bc.rf.mi.IManager)

at java.lang.Class.getConstructor0(Class.java:1937)

at java.lang.Class.getConstructor(Class.java:1027)

at com.sap.netweaver.bc.rf.mi.AbstractManager.createSubManager(AbstractManager.java:785)

at com.sap.netweaver.bc.rf.mi.AbstractManager.start(AbstractManager.java:617)

at com.sapportals.wcm.crt.CrtThreadSafeComponentHandler.tryToStart(CrtThreadSafeComponentHandler.java:246)

at com.sapportals.wcm.crt.CrtThreadSafeComponentHandler.handleLookup(CrtThreadSafeComponentHandler.java:108)

at com.sapportals.wcm.crt.CrtComponentManager.lookup(CrtComponentManager.java:322)

at com.sapportals.wcm.crt.CrtComponentManager.lookupChildComponent(CrtComponentManager.java:403)

at com.sapportals.wcm.crt.CrtContainerManager.lookupComponent(CrtContainerManager.java:44)

at com.sapportals.wcm.repository.runtime.CmAdapter.lookupRepositoryManager(CmAdapter.java:485)

at com.sapportals.wcm.repository.runtime.CmAdapter.getRepositoryManager(CmAdapter.java:467)

at com.sapportals.wcm.repository.service.AbstractRepositoryService.start(AbstractRepositoryService.java:181)

at com.sapportals.wcm.crt.CrtThreadSafeComponentHandler.tryToStart(CrtThreadSafeComponentHandler.java:246)

at com.sapportals.wcm.crt.CrtThreadSafeComponentHandler.handleLookup(CrtThreadSafeComponentHandler.java:108)

at com.sapportals.wcm.crt.CrtComponentManager.lookup(CrtComponentManager.java:322)

at com.sapportals.wcm.crt.CrtComponentManager.lookupChildComponent(CrtComponentManager.java:403)

at com.sapportals.wcm.crt.CrtContainerManager.lookupComponent(CrtContainerManager.java:44)

at com.sapportals.wcm.crt.CrtSystemImpl.lookupComponentByUri(CrtSystemImpl.java:131)

at com.sapportals.wcm.crt.CrtComponentManager.startUp(CrtComponentManager.java:278)

at com.sapportals.wcm.crt.CrtSystemImpl.startUpComponentManager(CrtSystemImpl.java:166)

at com.sapportals.wcm.repository.runtime.CmSystem.startUp(CmSystem.java:225)

at com.sapportals.wcm.repository.runtime.CmSystem.getInstance(CmSystem.java:164)

at com.sapportals.wcm.repository.runtime.CmAdapter.getResourceImpl(CmAdapter.java:974)

at com.sapportals.wcm.repository.runtime.CmAdapter.getResource(CmAdapter.java:192)

at com.sapportals.wcm.portal.service.KMServiceImpl.afterInit(KMServiceImpl.java:215)

at com.sapportals.portal.prt.core.broker.PortalServiceItem.__initServiceInstanceStep2(PortalServiceItem.java:867)

at com.sapportals.portal.prt.core.broker.PortalServiceItem.startServices(PortalServiceItem.java:1081)

at com.sapportals.portal.prt.core.broker.PortalAppBroker.startLoadOnStartupServices(PortalAppBroker.java:1610)

at com.sapportals.portal.prt.core.broker.PortalAppBroker.start(PortalAppBroker.java:1565)

at com.sapportals.portal.prt.core.broker.PortalAppBroker.startNonCoreApplications(PortalAppBroker.java:1516)

at com.sapportals.portal.prt.runtime.Portal.init(Portal.java:413)

at com.sapportals.portal.prt.core.PortalCoreInitializer.coreInit(PortalCoreInitializer.java:54)

at com.sapportals.portal.prt.dispatcher.PortalInitializer.<init>(PortalInitializer.java:129)

at com.sapportals.portal.prt.dispatcher.Dispatcher$doSetupPortalInitializer.run(Dispatcher.java:161)

at java.security.AccessController.doPrivileged(Native Method)

at com.sapportals.portal.prt.dispatcher.Dispatcher.initDispatcher(Dispatcher.java:359)

at com.sapportals.portal.prt.dispatcher.Dispatcher.access$000(Dispatcher.java:42)

at com.sapportals.portal.prt.dispatcher.Dispatcher$InitRunner.run(Dispatcher.java:114)

at com.sapportals.portal.prt.dispatcher.Dispatcher.init(Dispatcher.java:392)

at com.sap.engine.services.servlets_jsp.server.runtime.context.WebComponents.addServlet(WebComponents.java:138)

at com.sap.engine.services.servlets_jsp.server.container.ApplicationThreadInitializer.loadServlets(ApplicationThreadInitializer.java:376)

at com.sap.engine.services.servlets_jsp.server.container.ApplicationThreadInitializer.run(ApplicationThreadInitializer.java:110)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged(Native Method)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:95)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:160)

Seema

detlev_beutner
Active Contributor
0 Kudos

Hi Seema,

seems that your implementation is missing the constructor of the form

public LiveLinkPropertySearchManager(IRepositoryManager manager) {
  ...
}

Hope it helps

Detlev

Former Member
0 Kudos

Thank You all for the responses and the links. I do already have these links. Perhaps I did not explain my problem correctly.

My problem is that I am not able to view the ProperySearchManager which I developed. If I go to <i><b>System configuration-Knowledge Management-content Management-Repository Managers</b></i>, it gives me options to configure Namespace Manager, content Manager, property Manager , versioning manager etc. Similarly there is an option to set <i><b>Property Search Manager</b></i> which is a drop down box which currently shows only two options: <u><i><b>"Not Set" and "com.sapportals.wcm.repository.manager.generic.search.SimplePropertySearchManager".</b></i></u> I cannot see the ProperySearchManager which I have developed and which is a part of the par file I have deployed and which I also have defined in my co.xml file <property name="propertysearchmgr.class" value="MyPropertySearchManager"/>.

My question is do I need to configure MyProperySearchManager somewhere else to make it appear in this drop down box, so that I can choose MyProperySearchManager to be used by my custom repository manager.

Thanks,

Seema

Former Member
0 Kudos

hi,

For selection of the manager for the property search,

choose the CM Property Search Manager.

No parameters are required.

For details go to the following link.

https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/6b30b090-0201-0010-829d-e98...

Former Member
0 Kudos
Former Member
0 Kudos

hi Seema,

checkout How to implement repository manager in the link..

https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/6b30b090-0201-0010-829d-e98...

hope it helps..,

regards,

Vinoth