Social Portal Extension Setup
Contents
Get the latest gCube Portal Bundle
http://gcube.wiki.gcube-system.org/gcube/index.php/GCube_Portal_Installation and install it.
Get the needed dependencies for the Social Extension
Social Networking Library from maven (get the latest) nexus-search;quick~social-networking
<dependency> <groupId>org.gcube.portal</groupId> <artifactId>social-networking-library</artifactId> <version>1.0.0-SNAPSHOT</version> </dependency>
- Create a folder _social-library in $GLOBUS_LOCATION/lib
- Copy in the yet created floder the SNL Dependencies & the Netflix Astyanax Dependencies:
<dependency> <groupId>com.netflix.astyanax</groupId> <artifactId>astyanax</artifactId> <version>CHECK THE VERSION IN SNL POM</version> </dependency>
- Get the latest ASL Social Extension and copy it into the $GLOBUS_LOCATION/lib/_application-support-layer folder
Notifications
For notifications to work you will need to deploy the Notification Servlet on the Portal. The client code is instead implemented in the social-dockbar-hook provided in the portal bundle.
<dependency> <groupId>org.gcube.portal</groupId> <artifactId>notificationchecker</artifactId> <version>0.1.0-SNAPSHOT</version> <type>war</type> </dependency>
Create the Social Portal Layout on Liferay
The Layout of the Data e-Infrastructure Gateway Community must be updated, the following pages should be created (pay attention to friendly url and the hidden property)
- Workspace
- Name: Workspace
- Friendly URL: workspace
- Visibility: hidden
- Messages
- Name: Messages
- Friendly URL: messages
- Visibility: hidden
- Notifications
- Name: Notifications
- Friendly URL: notifications
- Visibility: hidden
- Profile
- Name: Profile
- Friendly URL: profile
- Visibility: visible
- Join New
- Name: Join New
- Friendly URL: join-new
- Visibility: visible
Populate the pages with the related portlets.
Required portlets and Configuration steps
The following portlets need then to be installed on the portal:
- portlets-user.join-new-environment
- portlets-user.myvres
- portlets-user.newsfeed
- portlets-user.notifications
- portlets-user.shareupdates
- portlets-user.messages
- portlets-user.socialprofile
The following widgets has to be installed under $GLOBUS_LOCATION/lib/_ext
- portlets-user.wsmailwidget
- portlets-user.application-news-widget
and the following servlet should be also installed:
- portal.notificationchecker
please note that in order to use the correct webapp context the notificationcheker installation folder should be notificationchecker, so you should rename the folder under $CATALINA_HOME/webapps from notificationchecker-X.Y.Z to notificationchecker
Staging Procedure
The Cassandra Cluster needs to be "staged" the first time you are going to use it.
- Create the RuntimeResource for the Cassandra Cluster
- The Runtime Resource with name SocialPortalDataStore of type Database must be created in the root Vo of the infrastructure.
- The Access Point part should have the following settings:
- The Runtime Resource with name SocialPortalDataStore of type Database must be created in the root Vo of the infrastructure.
... <AccessPoint> <Description>$CLUSTER_NAME</Description> <Interface> <Endpoint EntryName="$KEYSPACE_NAME">$HOST:$PORT</Endpoint> </Interface> ....
- Create the RuntimeResource for the Files Storage
- The Runtime Resource with name SocialPortalDataStore of type FTPServer must be created in the root Vo of the infrastructure.
- The Access Point part should have the following settings:
- The Runtime Resource with name SocialPortalDataStore of type FTPServer must be created in the root Vo of the infrastructure.
... <AccessPoint> <Description>FTP Server</Description> <Interface> <Endpoint EntryName="D4Science.org FTP Server">ftp.d4science.org</Endpoint> </Interface> ....
- Setup the KeySpace
- This was not automatized yet. Please contact Massimiliano Assante