Custom portal service ??
hi,
does a custom portal service get listed under sys admin ->sys config -> service config -> applications...
I can not seem to find it under that.
Pls help
Thanks
Thanks Harini
Curious, I did not find my service under,System Admin -- System Config -- Service Config
but did find it under System Administration --> Support --> Portal Runtime --> Application Console
Under the console, it shows the these properties,
Class Name : <mu class name>
Class Name Factory: none
Pool Size: 0
Nb Accessed: 0
Last Accessed Time: <time stamp>
Last Stopped Time: <time stamp>
State: statrted
Is there any thing wrong with the service? the class name facotry does not show anything...
Also is i can not find it under service config
Any help is appreciated.
Thanks
Aakash
Similar Messages
-
Custom Portal Services and Web services
Can you please tell me what exactly are "custom portal services" and "web services" with a business like/ real life example?
How do you go about developing deploying and utilizing these services in Portal?
Thanks.Hi navin,
Thanks for the par file.
Duly awarded points.
I need your help again.
I wish to use the method
public String getWelcomeString(String name)
in my own portal application to test usage of portal services.
So I uploaded your par file on my server.
Then I added the api and core jar files which came along with your par in my project as external jar files.
I imported com.wickes.WickesService.*;
Next, to use the service I coded:
IPortalRuntimeResources rs =
PortalRuntime.getRuntimeResources();
IWickesService ws = (IWickesService) rs.getService(IWickesService.KEY);
But now I am stuck and I dont know how to proceed.
Please help. -
Accessing custom Portal service from a java application
We have a custom portal service that connects to BW using xmla. How do you access this portal service from a java application. Not from web dynpro, jsp or servlet but from the java code.
Can we use the INITIAL_CONTEXT_FACTORY to get access to the portal service.
Thank You
D.KNow I tried the following:
I've added the prtapi.jar and the service's jar to the additional-lib folder and added the appropriate entries to library.txt and reference.txt.
Now I can obtain now the PortalRuntime, but this is not initialized.
Has anybody a solution for this problem? Help would be high appreciated!
Regards,
Matthias -
Custom Portal Service Scalability and Performance
I want to know if Custom Portal Services are scalable enough to handle 300 concurrent users ?
We are developing custom portal services to consume web service to get response and to send request to an endpoint.
These portal services will be accessed by portal components.
We are expecting around 300 concurrent users.
So whether the custom portal services are scalable ? Does SAP provide support to this kind of architecture ?
thanks in advanceHI,
the portal can support several thousand concurrent users. You only have make a proper sizing (SAPS) and setup your landscape correctly.
As for the custom portal service: of course this is scalable, but the performance depends on your coding skills and what the service will do.
AFAIK SAP offers support for running custom code running on the platform, but not for errors made by the custom code. There is (was, will be) a service from SAP were they check your code for known issues.
br,
Tobias -
Custom portal service not running ni NW 04
Hello!
We are about to migrate from EP6 SP2 to NW04 and I'm currently testing the results of the first test run.
One special problem I encountered is one of my custom portal services no longer running. It did without flaws back in EP6, so something seems to have changed.
My Service interface:
[code]
package com.rag.ekportal.bginfocenter.kmservice;
@author Juergen Wahlmann
public interface IBGFetcher extends IService {
[/code]
And the implementation:
[code]
package com.rag.ekportal.bginfocenter.kmservice;
public class BGFetcher implements IBGFetcher, Runnable {
[/code]
portalapp.xml
[code]
<?xml version="1.0" encoding="UTF-8"?>
<application>
<application-config>
</application-config>
<components>
<component name="BGViewer">
<component-config>
<property name="ClassName" value="com.rag.ekportal.bginfocenter.bgview.control.BGViewer">
</property>
<property name="SecurityZone" value="sbi-ruhr.de/ekportal/medium_safety/com.rag.ekportal/components/bgviewer">
</property>
<property name="ResourceBundleName" value="bginfocenter">
</property>
<property name="ServicesReference" value="usermanagement,knowledgemanagement,com.rag.ekportal.bginfocenter.kmservice.BGFetcher,com.sap.portal.ivs.connectorservice,landscape">
</property>
</component-config>
<component-profile>
<property name="tagLib" value="/SERVICE/htmlb/taglib/htmlb.tld">
<property name="personalization" value="none">
</property>
</property>
<property name="templatesfolderName" value="Vorlagen">
</property>
<property name="guidelinesfolderName" value="Richtlinien">
</property>
<property name="bgContactsfolderName" value="BG-Ansprechpartner">
</property>
<property name="ksb2folderName" value="KSB 2">
</property>
<property name="bgControllingfolderName" value="BG-Controlling">
</property>
<property name="rvURL" value="/irj/servlet/prt/portal/prtroot/pcd!3aportal_content!2fcom.fo.admin!2fcom.admin.fo.iview!2fcom.admin.iview.fo.ri!2fcom.admin.iview.ri.fo.rag!2fcom.admin.iview.ri.rag.iv.begis_0_0?numberBG=">
</property>
<property name="KmServiceUser" value="KM Service User">
</property>
<property name="systemAlias" value="BeGIS_RV_DB">
<property name="personalization" value="admin"/>
<property name="plainDescription" value="JDBC System object for DB access"/>
</property>
<property name="table" value="janus_contract_bg_v">
<property name="personalization" value="admin"/>
<property name="plainDescription" value="Database View for reading contracts"/>
</property>
<property name="table1" value="user_roles_v">
<property name="personalization" value="admin"/>
<property name="plainDescription" value="Database Table for checking user role in RV DB"/>
</property>
</component-profile>
</component>
</components>
<services>
<service name="BGFetcher">
<service-config>
<property name="className" value="com.rag.ekportal.bginfocenter.kmservice.BGFetcher">
</property>
<property name="startup" value="true">
</property>
<property name="SecurityZone" value="sbi-ruhr.de/ekportal/medium_safety/com.rag.ekportal/services/bgfetcher">
</property>
</service-config>
<service-profile>
<property name="interval" value="300000">
</property>
<property name="enable" value="false">
<property name="type" value="boolean">
</property>
</property>
<property name="numberofruns" value="1">
</property>
<property name="repository" value="/rag_bgm_test/Beschaffungsgruppen">
</property>
<property name="KmServiceUser" value="KM Service User">
</property>
<property name="dbServer" value="xxx">
</property>
<property name="dbUser" value="xxx">
</property>
<property name="dbPassword" value="xxx">
</property>
<property name="dbName" value="xxx">
</property>
<property name="workfolderName" value="Arbeitsordner">
</property>
<property name="teamfolderName" value="Teamordner">
</property>
<property name="contactfolderName" value="Ansprechpartner">
</property>
<property name="publicfolderName" value="u00D6ffentlicher Ordner">
</property>
<property name="deletedfolderName" value="/rag_bgm_test/Gelu00F6scht/">
</property>
</service-profile>
</service>
</services>
</application>
[/code]
The service didn't work after the migration, so I tried to deploy it again. This is the result:
[code]
Date : 01/12/2006
Time : 13:31:37:880
Message : [PortalServiceItem.startServices] service initialisation failed:com.rag.ekportal.bginfocenter.kmservice|BGFetcher
[EXCEPTION]
java.lang.NoClassDefFoundError: com/sapportals/wcm/repository/ResourceException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:219)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.__createServiceInstance(PortalServiceItem.java:727)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.createServiceInstance(PortalServiceItem.java:613)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.startServices(PortalServiceItem.java:1042)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.startLoadOnStartupServices(PortalAppBroker.java:1563)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.start(PortalAppBroker.java:1518)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.restartQueuedApplication(PortalAppBroker.java:1866)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.updateApplications(PortalAppBroker.java:1702)
at com.sapportals.portal.prt.deployment.DeploymentManager.updateApplications(DeploymentManager.java:1754)
at com.sap.ip.portal.admin.portalanywhere.QueryHandler.handleTopic(QueryHandler.java:152)
at com.sapportals.portal.prt.service.notification.impl.NotificationSAPJ2EE630.executeActionHandleTopic(NotificationSAPJ2EE630.java:1141)
at com.sapportals.portal.prt.service.notification.impl.NotificationSAPJ2EE630.notifyActionSubscribers(NotificationSAPJ2EE630.java:1089)
at com.sapportals.portal.prt.service.notification.impl.NotificationSAPJ2EE630.receiveWait(NotificationSAPJ2EE630.java:386)
at com.sapportals.portal.prt.service.notification.impl.NotificationSAPJ2EE630.broadcastAndWait(NotificationSAPJ2EE630.java:553)
at com.sapportals.portal.prt.service.notification.NotificationServiceDispatcher.broadcastAndWait(NotificationServiceDispatcher.java:192)
at com.sap.ip.portal.admin.portalanywhere.EventForwarder.sendQueryAndGetResults(EventForwarder.java:122)
at com.sap.ip.portal.admin.portalanywhere.EventForwarder.sendQueryToAllServers(EventForwarder.java:144)
at com.sap.ip.portal.admin.portalanywhere.EventForwarder.forwardEventToAllServers(EventForwarder.java:135)
at com.sap.ip.portal.admin.portalanywhere.ArchiveUploader.forwardUpdateToAllServers(ArchiveUploader.java:253)
at com.sap.ip.portal.admin.portalanywhere.ArchiveUploader.doContent(ArchiveUploader.java:235)
at com.sapportals.portal.prt.component.AbstractPortalComponent.serviceDeprecated(AbstractPortalComponent.java:209)
at com.sapportals.portal.prt.component.AbstractPortalComponent.service(AbstractPortalComponent.java:114)
at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)
at com.sapportals.portal.prt.component.PortalComponentResponse.include(PortalComponentResponse.java:215)
at com.sapportals.portal.prt.pom.PortalNode.service(PortalNode.java:646)
at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)
at com.sapportals.portal.prt.core.PortalRequestManager.runRequestCycle(PortalRequestManager.java:753)
at com.sapportals.portal.prt.connection.ServletConnection.handleRequest(ServletConnection.java:240)
at com.sapportals.portal.prt.dispatcher.Dispatcher$doService.run(Dispatcher.java:522)
at java.security.AccessController.doPrivileged(Native Method)
at com.sapportals.portal.prt.dispatcher.Dispatcher.service(Dispatcher.java:405)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.servlet.InvokerServlet.service(InvokerServlet.java:156)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
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)
Severity : Error
Category : /System/Server
Location : com.sap.portal.prt.runtime.broker
Application : sap.com/irj
Thread : SAPEngine_Application_Thread[impl:3]_15
Datasource : 2390950:E:\usr\sap\PMT\JC00\j2ee\cluster\server0\log\defaultTrace.trc
Message ID : 000C29A5B62A00400000001300000A4000040A2887A939D9
Source Name : com.sap.portal.prt.runtime.broker
Argument Objs : java.lang.NoClassDefFoundError: com/sapportals/wcm/repository/ResourceException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:219)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.__createServiceInstance(PortalServiceItem.java:727)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.createServiceInstance(PortalServiceItem.java:613)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.startServices(PortalServiceItem.java:1042)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.startLoadOnStartupServices(PortalAppBroker.java:1563)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.start(PortalAppBroker.java:1518)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.restartQueuedApplication(PortalAppBroker.java:1866)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.updateApplications(PortalAppBroker.java:1702)
at com.sapportals.portal.prt.deployment.DeploymentManager.updateApplications(DeploymentManager.java:1754)
at com.sap.ip.portal.admin.portalanywhere.QueryHandler.handleTopic(QueryHandler.java:152)
at com.sapportals.portal.prt.service.notification.impl.NotificationSAPJ2EE630.executeActionHandleTopic(NotificationSAPJ2EE630.java:1141)
at com.sapportals.portal.prt.service.notification.impl.NotificationSAPJ2EE630.notifyActionSubscribers(NotificationSAPJ2EE630.java:1089)
at com.sapportals.portal.prt.service.notification.impl.NotificationSAPJ2EE630.receiveWait(NotificationSAPJ2EE630.java:386)
at com.sapportals.portal.prt.service.notification.impl.NotificationSAPJ2EE630.broadcastAndWait(NotificationSAPJ2EE630.java:553)
at com.sapportals.portal.prt.service.notification.NotificationServiceDispatcher.broadcastAndWait(NotificationServiceDispatcher.java:192)
at com.sap.ip.portal.admin.portalanywhere.EventForwarder.sendQueryAndGetResults(EventForwarder.java:122)
at com.sap.ip.portal.admin.portalanywhere.EventForwarder.sendQueryToAllServers(EventForwarder.java:144)
at com.sap.ip.portal.admin.portalanywhere.EventForwarder.forwardEventToAllServers(EventForwarder.java:135)
at com.sap.ip.portal.admin.portalanywhere.ArchiveUploader.forwardUpdateToAllServers(ArchiveUploader.java:253)
at com.sap.ip.portal.admin.portalanywhere.ArchiveUploader.doContent(ArchiveUploader.java:235)
at com.sapportals.portal.prt.component.AbstractPortalComponent.serviceDeprecated(AbstractPortalComponent.java:209)
at com.sapportals.portal.prt.component.AbstractPortalComponent.service(AbstractPortalComponent.java:114)
at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)
at com.sapportals.portal.prt.component.PortalComponentResponse.include(PortalComponentResponse.java:215)
at com.sapportals.portal.prt.pom.PortalNode.service(PortalNode.java:646)
at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)
at com.sapportals.portal.prt.core.PortalRequestManager.runRequestCycle(PortalRequestManager.java:753)
at com.sapportals.portal.prt.connection.ServletConnection.handleRequest(ServletConnection.java:240)
at com.sapportals.portal.prt.dispatcher.Dispatcher$doService.run(Dispatcher.java:522)
at java.security.AccessController.doPrivileged(Native Method)
at com.sapportals.portal.prt.dispatcher.Dispatcher.service(Dispatcher.java:405)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.servlet.InvokerServlet.service(InvokerServlet.java:156)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
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)
Arguments : java.lang.NoClassDefFoundError: com/sapportals/wcm/repository/ResourceException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:219)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.__createServiceInstance(PortalServiceItem.java:727)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.createServiceInstance(PortalServiceItem.java:613)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.startServices(PortalServiceItem.java:1042)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.startLoadOnStartupServices(PortalAppBroker.java:1563)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.start(PortalAppBroker.java:1518)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.restartQueuedApplication(PortalAppBroker.java:1866)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.updateApplications(PortalAppBroker.java:1702)
at com.sapportals.portal.prt.deployment.DeploymentManager.updateApplications(DeploymentManager.java:1754)
at com.sap.ip.portal.admin.portalanywhere.QueryHandler.handleTopic(QueryHandler.java:152)
at com.sapportals.portal.prt.service.notification.impl.NotificationSAPJ2EE630.executeActionHandleTopic(NotificationSAPJ2EE630.java:1141)
at com.sapportals.portal.prt.service.notification.impl.NotificationSAPJ2EE630.notifyActionSubscribers(NotificationSAPJ2EE630.java:1089)
at com.sapportals.portal.prt.service.notification.impl.NotificationSAPJ2EE630.receiveWait(NotificationSAPJ2EE630.java:386)
at com.sapportals.portal.prt.service.notification.impl.NotificationSAPJ2EE630.broadcastAndWait(NotificationSAPJ2EE630.java:553)
at com.sapportals.portal.prt.service.notification.NotificationServiceDispatcher.broadcastAndWait(NotificationServiceDispatcher.java:192)
at com.sap.ip.portal.admin.portalanywhere.EventForwarder.sendQueryAndGetResults(EventForwarder.java:122)
at com.sap.ip.portal.admin.portalanywhere.EventForwarder.sendQueryToAllServers(EventForwarder.java:144)
at com.sap.ip.portal.admin.portalanywhere.EventForwarder.forwardEventToAllServers(EventForwarder.java:135)
at com.sap.ip.portal.admin.portalanywhere.ArchiveUploader.forwardUpdateToAllServers(ArchiveUploader.java:253)
at com.sap.ip.portal.admin.portalanywhere.ArchiveUploader.doContent(ArchiveUploader.java:235)
at com.sapportals.portal.prt.component.AbstractPortalComponent.serviceDeprecated(AbstractPortalComponent.java:209)
at com.sapportals.portal.prt.component.AbstractPortalComponent.service(AbstractPortalComponent.java:114)
at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)
at com.sapportals.portal.prt.component.PortalComponentResponse.include(PortalComponentResponse.java:215)
at com.sapportals.portal.prt.pom.PortalNode.service(PortalNode.java:646)
at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)
at com.sapportals.portal.prt.core.PortalRequestManager.runRequestCycle(PortalRequestManager.java:753)
at com.sapportals.portal.prt.connection.ServletConnection.handleRequest(ServletConnection.java:240)
at com.sapportals.portal.prt.dispatcher.Dispatcher$doService.run(Dispatcher.java:522)
at java.security.AccessController.doPrivileged(Native Method)
at com.sapportals.portal.prt.dispatcher.Dispatcher.service(Dispatcher.java:405)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.servlet.InvokerServlet.service(InvokerServlet.java:156)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
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)
Dsr Component :
Dsr Transaction : 5f940fe0836711da887d000c29a5b62a
Dsr User :
Indent : 0
Level : 0
Message Code :
Message Type : 1
Relatives : /System/Server
Resource Bundlename :
Session : 2391
Source : com.sap.portal.prt.runtime.broker
ThreadObject : SAPEngine_Application_Thread[impl:3]_15
Transaction :
User : xxx
[/code]
Looks like something is wrong in the service definition (portalapp.xml) but I have no clue. Class names are spelled right, settings the same as in EP6 SP2, yet the portal engine is not able to find the implementation class of the service.
Any ideas?
Cheers,
JuergenHi Detlev!
The ServiceReference definition previously was located in the application config under SP2, but didn't work either.
Now I found the solution. A sharing reference of all non-custom services in the application config and an additional sharing reference to my custom service in the portal application's config like this:
<application-config>
<property name="SharingReference" value="usermanagement,knowledgemanagement,com.sap.portal.ivs.connectorservice,landscape">
</property>
</application-config>
<components>
<component name="BGViewer">
<component-config>
<property name="ClassName" value="com.rag.ekportal.bginfocenter.bgview.control.BGViewer">
</property>
<property name="SecurityZone" value="sbi-ruhr.de/ekportal/medium_safety/com.rag.ekportal/components/bgviewer">
</property>
<property name="ResourceBundleName" value="bginfocenter">
</property>
<property name="SharingReference" value="com.rag.ekportal.bginfocenter.KMService.BGFetcher">
</property>
</component-config>
Case closed, thx for you hint. I awarded points.
Cheers,
Jürgen
Message was edited by: Juergen Wahlmann, solution included -
How to find the JAR files of a custom portal service?
Hi all,
I have created and deployed a custom protal service on to the portal. Now for any of the other apps to make use of this service, i need the JAR files which correspond to this portal service. Where do I find them??
Regards,
Narahari
Message was edited by: Narahari VedulaHi,
Can you check up if this is located in the following path.
System Administration ->Support->Portal Runtime
Here navigate to ROOT/WEB-INF/portal/portalapps
Open the folder with the name of the par file and check up if you can locate the jar.
Regards,
Harish
(Please award points in case this helps) -
Custom Portal Service not displayed under Service Configuration
Hi All,
I am working on EP 7.0 SP8.
SAP Portal is not displaying any custom built Portal Services under Service Configuration tab.
I checked with the permission, and I am having the required authorization for my service.
I am not able to find any document on making the custom service available under Service Configutation to start/stop the service.
Please let me know any reference docs on this.
-Thanks,
PavanHi Pavan,
> working on EP 7.0 SP8
Glad to hear that you are not stuck on EP5 No, really, that is older than old... Anyhow:
> not displaying any custom built Portal Services under Service Configuration tab
There services are only listed if they are configurable, i.e. if they have a service profile with at least one property (compare http://help.sap.com/saphelp_nw70ehp2/helpdata/en/df/e6b74253ffda11e10000000a155106/frameset.htm). Otherwise it makes less sense to restart a service (normally this is done after changing a service profile parameter).
Hope it helps
Detlev -
Can you call a SAP java Portal Service from the Dot Net code?
Is there a link to a document or snippet of code to call a customized Portal Service in a Dot Net code?
Hi Steve,
yes.,u can call a java portal service in .net.,the only thing what u need to do is to establish that portal service as web service and use that web service in ur code..
Regards,
Vinoth -
Hi all,
I've developed a custom portal service based on
the com.sap.netweaver.kmc.globalservice.zip example
available on NWDS Help. When I deploy it, the service
works ok but whenever I restart the J2EE instance it
doesn't start. I've already tried to undeploy the
application, shutdown, start, deploy and start sequence
that I found on another discussion from who seemed to
have the same problem but it didn't work.
Thanks in advanced,
Here's my portalapp.xml:
<?xml version="1.0" encoding="utf-8"?>
<application name="com.redcolombia.portal.km" alias="com.redcolombia.portal.km">
<application-config>
<property name="startup" value="true"/>
<property name="PrivateSharingReference" value="com.sap.portal.runtime.config, com.sap.portal.runtime.config.component, usermanagement, com.sap.netweaver.bc.crt, com.sap.netweaver.bc.util, com.sap.netweaver.bc.sf, com.sap.netweaver.bc.rf, com.sap.netweaver.bc.sf.service, com.sap.netweaver.bc.rf.service, com.sap.portal.ivs.connectorservice"/>
</application-config>
<components/>
<services>
<service name="DocumentosRecientesKM">
<service-config>
<property name="className" value="com.redcolombia.portal.km.DocumentosRecientesKM"/>
<property name="startup" value="true"/>
</service-config>
<service-profile>
<property name="Repository" value="documents"/>
</service-profile>
</service>
</services>
</application>
Here's the log extract from the J2EE trace file:
#1.5#0008540656D80060000001EF00000B1000040BAEAF4AE49A#1138744800314#com.sapportals.wcm.util.logging.CatchBlockHandler#sap.com/irj#com.sapportals.wcm.util.logging.CatchBlockHandler.CatchBlockHandler#Guest#192####cfdc3ce092a411dab3400008540656d8#SAPEngine_Application_Thread[impl:3]_33##0#0#Error##Plain###[INTERNAL] com.sapportals.wcm.util.profiler.IProfiler: java.lang.ClassNotFoundException: com.sapportals.wcm.util.profiler.IProfiler
at com.sapportals.wcm.crt.CrtClassLoaderRegistry.findClass(CrtClassLoaderRegistry.java:176)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:219)
at com.sapportals.wcm.crt.CrtClassLoaderRegistry.forName(CrtClassLoaderRegistry.java:349)
at com.sapportals.wcm.util.logging.CatchBlockHandler.<clinit>(CatchBlockHandler.java:61)
at com.sapportals.wcm.repository.ResourceFactory.getInstance(ResourceFactory.java:57)
at com.redcolombia.portal.km.DocumentosRecientesKM.register(DocumentosRecientesKM.java:202)
at com.redcolombia.portal.km.DocumentosRecientesKM.init(DocumentosRecientesKM.java:72)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.__initServiceInstance(PortalServiceItem.java:801)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.createServiceInstance(PortalServiceItem.java:614)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.startServices(PortalServiceItem.java:1042)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.startLoadOnStartupServices(PortalAppBroker.java:1563)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.start(PortalAppBroker.java:1518)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.startNonCoreApplications(PortalAppBroker.java:1469)
at com.sapportals.portal.prt.runtime.Portal.init(Portal.java:406)
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:100)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
#1.5#0008540656D80060000001F000000B1000040BAEAF4B3DE2#1138744800330#com.sapportals.wcm.WcmException#sap.com/irj#com.sapportals.wcm.WcmException.WcmException(118)#Guest#192####cfdc3ce092a411dab3400008540656d8#SAPEngine_Application_Thread[impl:3]_33##0#0#Error##Plain###com.sapportals.wcm.repository.runtime.CmAdapter java.lang.ClassNotFoundException: com.sapportals.wcm.repository.runtime.CmAdapter
at com.sapportals.wcm.crt.CrtClassLoaderRegistry.findClass(CrtClassLoaderRegistry.java:176)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:219)
at com.sapportals.wcm.crt.CrtClassLoaderRegistry.forName(CrtClassLoaderRegistry.java:349)
at com.sapportals.wcm.repository.ResourceFactory.getInstance(ResourceFactory.java:48)
at com.redcolombia.portal.km.DocumentosRecientesKM.register(DocumentosRecientesKM.java:202)
at com.redcolombia.portal.km.DocumentosRecientesKM.init(DocumentosRecientesKM.java:72)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.__initServiceInstance(PortalServiceItem.java:801)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.createServiceInstance(PortalServiceItem.java:614)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.startServices(PortalServiceItem.java:1042)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.startLoadOnStartupServices(PortalAppBroker.java:1563)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.start(PortalAppBroker.java:1518)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.startNonCoreApplications(PortalAppBroker.java:1469)
at com.sapportals.portal.prt.runtime.Portal.init(Portal.java:406)
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:100)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
#1.5#0008540656D80060000001F200000B1000040BAEAF4B988D#1138744800361#com.sap.portal.prt.runtime.broker#sap.com/irj#com.sap.portal.prt.runtime.broker#Guest#192####cfdc3ce092a411dab3400008540656d8#SAPEngine_Application_Thread[impl:3]_33##0#0#Error#1#/System/Server#Java###[PortalServiceItem.startServices] service initialisation failed:RecientesKMService|DocumentosRecientesKM
[EXCEPTION]
#1#com.sapportals.portal.prt.core.broker.PortalServiceInstantiationException: Could not instantiate implementation class com.redcolombia.portal.km.DocumentosRecientesKM of Portal Service RecientesKMService|DocumentosRecientesKM because: could not load the service
at com.sapportals.portal.prt.core.broker.PortalServiceItem.__initServiceInstance(PortalServiceItem.java:820)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.createServiceInstance(PortalServiceItem.java:614)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.startServices(PortalServiceItem.java:1042)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.startLoadOnStartupServices(PortalAppBroker.java:1563)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.start(PortalAppBroker.java:1518)
at com.sapportals.portal.prt.core.broker.PortalAppBroker.startNonCoreApplications(PortalAppBroker.java:1469)
at com.sapportals.portal.prt.runtime.Portal.init(Portal.java:406)
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:100)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
Caused by: java.lang.NullPointerException
at com.redcolombia.portal.km.DocumentosRecientesKM.register(DocumentosRecientesKM.java:216)
at com.redcolombia.portal.km.DocumentosRecientesKM.init(DocumentosRecientesKM.java:72)
at com.sapportals.portal.prt.core.broker.PortalServiceItem.__initServiceInstance(PortalServiceItem.java:801)
... 21 moreHi Detlev,
Thanks for pointing that out. I've solved that
NullPointerException and the service comes up, however, my service fails to register as a ResourceEventReceiver so it is up but it doesn't do its job.
In my service I try to register as an
ResourceEventReceiver by implementing the
IResourceEventReceiver inteface. This is what is failing
in my service. Is there some service properties that are
needed for this that I don't know of?
This is my code:
public final void register(String repositoryName) {
if( repositoryName == null ){
log.fatalT("Repository Property is NULL...not doing anything...");
return;
IManagerFactory managerFactory;
IRepositoryManager repository=null;
try {
managerFactory = ResourceFactory.getInstance().getManagerFactory();
repository = managerFactory.getRepositoryManager(repositoryName);
IResourceEventBroker broker = repository.getEventBroker();
if( broker == null ) return;
boolean async = false; // register as synchronous event receiver
broker.register(this, resourceReadEvent, IEventBroker.PRIO_MIN, async);
log.fatalT("Registered to " + repository.getPrefix()" Prefix="repository.getPrefix());
catch( WcmException e ) {
//log.fatalT("exception while registering to " + repository==null?null:repository.getPrefix() + ": " + e.getMessage());
log.fatalT("Exception while registering to repository error: "+e.getMessage());
e.printStackTrace();
This is the trace:
#1.5#0008540656D80060000001EF0000066000040BB044DABFBF#1138751604169#com.sapportals.wcm.util.logging.CatchBlockHandler#sap.com/irj#com.sapportals.wcm.util.logging.CatchBlockHandler.CatchBlockHandler#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain###[INTERNAL] com.sapportals.wcm.util.profiler.IProfiler: java.lang.ClassNotFoundException: com.sapportals.wcm.util.profiler.IProfiler
at com.sapportals.wcm.crt.CrtClassLoaderRegistry.findClass(CrtClassLoaderRegistry.java:176)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:219)
at com.sapportals.wcm.crt.CrtClassLoaderRegistry.forName(CrtClassLoaderRegistry.java:349)
at com.sapportals.wcm.util.logging.CatchBlockHandler.(PortalInitializer.java:129)#
#1.5#0008540656D80060000002060000066000040BB044DB277F#1138751604200#System.err#sap.com/irj#System.err#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain### at com.sapportals.portal.prt.dispatcher.Dispatcher$doSetupPortalInitializer.run(Dispatcher.java:161)#
#1.5#0008540656D80060000002070000066000040BB044DB27D8#1138751604200#System.err#sap.com/irj#System.err#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain### at java.security.AccessController.doPrivileged(Native Method)#
#1.5#0008540656D80060000002080000066000040BB044DB2833#1138751604200#System.err#sap.com/irj#System.err#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain### at com.sapportals.portal.prt.dispatcher.Dispatcher.initDispatcher(Dispatcher.java:359)#
#1.5#0008540656D80060000002090000066000040BB044DB288E#1138751604200#System.err#sap.com/irj#System.err#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain### at com.sapportals.portal.prt.dispatcher.Dispatcher.access$000(Dispatcher.java:42)#
#1.5#0008540656D800600000020A0000066000040BB044DB28E7#1138751604200#System.err#sap.com/irj#System.err#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain### at com.sapportals.portal.prt.dispatcher.Dispatcher$InitRunner.run(Dispatcher.java:114)#
#1.5#0008540656D800600000020B0000066000040BB044DB2943#1138751604200#System.err#sap.com/irj#System.err#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain### at com.sapportals.portal.prt.dispatcher.Dispatcher.init(Dispatcher.java:392)#
#1.5#0008540656D800600000020C0000066000040BB044DB29A1#1138751604200#System.err#sap.com/irj#System.err#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain### at com.sap.engine.services.servlets_jsp.server.runtime.context.WebComponents.addServlet(WebComponents.java:138)#
#1.5#0008540656D800600000020D0000066000040BB044DB2A0A#1138751604200#System.err#sap.com/irj#System.err#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain### at com.sap.engine.services.servlets_jsp.server.container.ApplicationThreadInitializer.loadServlets(ApplicationThreadInitializer.java:376)#
#1.5#0008540656D800600000020E0000066000040BB044DB2A6A#1138751604200#System.err#sap.com/irj#System.err#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain### at com.sap.engine.services.servlets_jsp.server.container.ApplicationThreadInitializer.run(ApplicationThreadInitializer.java:110)#
#1.5#0008540656D800600000020F0000066000040BB044DB2AC7#1138751604200#System.err#sap.com/irj#System.err#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain### at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)#
#1.5#0008540656D80060000002100000066000040BB044DB2B20#1138751604200#System.err#sap.com/irj#System.err#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain### at java.security.AccessController.doPrivileged(Native Method)#
#1.5#0008540656D80060000002110000066000040BB044DB2B7C#1138751604200#System.err#sap.com/irj#System.err#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain### at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)#
#1.5#0008540656D80060000002120000066000040BB044DB2BD7#1138751604200#System.err#sap.com/irj#System.err#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Error##Plain### at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)#
#1.5#0008540656D80060000002130000066000040BB044DB7D5B#1138751604231#com.redcolombia.portal.km.DocumentosRecientesKM#sap.com/irj#com.redcolombia.portal.km.DocumentosRecientesKM#Guest#192####a7c9589092b411da9b870008540656d8#SAPEngine_Application_Thread[impl:3]_25##0#0#Fatal##Plain###Initializing instance of service com.redcolombia.portal.km.DocumentosRecientesKM number 1#
Message was edited by: Andrés Acero -
Retrieve Portal Service from EJB
Hi All,
I am trying to use a custom Portal Service from an EJB application. I assume that I have to do the JNDI lookup for the service since I can not use the usual "PortalRuntime" to get the service instance.
Looking at the JNDI browser in the Visual Admin, I can't seem to find it. I have seen some code snippets on SDN for UWLService where lookup is done via "/broker/services/XXXX.KEY"
Any insight?
Thanks,Hi,
Take a look at this similar post: /thread/412823 [original link is broken]
BRgds,
Simon -
How to reflect the use of a custom cert in an unattended setup of FIM R2 SP1 Portal & Service?
Hi,
When doing an
unattended installation of FIM Portal & Service there is a parameter that indicates the certificate subject name to generate: 'CERTIFICATE_NAME'.
But, the GUI-based setup shows a choice:
Select a certificate located in the local certificate store
Generate a new self-issued certificate
How do I accomplish a selection from the local certificate store through an unattended install?
It seems that for instance using 'CERTIFICATE_NAME=MyCustomFIMCert' does not search the store first but creates an additional self-issued certificate with exactly the same name; in the msi installer log it then complaints that the installer
found certificates with the same name.
Anyone any tips how to deal with this behavior?
THANKS :-)
Danny Alvares, Senior Technology ConsultantHere's the full PowerShell script.
# FIM Service & Portal MSI & Setup# See: http://technet.microsoft.com/en-us/library/hh322863(v=ws.10).aspx
$FIMServicePortalMsi = "`"C:\FIMSetup\Service and Portal\Service and Portal.msi`""
$FIMServicePortalInstallDir = "`"C:\Program Files\Microsoft Forefront Identity Manager\2010`""
$FIMServicePortalSetupLog = "`"C:\FIMSetup\FIMServicePortalSetup_Log.txt`""
$FIMServiceCustomCertificateName = "fimservice.domain.local"
$FIMADDLOCAL = "CommonServices,WebPortals"
$FIMSQMOPTINSETTING = 0
$FIMSQLSERVER_SERVER = "dbFIMService" # REQUIRED
$FIMSQLSERVER_DATABASE = "FIMService"
$FIMEXISTINGDATABASE = 0
$FIMMAIL_SERVER = "exch.domain.local" # REQUIRED
$FIMMAIL_SERVER_USE_SSL = 0
$FIMMAIL_SERVER_IS_EXCHANGE = 1
$FIMPOLL_EXCHANGE_ENABLED = 0
# $FIMCERTIFICATE_NAME = "ForefrontIdentityManager" # IMPORTANT: WHEN USING A CUSTOM CERTIFICATE USE THUMBPRINT
$FIMCERTIFICATE_THUMBPRINT = (dir Cert:\LocalMachine\My | where {$_.subject -match $FIMServiceCustomCertificateName}).thumbprint
$FIMSERVICE_ACCOUNT_NAME = "svcFIMservice" # REQUIRED
$FIMSERVICE_ACCOUNT_PASSWORD = "********" # REQUIRED
$FIMSERVICE_ACCOUNT_DOMAIN = "DOMAIN" # REQUIRED
$FIMSERVICE_ACCOUNT_EMAIL = "[email protected]" # REQUIRED
$FIMSERVICE_MANAGER_SERVER = "" # FIM Reporting Service Management Server
$FIMSYNCHRONIZATION_SERVER = "fimsync.domain.local" # REQUIRED
$FIMSYNCHRONIZATION_SERVER_ACCOUNT = "DOMAIN\svcFIMsyncservice"
$FIMSERVICEADDRESS = "fimservice.domain.local" # DO NOT USE LOCALHOST OR HTTP(S) PREFIX
$FIMSHAREPOINT_URL = "https://fimportal.domain.local"
$FIMREGISTRATION_PORTAL_URL = ""
$FIMFIREWALL_CONF = 1 # Ports 5725, 5726
$FIMSHAREPOINTUSERS_CONF = 1
$FIMREQUIRE_REGISTRATION_INFO = 0
$FIMREGISTRATION_ACCOUNT_NAME = ""
$FIMREGISTRATION_ACCOUNT_DOMAIN = ""
$FIMREQUIRE_RESET_INFO = 0
$FIMRESET_ACCOUNT_NAME = ""
$FIMRESET_ACCOUNT_DOMAIN = ""
#MSI Argument list
$FIMArguments = @("/i", $FIMServicePortalMsi, "/qn", "INSTALLDIR=$FIMServicePortalInstallDir", "ADDLOCAL=$FIMADDLOCAL", "SQMOPTINSETTING=$FIMSQMOPTINSETTING", "SQLSERVER_SERVER=$FIMSQLSERVER_SERVER", "SQLSERVER_DATABASE=$FIMSQLSERVER_DATABASE", "EXISTINGDATABASE=$FIMEXISTINGDATABASE", "MAIL_SERVER=$FIMMAIL_SERVER", "MAIL_SERVER_USE_SSL=$FIMMAIL_SERVER_USE_SSL", "MAIL_SERVER_IS_EXCHANGE=$FIMMAIL_SERVER_IS_EXCHANGE", "POLL_EXCHANGE_ENABLED=$FIMPOLL_EXCHANGE_ENABLED", "CERTIFICATE_THUMBPRINT=$FIMCERTIFICATE_THUMBPRINT", "SERVICE_ACCOUNT_NAME=$FIMSERVICE_ACCOUNT_NAME", "SERVICE_ACCOUNT_PASSWORD=$FIMSERVICE_ACCOUNT_PASSWORD", "SERVICE_ACCOUNT_DOMAIN=$FIMSERVICE_ACCOUNT_DOMAIN", "SERVICE_ACCOUNT_EMAIL=$FIMSERVICE_ACCOUNT_EMAIL", "SERVICE_MANAGER_SERVER=$FIMSERVICE_MANAGER_SERVER", "SYNCHRONIZATION_SERVER=$FIMSYNCHRONIZATION_SERVER", "SYNCHRONIZATION_SERVER_ACCOUNT=$FIMSYNCHRONIZATION_SERVER_ACCOUNT", "SERVICEADDRESS=$FIMSERVICEADDRESS", "SHAREPOINT_URL=$FIMSHAREPOINT_URL", "REGISTRATION_PORTAL_URL=$FIMREGISTRATION_PORTAL_URL", "FIREWALL_CONF=$FIMFIREWALL_CONF", "SHAREPOINTUSERS_CONF=$FIMSHAREPOINTUSERS_CONF", "REQUIRE_REGISTRATION_INFO=$FIMREQUIRE_REGISTRATION_INFO", "REGISTRATION_ACCOUNT_NAME=$FIMREGISTRATION_ACCOUNT_NAME", "REGISTRATION_ACCOUNT_DOMAIN=$FIMREGISTRATION_ACCOUNT_DOMAIN", "REQUIRE_RESET_INFO=$FIMREQUIRE_RESET_INFO", "RESET_ACCOUNT_NAME=$FIMRESET_ACCOUNT_NAME", "RESET_ACCOUNT_DOMAIN=$FIMRESET_ACCOUNT_DOMAIN", "/l*", $FIMServicePortalSetupLog)Clear-Host
"Installing FIM Portal & Service..."
$InstallExitCode = (Start-Process -FilePath msiexec.exe -ArgumentList $FIMArguments -Wait -Passthru).ExitCodeif ($InstallExitCode -eq 0) {"Installation successful."}else {"Installation failed with code $InstallExitCode. Check Windows Event Viewer for errors."}
Danny Alvares, Senior Technology Consultant -
Problem Starting a custom built portal service
Hi,
When I try to start my custom build portal service I get the following error message:
"Server 4128450:Error in the listener class com.sap.ip.portal.admin.portalanywhere.QueryHandler during the process of handleTopic."
Does anyone have a solution on this problem?
Here is my portalapp.xml file:
<?xml version="1.0" encoding="utf-8"?>
<application>
<application-config>
<property name="releasable" value="false"/>
<property name="startup" value="true"/>
</application-config>
<components/>
<services>
<service name="TestService" alias="Test">
<service-config>
<property name="className" value="se.xxx.mdm.TestService"/>
</service-config>
<service-profile>
<property name="ServerName" value="ABC"/>
</service-profile>
</service>
</services>
</application>
Kind Regars
MichaelHi Jasmin
Yes TemplateCC is my class. I originally used RSA (Rational) to export the JAR, but have since also done it with Vanilla Eclipse (Using the same export options that you use). Eventually I've come to the conclusion that there's nothing wrong with the jar, but rather something wrong with my App server. Here's why:
If I install and start the component on another ES2 server (running on JBoss) it installs perfectly and works correctly in a LC application. The problem only occurs when I try to install the component to my ES2 server on Websphere. I was wondering if it might have something to do with the IBM JVM, but haven't been able to confirm that suspicion yet.
In pursuit of a solution, can you confirm whether the following statement is valid: "If a component installs and starts on one LC server, it must be able to deploy and start on another, even on different platforms"
Thanks for the help thus far. -
Single file custom logging for portal service in 7.31
Hello Experts,
I have a portal service.
The service writes sensitive data to the DB and therefore I need tracing mechanism.
Until now I've used a custom txt file but now I want to use the SAP J2EE logging infrastructure (for performance, identifying user sessions etc...)
Since the severity of the messages will be set to 'info' I don't want to write the log entries to 'defaultTrace.trc', I want to write it to a custom file.
I'm aware of 'ForceSingleTraceFile' parameter but where can I set the logging properties? (in older portals I could use logger.xml in my portal component project and set a custom log file but as far as I understand 'logger.xml' is not supported anymore and its parameters are ignored).
Where can I find the documentation for setting logging properties for portal service in 7.31?
J2EE/Portal version is 7.31 SP7.
Regards,
Omrihi omri,
please have a look at this documentation (SpecificDestinationLogControllers - http://help.sap.com/saphelp_nw73ehp1/helpdata/de/2b/09343e32ff1033e10000000a114084/frameset.htm)
regards,
christian -
Hi,
Am trying to use a portal service in my application and calling a method,it should return me the IResourceList which am going
to iterate and publish the Resource.
Interestingly,am getting the error "Build of the project Failed" Pls Note am working on JDI or NWDI & no compilation errors
at my end.
Please find the Code below :
user =(IUser) UMFactory.getUserFactory().getUserByLogonID(request.getUser().getLogonUid());
IPortalRuntimeResources runtimeResources =PortalRuntime.getRuntimeResources();
IService aService = runtimeResources.getService("customer.MyService");
customer.MyService tmp = (customer.MyService) aService;
IResourceList list=(IResourceList)Util.getMethod(filterbasepath,arraylist,user);
Any help in this direction would be highly appreciated,kindly be specific as where have i gone wrong.
Regards
ManojHi Harish,
1.Other components in the par file do not have classes with syntax error.
2.deployement descriptor has correct syntax.
3.deployement descriptor has services reference to the Portal Service am using.
if i comment some part of the code say
user =(IUser) UMFactory.getUserFactory().getUserByLogonID(request.getUser().getLogonUid());
IPortalRuntimeResources runtimeResources =PortalRuntime.getRuntimeResources();
//IService aService = runtimeResources.getService("customer.MyService");
//customer.MyService tmp = (customer.MyService) aService;
//IResourceList list=(IResourceList)Util.getMethod(filterbasepath,arraylist,user);
i can upload the par file,that clearly indicates that
theres some problem in using the service "customer.MyService",though there are no compilation errors.
I have even tried the alternative
IService aService = runtimeResources.getService("IMyService.KEY");--->where IMyservice is the Interface Class.
Regards
Manoj -
Question regarding implementation of Portal Service
Hello,
I want to create a portal service that calls our R/3 system and comes back with customer master data. For that I have to hand over the userid to the portal service.
The Interface looks like that:
import com.sapportals.portal.prt.service.IService;
import com.lgs.model.CustomerDataBean;
public interface IR3CustDataService extends IService
public static final String KEY = "R3CustDataService";
// returns an object with all customer master data from R/3
public CustomerDataBean getCustomerData(String userid);
The implementation of the method in the corresponding class is:
CustomerDataBean cdb = new CustomerDataBean();
public CustomerDataBean getCustomerData(String userid) {
return cdb;
Now I would implement the program logic (accessing R/3 and fill the CustomerDataBean) in the init method of the portal service class.
public void init(IServiceContext serviceContext) {
mm_serviceContext = serviceContext;
implementation of program logic, usage of userid necessary
My question is now how I can use the String userid in the init method? How can I hand over the userid to the init method so that I can use it?
Any hint is really appreciated!
Thanks a lot.
Arnohi
MY level of understandind u r problem is
by application u r sending the username and password to the portal and getting the required data by beans
if so
check this it may be usefull foru
Integrating External Application Services without Web service
bvr
Maybe you are looking for
-
Mid 2012 macbook pro has become slow and has a malware on it i can't locate
I have a Faux flash player Malware window pops up randomly, used bit defender and activity monitor to try to find it with no luck. Im looking for a free way to fix that guy. RAM also seems to always be heavily used even with little open and running,
-
How do I add music to play on my entire site?
Hi!! Pretty green at this stuff so bear with me!! Designing a website for my small business and would LOVE to add music that could play through the entire site rather than on the page the media is placed on.. does that make any sense to anyone? Thank
-
Logging the information from multiple tables to a txt file
To All, I am working in a bench test set in which I test different devices via serial. For each of them, I have a log table. Is there a way I could log all those tables in a singe text file? Thank you, Cosmica Solved! Go to Solution.
-
Hi All, I'm looking for an exit in f-26, f-28 txns for assigning the Sold-To party customer number in the Assignment(BSEG-ZUONR) field for incoming payments like partial payments, Finance charges, etc I've tried all the relevant exits in the p
-
How to create workflow container element from workflow builder?
How to create workflow container element from workflow builder?