Get Social & Collaborate!
Tags

Entries in Technical (8)

Thursday
Jul212011

IBM Connections - Importing Activity Templates & changing the owner

There are some great Activity Templates avaliable for FREE for IBM Connections in the IBM Lotus and WebSphere Portal Business Solutions Catalog.

They are a great start and quite useful for doing a demo of the capabilities of IBM Connections Activities. To install them you just need to:

  1. Download them and unzip them into a temp directory on your Connections server (need to put them onto one of your actual Connections nodes)
  2. On your Deployment Manager go to your \WebSphere\AppServer\profiles\<your DMGR profile name>\bin\ directory.
  3. Enter the following command to start the wsadmin tool: (See the Administering Lotus Connections section of the Lotus Connections information center or the WebSphere Application Server information center for more information about the wsadmin tool.)

    AIX® / Linux®:
    ./wsadmin.sh -lang jython -user <admin_user_id> -password
    <admin_password> -port <SOAP_CONNECTOR_ADDRESS Port>

    Microsoft® Windows®:
    wsadmin -lang jython -user <admin_user_id> -password
    <admin_password> -port <SOAP_CONNECTOR_ADDRESS Port>
    where: <admin_user_id> is the user name of the WebSphere Application Server administrator.
    <admin_password> is the password of the WebSphere Application Server administrator.
    <SOAP_CONNECTOR_ADDRESS Port> is the SOAP port for the WebSphere Application Server.

  4. At the wsadmin command prompt, enter the following commands to import the templates:

    execfile("activitiesAdmin.py")
    templates = ArchiveService.fetchActivities ("<ZIP_files_directory>")
    ArchiveService.importActivities("<ZIP_files_directory>", templates)
    where <ZIP_files_directory> is the directory in which the template ZIP files are stored.
  5. If the wsadmin console returns an empty vector ([]), no errors occurred during the import.
    See the Administering Lotus Connections section of the Lotus Connections information center or the WebSphere Application Server information center for more information about the wsadmin tool. Also, the Import operation will write status messages to the SystemOut.log file. You may also check this log file to confirm that the import completed successfully.

And that is it, the tempates will be available for users to use. When they go to create an Activity they can choose one of the following templates:

Now if you want to modify one of the template you need to change the Owner of the template. This is again done using the wsadmin tool:

  1. On your Deployment Manager go to your \WebSphere\AppServer\profiles\<your DMGR profile name>\bin\ directory.
  2. Enter the following command to start the wsadmin tool: (See the Administering Lotus Connections section of the Lotus Connections information center or the WebSphere Application Server information center for more information about the wsadmin tool.)

    AIX® / Linux®:
    ./wsadmin.sh -lang jython -user <admin_user_id> -password
    <admin_password> -port <SOAP_CONNECTOR_ADDRESS Port>

    Microsoft® Windows®:
    wsadmin -lang jython -user <admin_user_id> -password
    <admin_password> -port <SOAP_CONNECTOR_ADDRESS Port>
    where: <admin_user_id> is the user name of the WebSphere Application Server administrator.
    <admin_password> is the password of the WebSphere Application Server administrator.
    <SOAP_CONNECTOR_ADDRESS Port> is the SOAP port for the WebSphere Application Server.

  3. At the wsadmin command prompt, enter the following commands to set the user you are changing and to then get the activities that are owned by that user:

    execfile("activitiesAdmin.py")

    templateadmin=ActivitiesMemberService.fetchMemberByEmail("Activities Administrator")

  4. Then we enter the following command to get the user you want to set as the Template Ownder:

    newowner=ActivitiesMemberService.fetchMemberByEmail("abrown@isw.net.au")

  5. Then we fetch all Activity Templates that are Owned by templateAdmin and lastly set the newowner:

    activities=ActivityService.fetchActivitiesByMember(templateadmin)

    AccessControlService.setOwnerAccess(activities,newowner)

And now the owner of the imported templates has been set so that you can edit and modify the templates as you like. Neat!

 

 

Tuesday
Jun282011

