Join me at the Sept. 18th SJUG meeting to learn about extending Connections with IBM Worklight

Next Wednesday, I will be speaking at the South Jersey User Group (SJUG) in Marlton, NJ, just east of Philadelphia. If you are in the area, come out and learn about building mobile applications using the IBM Connections Open Social API.

There will be networking, pizza, and a good way to learn about a product that extends your skills and assist your organization.

Session Abstract

IBM recently released IBM Worklight 6.0, bringing new development, testing, and analytics capabilities to their mobile application platform. In this meeting, I will provide a quick overview of the new features of Worklight and then show a live demo of building a mobile app in Worklight integrated with IBM Connections through the OpenSocial API. Both Worklight Studio and Greenhouse are free to use, so you CAN try this at home!

Date:  Wednesday September 18, 2013, 6:00 PM to 8:00 PM

IBM, Marlton
Greentree Five
525 Route 73 North
Suite # 305
Marlton, NJ 08053

Please RSVP if will attend so we can order enough pizza.  You can let me know or contact Keith Barros who is coordinating the meeting.

Join the SJUG group for ongoing updates on Linkedin:

I hope to see you there!  (did I mention pizza?)

A workaround for connecting Worklight to Portal

My friends at IBM have published a nice series of articles over on DeveloperWorks that walk through methods for connecting the Web Experience Portal to Worklight applications by overriding the default Worklight web view and loading the application components directly from Portal.

There is a problem. A few weeks after the release of the second article in the series, which describes how use the technique for iOS devices, IBM Worklight 5.0.5 was released. Along with many great features, Worklight 5.0.5 also changed some method names, making the code in the article break. DeveloperWorks has a strong editorial cycle, so corrections to the article are in process, but have been slow to come out.

I have a solution. While preparing for our IBM Connect 2013 session, BP407: Portal at the Speed of Light: Techniques for IBM Worklight Integration. I found an workaround posted in the IBM Worklight forums, which I also like better as it reads the target URL from the Worklight.plist attributes and is easier to read.

To use the workaround, simply follow the instructions in the DeveloperWorks article, but for steps 5 and 6, use the code below to override the iOS application methods. Then update the protocol, host, port, and wlServerContext in: \iphone\native\Resources\Worklight.plist and you are done.

//Additional method used to determine URL for remote loading- (NSString*) getRemoteURL{NSString* plistLoc =[[NSBundle mainBundle]pathForResource:@“worklight” ofType:@“plist”];

