Flexible UI/ Collaboration Room API
Hi
Experts!!!
can you please suggest for the solution of the below problem.
I have a created room template which consists of room info, discussions,tasks, Calender, member roles, member lists.....
using thie above room template i have created a room.
When i am creating a room, I have given a long description and when i entered into the room when i navigate to the room info iview its showing given description with horizantal bar.
My requirement is to split the description into two to three lines.
For the above problem should i develop new custom iview or is there any properties related to this problem.
If i have to develop custome iview whether i have to proceed with flexible ui or collaboration API.
can u please suggest and if any coding snippets was appreciated.
Don't worry about rewarding points!!!
Thanks in Advance
Ravi
HI,
I added the following jars and the collaboration API's are working fine.
bc.rf.framework_api.jar
coll.shared.extension_api.jar
coll.shared.roomobject_api.jar
coll.shared.types_api.jar
com.sap.security.api.ep5.jar
kmc.util.core_api.jar
You can use the JAR Finder to find out which jar you are missing, put the class name in the jar finder and search to get the jar.
<a href="https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/2951">JAR Finder</a>
Similar Messages
-
Error in RFC communication with Collaboration Room API
I am trying to setup collaboration rooms integration with learning solution.
while trying to fetch templates, existing rooms available on portal into R/3 (ecc 6) we are getting this error
"Error in RFC communication with Collaboration Room API"
i am trying to perform
SPRO>Training & Event Management>SAP Learning Solution>Training management>Integration>Collaboration room.>Edit Room Profiles and
Edit Role Profiles
we have setup all SSO parameters required for this communication.
Subhash
Message was edited by:
subhash soniHi All,
I'm having the same problem myself... There is another simmilar thread at:
[/message/448277#448277 [original link is broken];
It seems that thread has progressed further that this one.
Both seem to be errors connecting LSO to Collaboration rooms. I'm getting both error messages when I try to do the same API connection functions from different points in the system, so I'm guessing that they are the same error. IT seems to be an SSO issue.
Regards,
Matt -
Error in Web Service with Collaboration Room API
Hi experts,
I'm developing a web service for creating Collaboration Rooms. I tested my source in a Web Dynpro Project and everything worked.
Now I placed my code inside a web service, and the service gives a nullpointer exception in this line:
IRooms roomsAPI = (IRooms)PortalRuntime.getRuntimeResources().getService(IRooms.PORTAL_SERVICE_ID);
I think I have to make some references inside my web service project, but I don't know which and I don't know where.
Can somebody please help me with this issue?
Thanks in advance,
EdwinFound out my self.
Set the references to "application". -
Add new collaboration room template?
Hi,
I want create a new template for collaboration room, is it possible? How can do it?
My java code is:
package com.sap.ttt;
import com.sapportals.portal.prt.component.AbstractPortalComponent;
import com.sapportals.portal.prt.component.IPortalComponentRequest;
import com.sapportals.portal.prt.component.IPortalComponentResponse;
//imports for User Management
import com.sap.security.api.IUser;
import com.sap.security.api.UMFactory;
//imports for Portal
import com.sapportals.portal.prt.runtime.PortalRuntime;
//imports for Collaboration Rooms
import com.sap.ip.collaboration.room.api.IRoomInfo;
import com.sap.ip.collaboration.room.api.IRooms;
//import com.sap.ip.collaboration.room.api.IRoom;
import com.sap.ip.collaboration.room.api.IRoomCategoryFactory;
import com.sap.ip.collaboration.room.api.IRoomCategory;
import com.sap.ip.collaboration.room.api.template.IRoomRole;
import com.sap.ip.collaboration.room.api.template.ITemplate;
import com.sap.ip.collaboration.room.api.types.RoomPrivacyType;
public class ttt extends AbstractPortalComponent
IRoomInfo roomInfo;
public void doContent(IPortalComponentRequest request, IPortalComponentResponse response) {
try {
String templateName = "taskroom";
String roleName1 = "Admin";
String roleName2 = "Member";
IRooms roomsAPI = (IRooms) PortalRuntime.getRuntimeResources().getService(IRooms.PORTAL_SERVICE_ID);
IRoomCategoryFactory categoryName = roomsAPI.getRoomCategoryFactory();
IRoomCategory[] categoryInfo= categoryName.getRoomCategories();
//Get Template Related Infos
ITemplate template = roomsAPI.getRoomTemplate(templateName);
IRoomRole role1= template.getRoomRole(roleName1);
IRoomRole role2= template.getRoomRole(roleName2);
//Get an empty RoomInfo object
roomInfo = roomsAPI.getRoomCreationInfo();
//Fill RoomInfo object with values
roomInfo.setName("Programme ROOM_withDoc");
roomInfo.setDescription("New Room Description");
roomInfo.setTemplateName(templateName);
roomInfo.setCategories(categoryInfo);
roomInfo.addRoomParameter("Objectives","desc1","objective", false);
roomInfo.addRoomParameter("Start Date","desc2", "s date", false);
roomInfo.addRoomParameter("Target Date", "desc3","t date", false);
roomInfo.addRoomParameter("Initiatives", "desc4","initiatives", false);
roomInfo.addRoomParameter("Mission", "desc5", "mission", false);
roomInfo.addRoomParameter("Goal", "desc6","goal", false);
roomInfo.setPrivacy(RoomPrivacyType.DEFAULT);
//Set User Role Assignments
IUser owner = UMFactory.getUserFactory().getUserByLogonID("vishal");
IUser owner2 = UMFactory.getUserFactory().getUserByUniqueName("aditya");
roomInfo.setOwnerId(owner.getUniqueID());
roomInfo.addUserToRole(owner.getUniqueID(), role1);
roomInfo.addUserToRole(owner2.getUniqueID(), role2);
//Finally Create the Room
if(roomInfo.validate())
roomsAPI.createRoom(roomInfo, false);
response.write("/////room created sucessfully////");
//from here i want to create tasks
} catch ( Throwable e ) {
// Display exception
//response.write(roomInfo.g);
response.write("Application encountered an internal exception:" );
response.write(e.getMessage() );
e.printStackTrace( System.err );
response.write(e.toString());
//response.write(System.err);
} // catch
And my xml is:
<?xml version="1.0" encoding="UTF-8"?>
<application>
<application-config>
<property name="SharingReference" value="usermanagement, knowledgemanagement, landscape, htmlb, exportalJCOclient, exportal"/>
<property name="ServicesReference" value="com.sap.netweaver.coll.shared"/>
</application-config>
<components>
<component name="ttt">
<component-config>
<property name="ClassName" value="com.sap.ttt.ttt"/>
</component-config>
<component-profile/>
</component>
</components>
<services/>
</application>
But not appear the template, why?
Thanks in advance,
regards,Hi Ravindrakvs,
cRoom templates are defined in portal.
Check with your portal team. They can provide you the path and details of cRoom templates.
Cheers
Amit -
Using Room API inside Web DynPro
Hello,
I've developed a Web DynPro Application which uses the Room API of the KMC.
Unfortunately I can not set the Service Reference variable "com.sap.netweaver.coll.shared" as mentioned in the guide.
A Deploy Exception will be thrown ("Missing Arguments...")
If i do not set this variable the following Exception will be thrown:
com.sap.tc.webdynpro.services.exceptions.WDRuntimeException: Failed to create delegate for view com.xy.demo.kmc.room.RoomManagerView. (Hint: Is the corresponding DC deployed correctly? Does the DC contain the component?)
at com.sap.tc.webdynpro.progmodel.generation.ControllerHelper.createDelegate(ControllerHelper.java:110)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.<init>(DelegatingView.java:41)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.createUninitializedView(ViewManager.java:487)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:524)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:422)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:130)
at com.sap.tc.webdynpro.progmodel.view.InterfaceView.initController(InterfaceView.java:41)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
at com.sap.tc.webdynpro.clientserver.cal.ClientComponent.displayToplevelComponent(ClientComponent.java:134)
at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:374)
at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.execute(WebDynproMainTask.java:593)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:59)
at com.sap.tc.webdynpro.clientserver.cal.ClientManager.doProcessing(ClientManager.java:249)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doWebDynproProcessing(DispatcherServlet.java:154)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:116)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doGet(DispatcherServlet.java:48)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:385)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:263)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:340)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:318)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:821)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:239)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:147)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
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:94)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:162)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
at com.sap.tc.webdynpro.progmodel.generation.ControllerHelper.createDelegate(ControllerHelper.java:74)
... 31 more
Caused by: java.lang.NoClassDefFoundError: com/sap/ip/collaboration/room/api/IRooms
at com.xy.demo.kmc.room.wdp.InternalRoomManagerView.<init>(InternalRoomManagerView.java:97)
... 36 more
Greetings
FlorianHi Valery,
thanks for the reply.
I have feared that you say exactly this.
First I have to mention that I of course added the reference variable at the right place (the entry has successfully added to the portalapp.xml)
I looked to the services and do NOT find anything about "com.sap.netweaver.coll.shared" so my next question is:
Where to get it and how to deploy it? -
Will LDAP migration of users affect their Collaboration Rooms??
Hi,
We are having EP 6.0 with MS-AD readonly Ldap.
We are having domain migration in process now, ie users
are being migrated from <i>dom1.comp.com</i> to <i>dom2.comp.com</i>.
I was wondering how this is going to affect all the collaboration roooms
that we are having, because the user's unique id will change once this
migration is done.(isnt it ??) So would we have to re-assign the users
permisions in each of these rooms?
Also what other things are bound to get affected.
Any help on this would be great.
Regards
VineethHi,
Yes it will change then (I hopeed you were using samaccountname).
I've got little experience with collboration, but if there is a mass export and import which requires little manual steps that indeed seems like the best way to go.
An alternative would be to program your own export and import functionality by using the collaboration java API.
This should be fairly trivial for a programmer since the API appears quite good
http://help.sap.com/javadocs/NW04/current/km/com/sap/ip/collaboration/room/api/IRooms.html
http://help.sap.com/javadocs/NW04/current/km/com/sap/ip/collaboration/room/api/IRoomUsers.html
Regards
Dagfinn -
How to add discussions to Collaboration Room using Rooms API
Hi All,
How to add discussions to any room using the Rooms API?
I looked at the NW04s javadocs, but could not find which would help?
Any pointers will be appreciated.
Regards,SandipHi All,
Any help!
Any help from SAP? Are the discussion APIs available?
Any input is appreciated. Thanks
Regards
Sandip
Message was edited by:
Sandip Agarwal -
Problem when creating a collaboration room
Hi there,
I'm trying to create a room using the room creation wizard but got a Portal Runtime error. We are runing SP12 and it's our first time creating a room after installation.
any help is much appreciated..
The followings are errors we found in defaultTrace.trc.
An exception occurred while processing a request for :
iView : pcd:portal_content/administrator/super_admin/super_admin_role/com.sap.portal.content_administration/com.sap.netweaver.coll.colcontent/com.sap.netweaver.coll.RoomCreation/com.sap.netweaver.coll.RoomCreationWizard
Component Name : com.sap.netweaver.coll.appl.ui.room.RoomCreationWizard
The exception was logged. Inform your system administrator..
Exception id: 03:29_24/06/05_0020_8593150
See the details for the exception ID in the log file
ZHANG | GROUP.MODIFY | GROUP = GRUP.PRIVATE_DATASOURCE.un:ROOM_a095da07-12c7-2710-1abc-882ecb2adb02_MAIN | | ADD_VALUES: PRINCIPAL_RELATION_MEMBER_ATTRIBUTE=[USER.R3_DATASOURCE.JZHANG]
Property type is not multi-valued com.sapportals.wcm.repository.ResourceException: Property type is not multi-valued
at com.sapportals.wcm.repository.ResourceException.fillInStackTrace(ResourceException.java:400)
at java.lang.Throwable.<init>(Throwable.java:195)
at java.lang.Exception.<init>(Exception.java:41)
at com.sapportals.wcm.WcmException.<init>(WcmException.java:59)
at com.sapportals.wcm.util.content.ContentException.<init>(ContentException.java:34)
at com.sapportals.wcm.repository.ResourceException.<init>(ResourceException.java:227)
at com.sapportals.wcm.repository.MutableProperty.setValues(MutableProperty.java:549)
at com.sapportals.wcm.repository.manager.cm.persistence.commonjdbc.PropertyHandler.getExternalProperties(PropertyHandler.java:372)
at com.sapportals.wcm.repository.manager.cm.persistence.commonjdbc.PropertyHandler.getExternalProperties(PropertyHandler.java:447)
at com.sapportals.wcm.repository.manager.cm.persistence.BasicPersistenceDB.getExternalProperties(BasicPersistenceDB.java:213)
at com.sapportals.wcm.repository.manager.cm.CmRepository.getDeadProperties(CmRepository.java:1929)
at com.sapportals.wcm.repository.manager.cm.CmRepository.getProperty(CmRepository.java:1789)
at com.sapportals.wcm.repository.manager.cm.CmPropertyManager.getProperty(CmPropertyManager.java:729)
at com.sapportals.wcm.repository.manager.cm.CmPropertyManager.getProperty(CmPropertyManager.java:582)
at com.sapportals.wcm.repository.ResourceImpl.internalGetProperty(ResourceImpl.java:3069)
at com.sapportals.wcm.repository.ResourceImpl.getProperty(ResourceImpl.java:1238)
at com.sap.ip.collaboration.room.impl.RoomRFStorage.deletePersistentParameters(RoomRFStorage.java:635)
at com.sap.ip.collaboration.room.impl.RoomRFStorage.persistParameters(RoomRFStorage.java:590)
at com.sap.ip.collaboration.room.impl.RoomRFStorage.persistAll(RoomRFStorage.java:268)
at com.sap.ip.collaboration.room.impl.RoomRFStorage.init(RoomRFStorage.java:56)
at com.sap.ip.collaboration.room.impl.RoomObject.createRFBackend(RoomObject.java:2441)
at com.sap.ip.collaboration.room.impl.RoomObject.<init>(RoomObject.java:187)
at com.sap.ip.collaboration.room.impl.Rooms.createRoom(Rooms.java:174)
at com.sap.ip.collaboration.room.impl.RoomsKMService.createRoom(RoomsKMService.java:107)
at com.sap.ip.collaboration.roomui.api.rcwizard.model.RoomCreationController.createRoom(RoomCreationController.java:192)
at com.sap.ip.collaboration.roomui.api.rcwizard.ui.RcWizardUIBaseControl.onFinish(RcWizardUIBaseControl.java:68)
at com.sap.ip.collaboration.roomui.api.rcwizard.ui.RoomOverview.onFinish(RoomOverview.java:347)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sapportals.wdf.stack.Control.dispatchHtmlbEvent(Control.java:386)
at com.sapportals.wdf.WdfEventDispatcher.dispatch(WdfEventDispatcher.java:175)
at com.sapportals.wdf.WdfCompositeController.onWdfEvent(WdfCompositeController.java:538)
at sun.reflect.GeneratedMethodAccessor4503.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sapportals.htmlb.page.DynPage.doProcessCompositeEvent(DynPage.java:204)
at com.sapportals.htmlb.page.DynPage.doProcessCurrentEvent(DynPage.java:142)
at com.sapportals.htmlb.page.PageProcessor.handleRequest(PageProcessor.java:115)
at com.sapportals.portal.htmlb.page.PageProcessorComponent.doContent(PageProcessorComponent.java:134)
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.async.AsyncIncludeRunnable$1$DoDispatchRequest.run(AsyncIncludeRunnable.java:377)
at java.security.AccessController.doPrivileged(Native Method)
at com.sapportals.portal.prt.core.async.AsyncIncludeRunnable.run(AsyncIncludeRunnable.java:390)
at com.sapportals.portal.prt.core.async.ThreadContextRunnable.run(ThreadContextRunnable.java:164)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:729)
at java.lang.Thread.run(Thread.java:534)
com.sap.netweaver.coll.room.api.util.RoomResourceException: Cannot get resource /room_extensions/cm_stores/TEMPLATES/MeetingRoom/Links: Cannot get resource /room_extensions/cm_stores/TEMPLATES/MeetingRoom/Links
at com.sap.netweaver.coll.room.api.util.RFAccessor.getResource(RFAccessor.java:202)
at com.sap.netweaver.coll.room.api.util.RFAccessor.getResource(RFAccessor.java:168)
at com.sap.netweaver.coll.room.api.util.RFAccessor.copyResource(RFAccessor.java:348)
at com.sap.netweaver.coll.room.impl.extension.cm.stores.Store.createWorkspace(Store.java:64)
at com.sap.netweaver.coll.room.impl.extension.cm.stores.WorkspaceManager.createWorkspace(WorkspaceManager.java:70)
at com.sap.netweaver.coll.room.impl.extension.cm.CmRoomExtensionSP2FP.createWorkspace(CmRoomExtensionSP2FP.java:246)
at com.sap.netweaver.coll.room.impl.extension.cm.CmRoomExtensionSP2FP.perform(CmRoomExtensionSP2FP.java:211)
at com.sap.netweaver.coll.room.impl.extension.cm.CmRoomExtensionSP2FP.process(CmRoomExtensionSP2FP.java:195)
at com.sap.netweaver.coll.base.core.extension.ExtensionWrapper.jarmRunTime(ExtensionWrapper.java:129)
at com.sap.netweaver.coll.base.core.extension.ExtensionWrapper.process(ExtensionWrapper.java:108)
at com.sap.netweaver.coll.base.core.extension.Item.process(Item.java:175)
at com.sap.netweaver.coll.base.core.extension.Item.process(Item.java:97)
at com.sap.netweaver.coll.base.core.extension.Subscription.processItems(Subscription.java:122)
at com.sap.netweaver.coll.base.core.extension.Subscriptions.perform(Subscriptions.java:122)
at com.sap.netweaver.coll.base.core.extension.Subscriptions.performJarmed(Subscriptions.java:101)
at com.sap.netweaver.coll.base.core.extension.ExtensionTask.processItems(ExtensionTask.java:153)
at com.sap.netweaver.coll.base.core.extension.ExtensionProcessor.process(ExtensionProcessor.java:61)
at com.sap.ip.collaboration.room.impl.RoomObject.<init>(RoomObject.java:198)
at com.sap.ip.collaboration.room.impl.Rooms.createRoom(Rooms.java:174)
at com.sap.ip.collaboration.room.impl.RoomsKMService.createRoom(RoomsKMService.java:107)
at com.sap.ip.collaboration.roomui.api.rcwizard.model.RoomCreationController.createRoom(RoomCreationController.java:192)
at com.sap.ip.collaboration.roomui.api.rcwizard.ui.RcWizardUIBaseControl.onFinish(RcWizardUIBaseControl.java:68)
at com.sap.ip.collaboration.roomui.api.rcwizard.ui.RoomOverview.onFinish(RoomOverview.java:347)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sapportals.wdf.stack.Control.dispatchHtmlbEvent(Control.java:386)
at com.sapportals.wdf.WdfEventDispatcher.dispatch(WdfEventDispatcher.java:175)
at com.sapportals.wdf.WdfCompositeController.onWdfEvent(WdfCompositeController.java:538)
at sun.reflect.GeneratedMethodAccessor4503.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sapportals.htmlb.page.DynPage.doProcessCompositeEvent(DynPage.java:204)
at com.sapportals.htmlb.page.DynPage.doProcessCurrentEvent(DynPage.java:142)
at com.sapportals.htmlb.page.PageProcessor.handleRequest(PageProcessor.java:115)
at com.sapportals.portal.htmlb.page.PageProcessorComponent.doContent(PageProcessorComponent.java:134)
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.async.AsyncIncludeRunnable$1$DoDispatchRequest.run(AsyncIncludeRunnable.java:377)
at java.security.AccessController.doPrivileged(Native Method)
at com.sapportals.portal.prt.core.async.AsyncIncludeRunnable.run(AsyncIncludeRunnable.java:390)
at com.sapportals.portal.prt.core.async.ThreadContextRunnable.run(ThreadContextRunnable.java:164)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:729)
at java.lang.Thread.run(Thread.java:534)
exception is chained. Original exception -
java.lang.NullPointerException: Cannot get resource /room_extensions/cm_stores/TEMPLATES/MeetingRoom/Links
at com.sap.netweaver.coll.room.api.util.RFAccessor.getResource(RFAccessor.java:195)
at com.sap.netweaver.coll.room.api.util.RFAccessor.getResource(RFAccessor.java:168)
at com.sap.netweaver.coll.room.api.util.RFAccessor.copyResource(RFAccessor.java:348)
at com.sap.netweaver.coll.room.impl.extension.cm.stores.Store.createWorkspace(Store.java:64)
at com.sap.netweaver.coll.room.impl.extension.cm.stores.WorkspaceManager.createWorkspace(WorkspaceManager.java:70)
at com.sap.netweaver.coll.room.impl.extension.cm.CmRoomExtensionSP2FP.createWorkspace(CmRoomExtensionSP2FP.java:246)
at com.sap.netweaver.coll.room.impl.extension.cm.CmRoomExtensionSP2FP.perform(CmRoomExtensionSP2FP.java:211)
at com.sap.netweaver.coll.room.impl.extension.cm.CmRoomExtensionSP2FP.process(CmRoomExtensionSP2FP.java:195)
at com.sap.netweaver.coll.base.core.extension.ExtensionWrapper.jarmRunTime(ExtensionWrapper.java:129)
at com.sap.netweaver.coll.base.core.extension.ExtensionWrapper.process(ExtensionWrapper.java:108)
at com.sap.netweaver.coll.base.core.extension.Item.process(Item.java:175)
at com.sap.netweaver.coll.base.core.extension.Item.process(Item.java:97)
at com.sap.netweaver.coll.base.core.extension.Subscription.processItems(Subscription.java:122)
at com.sap.netweaver.coll.base.core.extension.Subscriptions.perform(Subscriptions.java:122)
at com.sap.netweaver.coll.base.core.extension.Subscriptions.performJarmed(Subscriptions.java:101)
at com.sap.netweaver.coll.base.core.extension.ExtensionTask.processItems(ExtensionTask.java:153)
at com.sap.netweaver.coll.base.core.extension.ExtensionProcessor.process(ExtensionProcessor.java:61)
at com.sap.ip.collaboration.room.impl.RoomObject.<init>(RoomObject.java:198)
at com.sap.ip.collaboration.room.impl.Rooms.createRoom(Rooms.java:174)
at com.sap.ip.collaboration.room.impl.RoomsKMService.createRoom(RoomsKMService.java:107)
at com.sap.ip.collaboration.roomui.api.rcwizard.model.RoomCreationController.createRoom(RoomCreationController.java:192)
at com.sap.ip.collaboration.roomui.api.rcwizard.ui.RcWizardUIBaseControl.onFinish(RcWizardUIBaseControl.java:68)
at com.sap.ip.collaboration.roomui.api.rcwizard.ui.RoomOverview.onFinish(RoomOverview.java:347)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sapportals.wdf.stack.Control.dispatchHtmlbEvent(Control.java:386)
at com.sapportals.wdf.WdfEventDispatcher.dispatch(WdfEventDispatcher.java:175)
at com.sapportals.wdf.WdfCompositeController.onWdfEvent(WdfCompositeController.java:538)
at sun.reflect.GeneratedMethodAccessor4503.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sapportals.htmlb.page.DynPage.doProcessCompositeEvent(DynPage.java:204)
at com.sapportals.htmlb.page.DynPage.doProcessCurrentEvent(DynPage.java:142)
at com.sapportals.htmlb.page.PageProcessor.handleRequest(PageProcessor.java:115)
at com.sapportals.portal.htmlb.page.PageProcessorComponent.doContent(PageProcessorComponent.java:134)
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.async.AsyncIncludeRunnable$1$DoDispatchRequest.run(AsyncIncludeRunnable.java:377)
at java.security.AccessController.doPrivileged(Native Method)
at com.sapportals.portal.prt.core.async.AsyncIncludeRunnable.run(AsyncIncludeRunnable.java:390)
at com.sapportals.portal.prt.core.async.ThreadContextRunnable.run(ThreadContextRunnable.java:164)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:729)
at java.lang.Thread.run(Thread.java:534)Hi there,
After following the basic configuration steps for collaboration, we do not see the error:
com.sap.netweaver.coll.room.api.util.RoomResourceException: Cannot get resource /room_extensions/cm_stores/TEMPLATES/MeetingRoom/Links: Cannot get resource /room_extensions/cm_stores/TEMPLATES/MeetingRoom/Links
but this error is still there and the room creation wizard failed again:
Property type is not multi-valued com.sapportals.wcm.repository.ResourceException: Property type is not multi-valued
any help is much appreciated...
Thanks. -
How to get the list of collaboration rooms for a particular user??
Hello Experts,
I have a requirement to get the list of all the collaboration rooms for a given user. I have started developing the Web Dynpro application by reusing necessary jars required to the web dynpro application.
on some action I am trying to execute the below code:
IRooms roomsAPI = (IRooms) PortalRuntime.getRuntimeResources().getService(IRooms.PORTAL_SERVICE_ID);
which I have got from help.sap.com
But, there's some exception being raised and not able to retrieve the list of rooms.
Could somebody tell me what am I doing wrong.
Regards,
Raghu.Hi,
the below is the code that I have used to get the list of rooms. But I'm getting into the NullPointerException .
I have added the catch block for time being, but could you please let me know the reason for NullPointerException?
public void onActiongetRooms(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActiongetRooms(ServerEvent)
IWDMessageManager msgMgr = wdComponentAPI.getMessageManager();
try{
IService service = PortalRuntime.getRuntimeResources().getService(IRooms.KM_SERVICE_ID);
IRooms roomsAPI = (IRooms) service;
String roomID = "00bd6231-fdca-2c10-919c-97bf74054b7d";
IRoom room = roomsAPI.getRoom(roomID);
String roomname = room.getName();
msgMgr.reportSuccess(roomname);
} catch (NullPointerException e) {
// TODO: handle exception
msgMgr.reportException("Null Error:"+e.getMessage(), true);
catch (RoomInstantiationException e) {
// TODO: handle exception
msgMgr.reportException("Error :"+e.getMessage(), true);
//@@end
Any thoughts are much appreciated.
Thanks in advance.
Raghu -
Obtaining tasks related to collaboration room
Hi, Comrades.
I try to get a list of tasks related to the collaboration room using API, but I don`t know how to do it.
I have searched through this forum, a lot of articles, KM and UWL API, but found nothing...
Does anybody know, how to reach that list of tasks related to the collaboration room?
Regards, SM.Hi Stephen,
I assume that a super admin user does not get these error messages, right? If so, this behaviour might come due to missing permissions on PCD objects for the user rubinmd. Please apply note 792370 which explains how to set end user permission on the pcd folder com.sap.ip.collaboration/Rooms
Kind regards,
Roland -
CM Patch 5 and adding Room Parts to old Collaboration Rooms
Hi,
We have just upgraded our portal to EP6 SP2 Patch5 for the portal and EP6 SP2 Patch5 Hotfix4 for the KMC.
When trying to add a standard Room Part to a Collaboration Room that was created in KMC Patch4 an error occurs.
The error message written to the console error log is rather long but the most interesting part is:
--- Nested WDF Exception -
java.lang.NullPointerException
at com.sap.ip.collaboration.room.impl.RoomObject.getAllInternalParameters(RoomObject.java:799)
at com.sap.ip.collaboration.room.impl.RoomObject.createRoomPartInstance(RoomObject.java:2371)
at com.sap.ip.collaboration.roomui.api.maintenance.model.MaintenanceInfo.createRoomPartInstance(MaintenanceInfo.java:1384)
Is anyone else having a similar experience?
Has anyone successfully added a Room Part to a Collaboration Room created using Patch4?
Brgds,
PierreHi Pierre,
i'm afraid there is no possibility to add room parts to a collaboration room created using Patch4. The reason must be lying in the use of the old CM stores and not the extensions stores. Some old functionalities like "publishing to public folder" are also not available anymore for new rooms with Patch5 because of the use of extensions.
Best Regards,
Robert -
Collaboration-- Rooms-- Room directory error
Hi
In Collaboration>Rooms>Room directory i've the error:
java.lang.NullPointerException at com.sap.ip.collaboration.roomui.api.util.properties.RoomResourceProperties.getPropertyValueAsBoolean(RoomResourceProperties.java:43) at com.sap.ip.collaboration.roomui.api.util.properties.RoomResourceProperties.isRoomLocked(RoomResourceProperties.java:33) at com.sap.netweaver.coll.roomui.api.uicommands.UIDeregisterCommand.isExecutable(UIDeregisterCommand.java:74)at com.sapportals.wcm.rendering.uicommand.UIGroupCommand.getResourceCommands(UIGroupCommand.java:78) at com.sapportals.wcm.rendering.uicommand.UIGroupCommand.getListWithReplaceCommands(UIGroupCommand.java:191) at com.sapportals.wcm.rendering.uicommand.UIMenuFactory.getRenderMenu(UIMenuFactory.java:239) at com.sapportals.wcm.rendering.readymades.UICommandComponent.buildContentWithFactory(UICommandComponent.java:166) at com.sapportals.wcm.rendering.readymades.UICommandComponent.buildContent(UICommandComponent.java:146) at com.sapportals.wcm.control.util.components.base.BaseCompositeComponent.buildComposition(BaseCompositeComponent.java:196) at com.sapportals.htmlb.AbstractCompositeComponent.preRender(AbstractCompositeComponent.java:33) at com.sapportals.htmlb.Container.preRender(Container.java:118)
I've permissions for the folders, super admin and of course collaboration role.
Anyone can help me about this error?
Thanks.
GuillermoWere you able to Fix this issue..?
-
Collaboration room repositories as file system repositories
Hi all,
i have following problem, i need to upload documents automatically in rooms repositories, i'm trying to create cmstore instances under windows file system, instead of content maanagement repositories , first connecting to a file system repository and mapping collaboration_service service user on microsoft_windows_km, but it's been unsuccessfull, then i tried to use a directory created under /etc, but it sounds not possible as well. When i try to complete room a i always get error failed to create stores. Does anybody try this or can point me at developing informaion for using api or building a service for automatically storing in CM repositories?Hello Lars,
First of all thank you for your reply.
<b>do u use Collaboration first time?</b>
Yes, we just started using Collaboration and this is our first requirement.
<b>Which roles do u have?</b>
I have all the required roles (Super Admin, Content Management, Collaboration, Collaboration Room Creation).
I know that these features are available in NW04 SP 17 without any limitations. I have reviewed SAP Notes 707730, 711093, 709354 and 946470 also.
This problem is with only a few Collaboration iViews.
I am able to create Rooms, Enter Rooms, Receive Invitation e-mails without any problem.
Any suggestions about any possible missing configurations ?
Thanks Again,
Raj -
Hi,
Is it possible to automaticaly create several UME groups when I create a collaboration room (one group for each collaboration role), and automaticaly assign specific permissions on KM folder to these groups ?
I have read that it's possible to do this programmaticaly with EP 6 (https://www.sdn.sap.com/irj/sdn/thread?threadID=84969 ).
Is it still the case on EP 7 ? if so, do you have some useful information on how to do that ?
Thanks
LoïHi
You include the following jar files
bc.rf.framework_api.jar
coll.shared.extension_api.jar
coll.shared.types_api.jar
kmc.util.core_api.jar
kmc.util.core_core.jar
and also include sharing reference as mentioned in the collaboration API 6.0 document. -
Room creation error using Room API
Hi Experts.
We're triying to create a collaboration room through Room API
As a previous step a standard template copy was created (SAP_Information_Site_2) to be used in the room creation through API.
In this template we defined one parameter (FolderPath) which sets the KM navigation path of a specific folder and then we made the mappings of this parameter into the views used by template to show documents.
When Room is created using "Room creation wizard" we set name, description, category, template (SAP_Information_Site_2), FolderPath, etc. this way everything is OK.
The problem is triying to create it when generating the room througn a Webdynpro using Room API, afeter we set all same parameters the room is created with no errors. but despite having put all the parameters like those we place using creation wizard the Room API created Room shows the default folderpath and not we have set through API.
We are able to compare both rooms and they shows same properties except the folderpath.
Here the used code:
private void createRoom(){
String strTemplateName = "Techint_Template";
String strRoleName = "Admin";
String strCategory = "Default_Category";
//Get the Rooms 6.0 API Portal Service
IRooms roomsAPI = (IRooms)PortalRuntime.getRuntimeResources().
getService(IRooms.PORTAL_SERVICE_ID);
//Get Template Related Infos
ITemplate template = null;
IRoomRole role1 = null;
IRoomCategoryFactory cf = roomsAPI.getRoomCategoryFactory();
try {
template = roomsAPI.getRoomTemplate(strTemplateName);
role1 = template.getRoomRole(strRoleName);
//Get an empty RoomInfo object
IRoomInfo roomInfo = roomsAPI.getRoomCreationInfo();
//Fill RoomInfo object with values
roomInfo.setName(wdContext.currentFormDataElement().getProjectCode().trim()+" - "
+wdContext.currentFormDataElement().getRevisionNumber());
String strDescription = wdContext.currentFormDataElement().getTechintDocument();
if (strDescription!=null && strDescription.length()>0)
roomInfo.setDescription(wdContext.currentFormDataElement().getTechintDocument());
else
roomInfo.setDescription(wdContext.currentFormDataElement().getProjectCode().trim()+" - "
+wdContext.currentFormDataElement().getRevisionNumber());
roomInfo.setTemplateName(strTemplateName);
roomInfo.addRoomParameter("FolderPath", "FolderPath",strRevisionFoldePath, false);
//asign the room category
IRoomCategory objRoomCategory = cf.getDefaultRoomCategory();
IRoomCategory objRCA[] = {objRoomCategory};
roomInfo.setCategories(objRCA);
//Set User Role Assignments
com.sap.security.api.IUser owner = UMFactory.getUserFactory().getUserByLogonID("km_user");
roomInfo.setOwnerId(owner.getUniqueID());
roomInfo.addUserToRole(owner.getUniqueID(), role1);
//Finally Create the Room
IRoomDataElement objRoomDE = wdContext.createRoomDataElement();
if(roomInfo.validate()){
IRoom newRoom = roomsAPI.createRoom(roomInfo, true);
objRoomDE.setRoomLink(newRoom.getRoomAccessURLExternal());
}else{
RoomCreationValidationErrors[] errors = roomInfo.getValidationErrors();
for (int i=0; errors.length>i;i++){
logWebDynproMessages(IS_LOG_ENABLED,
//ILoggingConstants.INFO,
4,wdComponentAPI.getMessageManager(),
"ErrorRoom: "+errors<i>.getShortText(), false);
objRoomDE.setRoomLink("ERROR");
wdContext.nodeRoomData().addElement(objRoomDE);
logWebDynproMessages(IS_LOG_ENABLED,
//ILoggingConstants.INFO,
1,wdComponentAPI.getMessageManager(),
"Se creo el room asociado al proceso/revision:"+strRevisionFoldePath, false);
} catch (TemplateInstantiationException e) {
printException(wdComponentAPI.getMessageManager(), e);
e.printStackTrace();
} catch (NoSuchRoleException e1) {
printException(wdComponentAPI.getMessageManager(), e1);
e1.printStackTrace();
} catch (UMException ex){
printException(wdComponentAPI.getMessageManager(), ex);
ex.printStackTrace();
} catch (RoomCreationException ex){
printException(wdComponentAPI.getMessageManager(), ex);
ex.printStackTrace();
} catch (NoSuchRoomCategoryException ex){
printException(wdComponentAPI.getMessageManager(), ex);
ex.printStackTrace();
} catch (Exception ex){
printException(wdComponentAPI.getMessageManager(), ex);
ex.printStackTrace();
This code was created using the following directions
http://help.sap.com/saphelp_nw04s/helpdata/en/7d/c69c42d706c66ae10000000a155106/content.
Any help will be really appreciated and accordingly rewarded
Thaks in advance,
Ramien.-Hi Venkat,
did you check the Initial Configuration Tasks ? especially the portal permisions...
http://help.sap.com/saphelp_nw04/helpdata/en/f6/2604f005fd11d7b84200047582c9f7/content.htm
and there is a SAP Note which references a How To Guide for configuring permissions. The Note number is 766765 and the document it references is "How To... Configure Permissions for Initial Content in SAP Enterprise Portal 6.0 SP9 & Higher."
PS: Please consider rewarding points for helpful answers on SDN. Thanks in advance!
Maybe you are looking for
-
Keep cardinality with lookup-operator?!
Hi I am using a lookup operator to get values from a source table. The match criteria often results in multiple search results. (on purpose) What I want to do is, to take only the first searchresult of the lookup and put it in my destination table...
-
Error during Replication of Service Contracts from CRM to ECC
Hi, I'm encountering a problem when replicating a Service Contract from CRM (I'm using SAP CRM 2007) to ECC. I insert a first Item which is not relevant for pricing (let say, product 123) I Insert a second Item relevant for pricing, with reference to
-
How do I get my internet to work
Can't get my internet to work on my s5
-
Document splitting generates lines with alternating +/- signs
Hi, While trying to post GR through MIRO, I am getting a message like "Document splitting generates lines with alternating +/- signs", please clarify why this error is coming. But I am able to post the moment I am deleting a small amount from planned
-
Can't get music to play on ipad2 everything is grayed out
Can't get music to play.... It is downloaded but it's all grayed out.