IBM Web Experience Factory 7.0.1

IBM has announced the release of the IBM Web Experience Factory 7.0.1 (Formally know as IBM WebSphere Portlet Factory):

IBM® Web Experience Factory 7.0.1, formerly IBM WebSphere® Portlet Factory, delivers the fastest and easiest way to develop multichannel exceptional web experiences across desktop, mobile, and tablet platforms.

Enhancements

  • New builders
    • Builders for mobile, multichannel solution development including desktop browsers, smartphones, and tablets
    • Builders to incorporate analytics into applications to ensure the feedback loop is closed, allowing business owners to track and adjust success based on application usage
    • Builders for IBM Web Content Manager allows easy integration of content and authoring capabilities in custom portlets
  • Increased developer productivity, with many new features and improvements to make it easier and faster for developers to build exceptional web experiences
  • New production code and samples with full source code providing a robust library of both learning and production examples

 

My take on this:

  • The trend of dropping the brand names from products is now becoming consistent across more than just Lotus.
  • The enhancements reflect the move to support more than just Portlets. The IBM Web Experience Factory can be used (and has for a while) to build widgets and web applications that go broader than just Portlets. In particular is the support now for Mobile Application Builders that can use the same code base  across a range of devices.
  • This move to more Mobile capabilities is in addition to the upcoming WebSphere Portal Mobile Theme that is in beta (I will post about this soon I promise)
  • Also new builders for analytics applications. Business Analytics is a very fast growing space (hence why ISW has invested so much becoming an IBM Business Analytics/Cognos partner this last year) and IBM is smart to enable this capability in the Web Experience Factory.
  • I am glad they didn't call it the IBM Exceptional Web Experience Factory;)

More information here

Wednesday
Dec292010

How to setup Xming and Putty to allow X Windows based applications on Linux

Having gone thru a number of installs of WebSphere and Connections on Linux and getting slightly frustrated with doing silent installs (and worse silent unintalls) using response files I decided it was finally time to figure out how to get X Windows going so I could go back to a GUI based installer.

So there are two parts to this:

1) Xming - XMing is an X Windows port for Microsoft Windows. Essentially it’s an X-server which starts transparently on top of your MS Windows desktop. It allows you to redirect graphical output of applications you run on remote Unix servers and therefore see these applications windows on your MS Windows desktop. Again simply install and launch Xming. You will note a little icon in your task bar indicated the Xming server is running.

2) Putty - PuTTY is a free implementation of Telnet and SSH for Windows and Unix platforms. Simply download and install. Once installed we need to connect to your linux server using SSH andmodify the ssh daemon config file: /etc/ssh/sshd_config. Just ensure that it has the following:

# X11 tunneling options
X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes

You may already have the correct setting in which case do nothing however if you change anything you will need to restart ssh. To restart SSH use the command /etc/init.d/sshd restart.

Now that is done all you need to do is start a new Putty session however this time in the Connection section, then SSH, then X11, make sure you tick the Enable X11 Forwarding option.

That is it! Much to my delight when I next tried to install WebSphere using the normal ./install command a moment later a X Window application launched on my computer enabling me to use the Wizards again!

Friday
Jul162010

Integrating Lotus Connections with WebSphere Portal - Part 3

Ok so now for Blogs. In past entries we have integrated Homepage, Profiles, Communities, Search, Dogear, Wikis, Files, and Activies. Blogs initially proved to be a challenge but wasn't that much harder in the end.

The main differences with Blogs are that:

1) You need to use a slightly different script.

2) You need to update the JSP's but also the Blog Theme templates

3) You need to use wsadmin to update the timestamp and restart the server.

 

So the script to use is:

<script type="text/javascript">

#if($model.getRequestParameter('FromPortal') == 'true')
document.cookie="FromPortal=true; path=/";
#else
if(testCookieForFromPortal()) {
document.cookie="FromPortal=true; path=/";
}
#end