if(plistLoc == nil){

[NSException raise:@"[Remote Load Initialization Error]“ format:@“Unable to locate worklight.plist”];


NSDictionary* wlProps = [NSDictionary dictionaryWithContentsOfFile:plistLoc];

NSString* proto = [wlProps valueForKey:@"protocol"];

NSString* host = [wlProps valueForKey:@"host"];

NSString* port = [wlProps valueForKey:@"port"];

NSString* wlServerContext = [wlProps valueForKey:@"wlServerContext"];

//Ensure all required keys are in the plist

if(proto == nil || host == nil || port == nil){

[NSException raise:@"[Remote Load Initialization Error]“ format:@“host, port and protocol are all required keys in worklight.plist”];


NSString* baseURL = [NSString stringWithFormat:@"%@://%@:%@%@", proto, host, port, wlServerContext];

return baseURL;

}-(void) loadRemoteURL{

if (![self viewController]) {

[self performSelector:@selector(loadRemoteURL) withObject:nil afterDelay:0.02];

} else {

NSURL* remoteURL = [NSURL URLWithString:[self getRemoteURL]];

NSURLRequest* request = [NSURLRequest requestWithURL:remoteURL];

[self.viewController.webView loadRequest:request];



//Used to remotely load starting page

-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions


BOOL superResult = [super application:application didFinishLaunchingWithOptions:launchOptions];

[self loadRemoteURL];

return superResult;


Portal at the Speed of Light: Techniques for Worklight integration at IBM Connect

IBM Connect 2013 is now less than two weeks away! This is my eighth visit to the conference, but the first time as a full session speaker. Along with my colleague and fellow IBM Champion, Laks Sundararajan, I will be presenting on Wednesday morning about techniques for using IBM WebSphere Portal and IBM Worklight together to build mobile applications.

Here is our agenda:

  • The need for multi-channel applicationsWorklight Portal servers
  • A quick overview of Worklight
  • When to use just use Portal or Worklight by themselves
  • How to build hybrid apps using Portal and Worklight together
  • Use WCM to let your business authors drive application content
  • Leveraging Cast Iron and WebSphere MQ
  • Best Practices Speed Round

Our goal is to help you understand options for designing a mobile application integrated with your existing web and back end systems. We will show you the system architecture, a few live demos, and provide some tips on how to implement the solution for yourself.

You can visit the IBM Connect conference site to connect with us and add the session to your schedule: 

Or add directly to your calendar: 
Session Details:
Title: BP407: Portal at the Speed of Light: Techniques for IBM Worklight Integration
Date & Time: Jan 30, 10:00am – 11:00am
Location: Dolphin S. Hem III
Abstract: In this session, you’ll learn techniques for extending your IBM Websphere Portal to mobile applications across iOS and Android devices. Experts from our User Experience team will demonstrate how to easily build IBM Worklight applications that integrate with personalization and web content features provided by Portal. You’ll see how to use tools such as IBM Web Experience Factory and IBM Web Content Manager and how to leverage capabilities such as Portlet Services and mobile themes to develop a mobile application running on IBM Worklight in both online and offline modes. At the end of this session, you will be ready to take advantage of the IBM Worklight entitlement provided by IBM to take your Portal to the mobile world!

Meet Prolifics at Connect 2013

Prolifics is a Bronze Sponsor at IBM Connect 2013 and will be showcasing our solutions and offerings at Booth #C18-19. To see what else Prolifics has planned for the conference, please visit:

If you would like to meet me at Connect or set up a one-on-one workshop session with a Prolifics subject matter expert, please reach out in one of the following ways:

Tweet @Handly
Tweet @Prolifics

Cross-posted on the Prolifics’ Technology Blog.

Social Business FutureCast 2020 – Live today at 11 am!

In just 45 minutes from now, I will be joining Laurie McCabe, Jeane Meister, Ed Brill, and Luis Suarez in a live discussion via Google Hangout and broadcast on YouTube. We will be discussing how social business is affecting mid-size companies and how their culture and business will be changing by 2020.

You can watch live or see the replay at

Update: That was fun! Here’s the replay …

Worklight “Response cannot be parsed” error

IBM Worklight Studio got a minor update from to last Friday. This update is available on the Eclipse Marketplace or as a download through DeveloperWorks. The announcement and change list can be found here:

The update fixes several issues, including support for the new Google push mechanism and a new authentication protocol. Unfortunately, this new protocol introduced a parsing error in the main Rich Page Editor. Now, your HTML pages will display this error, even for a new, unchanged app created with the Worklight wizard:

Worklight Rich Page Editor error

This particular error caught me and showed up in my Worklight in Action webinar this week. To make the situation worse, if you are using the free Worklight Developer version from DeveloperWorks or the Eclipse Marketplace, there is no way to downgrade to

Today, in the DeveloperWorks Worklight 5.0 Development Forum, this issue was discussed and Sebastien Stormacq posted a workaround. The issue is that the Rich Page Editor is failing while parsing the JavaScript related to the new authentication mechanism.

When WL.Client.init() is called with parameters, usually during the onload event in <body> or in the new js/initOptions.js JavaScript, then the error above appears and can not be dismissed.

Sebastien’s workaround is to change the new HTML from:

<body id="content" style="display: none">
<!-- application UI goes here -->

<script src="js/initOptions.js"></script>
<script src="js/Test.js"></script>
<script src="js/messages.js"></script>


to the “old” form

<body onload="WL.Client.init()" id="content" style="display: none">

<!-- application UI goes here -->
<!-- <script src="js/initOptions.js"></script> -->
<script src="js/Test.js"></script>
<script src="js/messages.js"></script>


I have found that the server detection timeout code from the Mysurance exam also triggers the error, so make sure your WL.Client.init() is empty for now. IBM has an active bug report on this and I expect we should see an update with a resolution soon.

New Beginnings

Today I started a new job as a technology manager for Prolifics. I will treasure my 9 years with Optimus Solutions / Softchoice, but the time had come to take advantage of new opportunities.

At Prolifics, I will be focusing on developing new service offerings around IBM’s mobile and social solutions, starting with a deep dive into the world of IBM Worklight and related technologies. I will be sure to blog regularly on what I learn along the way to help others who follow!

Speaking of the blog, it has a new beginning as well. As you can see, I have also moved my blog to WordPress using the domain name instead of the free Blogger service that Agile in Atlanta has lived on for many years.  I have migrated over the old content, but otherwise I am using pretty much the default WordPress settings for now, with improvements to come as I learn to tweak the platform.  Many thanks to Femke, Mitch, and Stuart for giving me pointers on how to get things going.  I managed to get set up while only getting my credit card suspended one time. (pro-tip: don’t get gas, order new shoes, and order an Internet domain all on the same day!)

Exciting times are ahead!

Arrived in Orlando on Sunday? Don’t miss out on 20% of Lotusphere!

The big day has come.  You talked your boss into letting you go to Lotusphere and you finally made it to the Swan and Dolphin.  Good thing you planned some time to relax on Sunday before the Welcome Reception tonight, because you have heard it can be a long week.

Wait. Stop. Lotusphere has already started!!
There is a ton of excellent content and activities going on during the day on Sunday of Lotusphere and you are already missing out.  If you have not already – go to registration and get your badge and conference bag.  The desk opened at 7 am and are waiting to get you started. Breakfast awaits down in the Dolphin Pacific Hall before the sessions that start at 8 am.
If you just got registered, ignore the bag for now and pull that little booklet out of the back of your badge.
Tip: Unless you go to the official Lotusphere online site or use one of the excellent mobile applications, the Pocket Agenda is the only place you are going to find the times for the sessions.
Open up that Pocket Agenda, turn to page three and pick a session go to in one of the excellent JumpStart or Show-’n-Tell tracks.  These are some of the best sessions at Lotusphere because they take the time to really deep dive into how you can use these solutions in your business.
Between sessions, and really all through Lotusphere, remember don’t be shy or Unsocial!  Say hello to that person next to you and you will be surprised how interesting they are and what great ideas they have.
If you need any assistance, look for people with the blue IBM Champion ribbon on the bottom of their badges or a Team Social pin.  We are here to help you get involved with the great Lotusphere community!

Live Blog of the August ATLUG meeting: Archiving and KM

It’s time for another Atlanta Lotus Notes Users group!
This time we have two great speakers:
Reducing the Costs of Explosive Information Growth with a Smarter Approach to Archiving – Presented by Mohan Natraj and Mike Davis

Sharing a Vision: Achieving Understanding, the next step in Knowledge Management? – Presented by John Grinder

Full descriptions of the talks can be found on the ATLUG site:

The live blog will start here around 11:30 am Eastern.

May ATLUG: Live blog on XPages – Taking Themes to the Next Level

Today’s Atlanta Lotus Users Group meeting will feature Tim Tripcony will present XPages – Taking Themes to the Next Level. Tim recently presented this at BLUG (Brussels Belgium) and is scheduled to present at UKLUG (Manchester England). This is a perfect follow on to the recent TLCC – XPages Learning Event.
The live blog will start here around 11:30 am, EST.

Most XPage developers who have already started working with themes understand they offer a simple way to ensure inclusion of stylesheets and client-side JavaScript libraries, as well as automatic addition of style classes to components that match certain criteria. But themes are so much more powerful than that. This session will teach you how to leverage the full potential of themes to keep your XPage source code lean and tidy, enhance the performance of your applications, maintain device-targeted user interfaces, and even streamline resource management within large development teams. This session might just change the way you think about the very nature of XPages.

February ATLUG – Live blog on Domino support by Michael Lee of the IBM SWAT team

Today’s Atlanta Lotus Users Group meeting will feature Michael Lee of IBM, who is a principal member of IBM’s Domino SWAT team.  The live blog will start here around 11:30 am, EST.

Developers, you know how valuable it is to understand complex administrative issues so don’t feel left out! There
will be value for everyone in Michael’s presentation. Michael’s Domino SWAT team routinely deals with the
most complex support issues related to Notes and Domino. Michael will share some of the most challenging
problems his team has faced and how they solved them and will share his insight and experience as a SWAT team
member. There will be lots of time for Q&A!