The configuration for the iWidget is stored in widgets-config.xml file, This file has two sections one for profiles and other for communities. While adding iWidget first i had to add the definition of the iWidget, by that i mean point to the URL, define preferences,... The widget-config.xml file also has page definition in xml format, so i had to add the widget definition to the suitable position on the page, i followed these steps to add LinkedIn iWidget
- Connect to Deployment manager of your lotus connection server using wsadmin client
wsadmin.bat -lang jython -username wasadmin -password wasadmin -port 8879 - The profilesAdmin.py has some jython functions that make administration of the profiles functionality easier, you should execute that file to make the functions available in the wsadmin console by calling
execfile("profilesAdmin.py") - Checkout the currents widgets-config.xml in c:/temp using following command
ProfilesConfigService.checkOutWidgetConfig("c:/temp", "wpconnectionsCell01")
Open the widgets-config.xml file using a text editor, you will notice that it has two top level resource elements one for profiles and other for communities. Expand the profiles related related element. You will find bunch of widgetDef elements in that file add following widgetDef element at the end pointing to HelloWorld widget
<widgetDef defId="HelloWorld" url="/hellowidget.xml">
</widgetDef>
In my case the hellowidget.xml is available on HTTP server at the root. Once widget is defined next step is to add it to one or more pages, under the layout element you will have multiple page elements, you can add the widget definition to one of the pages here, In my case i want to add HelloWorld widget to 3rd column on the profilesView page, so i did add it to the page like this
<page pageId="profilesView">
<widgetInstance uiLocation="col2" defIdRef="multiWidget"/>
<widgetInstance uiLocation="multiWidget" defIdRef="board"/>
<widgetInstance uiLocation="multiWidget" defIdRef="contactInfo"/>
<widgetInstance uiLocation="multiWidget" defIdRef="backgroundInfo"/>
<widgetInstance uiLocation="multiWidget" defIdRef="multiFeedReader"/>
<widgetInstance uiLocation="col1" defIdRef="socialTags"/>
<widgetInstance uiLocation="col1" defIdRef="sand_thingsInCommon"/>
<widgetInstance uiLocation="col1" defIdRef="LinkedIn"/>
<widgetInstance uiLocation="col3" defIdRef="sand_socialPath"/>
<widgetInstance uiLocation="col3" defIdRef="reportStructure"/>
<widgetInstance uiLocation="col3" defIdRef="friends"/>
<widgetInstance uiLocation="col3" defIdRef="linkRoll"/>
<widgetInstance uiLocation="col3" defIdRef="HelloWorld"/>
</page>- Once your done making changes to the widgets-config.xml file you can check it in by executing following wsadmin command
ProfilesConfigService.checkInWidgetConfig()
You can synchronize your changes across the nodes by executing following wsadmin function
synchAllNodes()- Restart the Profiels application using the WAS Admin console for changes to take effect
Thanks for info
ReplyDeleteWeb Design Company in Bangalore
Website development in Bangalore