function testCookieForFromPortal() {
if (getCookieValue("FromPortal") == "true") {
return true;
} else {
return false;
}
}
function getCookieValue(cookieName) {
var retVal = "";
var i = document.cookie.indexOf(cookieName);
if (i != -1) {
var iVal = i + cookieName.length + 1;
var j = document.cookie.indexOf(";", iVal);
if (j < 0) retval = document.cookie.substring(iVal);
else retval = document.cookie.substring(iVal,j);
}
return retVal;
}
// the themeTemplateURL variable should be set to the URL defined
// as the src attribute of the <script/> tag generated by the
// WebAppIntegrator portlet.

</script>

 

Update the following files:

\installedApps\Blogs.ear\blogs.war\WEB-INF\jsps\tiles\tiles-adminpage.jsp

\installedApps\Blogs.ear\blogs.war\WEB-INF\jsps\tiles\tiles-embeddedpage.jsp

\installedApps\Blogs.ear\blogs.war\WEB-INF\jsps\tiles\tiles-mainmenupage.jsp

\installedApps\Blogs.ear\blogs.war\WEB-INF\jsps\tiles\tiles-simplepage.jsp

\installedApps\Blogs.ear\blogs.war\WEB-INF\jsps\tiles\tiles-tabbedpage.jsp

Themes:

Update each Theme by adding the script to the _header.vm file . The themes are located in the blogs.was/themes directory.

 

Update Timestamp:

Next you need to update the timestamp for the configuration files:

http://publib.boulder.ibm.com/infocenter/ltscnnct/v2r0/topic/com.ibm.connections.25.help/t_admin_common_customize_postreq.html

and then restart the servers.

And that should be it!

 

So we now have all features with the ability to add the ?FromPortal=true paramater to the URL and the Top Navigation Banner will disappear.

Once this is all done integrating with Portal is really easy using the Web Page Portlet. Simply add the Portet to a page and point the configuration of the Portlet to the appropriate URL. When users access Connections within the Portal the top navigation automagically disappears and you can use the Portal navigation instead. I found setting the Web Page Portlet to a height of 1100 meant that you never get a scroll bar in the Portlet.

The next step for me to to try and do the same with the Web Application Integrator Portlet which will mean that we effectively wrap the Portal Navigation around Connections rather than use the iFrame that the Web Page Portlet method users. This is fairly easy but first I need to build our custom theme into the Web App Integrator. Might be Part 4!

Friday
Jul162010

Integrating Lotus Connections with WebSphere Portal - Part 2

 Ok so couple of days ago was Home, Profiles, Communities, Search, and Dogear. Today Activities, Files, & Wikis.

Wikis:

Wiki's is slightly different in that it doesn't import the JSTL Core Tag Lib which is used in the script hence we need to add it. So add the script to the following file:

\installedApps\Wikis.ear\qkr.share.wiki.was\jsp\home.jsp

and then also add:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> to the first line of home.jsp

Files:

Files is the same as Wiki's in that we need to add the tag library as well.

\installedApps\Files.ear\qkr.share.files.war\WEB-INF\pages\home.jsp.

 

Activities:

Now activities is also slightly different. You still need to add the above script to the jsp however there are two body tags to add it to. There is also a change required to banner.jsp.

So first add the usual scripts from yesterday directly after each of the <body> tags in the mainpage.jsp

\installedApps\Activities.ear\oawebui.war\WEB-INF\jsps\webui\mainpage.jsp

Now at first this didn't work and it took me a while to realise that the "lotusbanner" was not being updated to display="none". The reason for this is that unlike the other features the DIV for the lotusbanner only contains a Class reference and not an ID reference. Hence as the script sets id="lotusbanner" to display="none" it doesn't work. So we need to update the banner.jsp (same directory as mainpage.jsp) to have:

<div id="lotusBanner" class="lotusBanner">

It then works a treat just like the other features.

 URL to link Web Page Portlet to: https://<activities-server>/<activities-context-root>/service/html/mainpage?FromPortal=true

 

So all that is left is Blogs. Blogs is proving to be slightly more difficult due to the Theme templating. So that might make up Part 3 to come.