IBM ConnectED 2015 – Day Three Questions

Day 3 in Orlando started early – pre first cup of coffee for some of my team.  I joined <a href=””>Joe Russo</a>, <a href=””>Miguel Estrada</a>, <a href=””>Kirti Gani</a> and <a href=””>Vijay Francis</a> at the IBM Connections Developers ChalkTalk.

The ChalkTalk was very well attended for 7:00 AM on the last day of the conference – partners, customers and developers came with questions, comments and thoughts.

The ChalkTalk had a wide range of questions ranging from User Interface, to tapping IBM Developers, to chats, to OSGI plugins and to our website – <a href=””>IBM Connections Developers</a>.

After the ChalkTalk, I demoed to a customer the <a href=””>API Explorer</a> and she had a simple request for a quick curl command to easily see an operational command.  It’s a fair point, and we are considering it for the <a href=””>Social SDK</a>.

In Between the ChalkTalk and <a href=””>Meet the Developers</a>, I answered a few question.

I have an SBTSDK question.  How do I get the data out of a JsonJavaArray, how do I use it?
You can always browse github and search for the java source you’re interested in and find the code.
JsonJavaArray is java lang iteratable.
JsonJavaArray jja = …
for(JsonJavaObject jsonObject : jja){
… process the object …

I ran into an issue with Maven/Liberty and the photosharing app. What can I do to fix?
If the user starts the web app on Liberty, and receives the following error in the Liberty Console. SBTFilter class not found.

Then the user should switch to the Error Log in the Eclipse J2EE perspective

Expand the folloing error, click on class path

Click Ctrl + 1 (Quick Fix)

I have a wiki that I am using via API.  How do I tell if the user has edit capability?
The docs describe this well.  The doc uses an enclosure link that rel = edit if the users has the ability to comment or post.

I also helped a partner debug an OAuth Provider issue.  If I get a lesson learned, I’ll post a blog for you all.

I attended the Ask the Developers and the Product Managers. I sat in the front row waiting for an AppDev question that needed my expertise (after looking at the people on the stage that need was near zero).  Did you expect anything less from that session?  I did not.  It was also cool to see <a href=””>Pags</a> called up to the stage to answer cool domino questions.

From “Ask The”  I went with Miguel to Social File Sharing presentation and copresented with Miguel on our experimental Bluemix service.  More information to come on the site.

IBM ConnectED 2015 – Day Two Questions

IBM ConnectEd Day 2 was even busier than the first day. I had deep discussion on SAML, OAuth, DB2, SSL, and I’ve incorporated many of them here.

Question 1:
I heard about Profiles Administration. How do I use it IBM Connections Cloud?
Before I answer, I think the confusion arises from our documentation which has a Profiles Administration API topic in the reference literature.

There is an alterative API in the IBM Connections Cloud, it’s called the Business Support Systems API (BSS). With the BSS APIs, you (the administrator of the organization) can request a UserID of a User, and choose to update the user’s profile.

We have a fully documented API, and some sample code.
Get the UserId for BSS

Update the UserId’s Profile

Here are some examples in Java

Question 2:
Yes, why isn’t there a release of the social business toolkit since August?
Actually, there is. it’s posted on github releases.
Please continue to reference the site and find the latest release information there.

Question 3:
I had a chat with Sedar about the fixes the team added to support Turkish and the IBM Social Business Toolkit. He mentioned that he had a few fixes he’d like to add and a new OAuth Handler. What could/should he do? (granted it wasn’t a question, more of a discussion)
It’s opensource. You can fork the github project and do what you’d like to do. You can make a lightweight package, and change the oauthhandler to work the way you need.

Question 4:
I have a great deal of investment in my libraries and core java code. How can I use the Social Business Toolkit?
If you’ve made the investment like this partner, the best answer is to look at the XPath Expressions and reuse the enums from the social business toolkit to limit the amount of mastery needed for ATOM/XML processing.

Question 5:
IBM Connections is making an AJAX Proxy request to a backend service. I continue to have problems with SSL. How can we figure this out?
A very helpful post from StackOverflow has helped debug an issue and retrieve all the right client certificates.

Thanks to a post on StackOverflow all you have to do is:
openssl s_client -connect : -showcerts

Copy the generated certificates into CRT files and add to the CellDefaultTrustStore.

Question 6:
SSL is causing me heartburn. How can I debug SSL issues to see that the CA is accepted?
Here are the 8.5.5 directions
Specify the system property:

In the Administrative Console, select the following: Servers > Server Types > WebSphere Application Servers > server_name > Expand Java and Process Management (under Server Infrastructure) – >Process Definition > Java Virtual Machine > Custom Properties > New.

To trace the Deployment Manager, select the following: System Administration > Deployment Manager > Expand Java and Process Management (under Server Infrastructure) >Process Definition > Java Virtual Machine > Custom Properties > New.

Type the following:

Value: true
See NOTE at the end of this document for very busy production servers.
Click Apply, and Save.

Save your changes to the master configuration.

Expand TroubleShooting > Logs and Trace > server_name.

Select Diagnostic Trace Service. Increase the Maximum Number of Historical Files from 1 to 10.

Click Apply, then select Change Log Detail Levels.

Clear the trace string in the box and replace it with the following trace string:

Click Apply, and Save.

Save your changes to the master configuration.

Stop the server and clear/backup the logs.

Start the server and recreate the problem.

Note: The output will be in the file specified in Servers > Server Types > WebSphere Application Servers > server_name > Logging and Tracing > JVM Logs. The default is set to the SystemOut.log file and trace.log

Question 7:
How can I tell the vitality of the Social SDK project?
IBM doesn’t disclose any private data on customer use of a project without using the proper channels and approvals. However you can look at project statistics to tell specific details. and

You can also see the latest releases on the releases page – and you can also pull the code from Maven.

Question 8:
We have an application that reads blogs, how do we know if a user has the right to write to a Public blog?
Look for the link node and if they have access to the rel=edit, they have access. Thanks to Vijay Francis for the tip

Question 9:
I have developed some custom OAuth Code to refresh bearer tokens. The system doesn’t make subsequent requests properly after the calls. What do I have to do?

CachedDBToken 3 result is bad The token with key: lKItvXpeGtZiDb9RvV9Xw6IDJIcZIdIpIEKjhy3QlhetPUl4F9 type: authorization_grant subType: refresh_token was not found in the token cache.

Enable tracing on OAuth and the JDBC Requests

The partner also needed to change the refresh token step so the token was slightly modified.

Question 10:
How do I get started with the Social SDK?
You can download the latest social business toolkit
You download and expand the zip file.

The getting started page is

You can also reference to play around with the code, and see what cool things you can do.

If you have any questions you can post to StackOverflow or email me directly.

Question 10:
We have developed Editor enhancements for other products, how do we do this in Connections?
Check out Rob Novak’s Blog

Question 11:
It was a pain to find the connections provider urls for OAuth?
The URLs are formatted liked the following:

IBM ConnectED 2015 – Day One Questions

Question: Setting up the WidgetContainer for Profiles Administration page
you can follow this link, it goes into setting up a ficticious company called Acme Airlines’s application. you can ignore that part and focus on the nice steps and pictures which show you how to configure and setup an administrator with the profiles Administration page.

you can test all your OpenSocial gadgets using the BootStrap homepage.
an example URL is

You are most likely going to get back a warning saying, Featured Disabled

In just a few steps you can enable it on your system.

On your deployment manager profile, open config/cells//LotusConnections-config/opensocial-config.xml
Edit the File
and look for

make sure enabled is true, allowSSOFeature is true, and allowIntranetProxyAccess is true.
Also set allServers=true

Sync the Nodes so the config goes down to Your AppServer, and then Restart the AppServer.

That should help get you started building and quickly testing the opensocial gadgets.

Also with regards to dynamic heights javascript. We can certainly talk about the limitations in IBM Connections (I think we limit a Gadget to a width of 375px) I don’t think we have any limitations on the height. do the required parameters for dynamic-height should be honored.

MAS202 Customizing IBM Connections

At IBM ConnectEd 2015, I am lucky enough to be one of the Jumpstart Presenters.  It’s at least my fifth year presenting at the Conference (neé Lotusphere, IBM Connect); I’ve lost track how many times.

Once again, I am going to present on Social Application Development, and I am joined by my team (as noted on the team blog).

MAS202 Customizing IBM Connections 
 Sun 25-Jan, 03:45 PM - 04:45 PM @ Swan - Mockingbird 1-2
 Presenter: Paul Bastide
 IBM Connections enables you to connect and socialize with colleagues, find experts, and quickly share and organize information to get work done.  As a developer, you can leverage the IBM Connections data to provide a better experience for your users.  In this session, you learn what features you can extend, leverage and use to build a compelling experience.  The session highlights how best to extend and work with the IBM Connections Cloud.

You locate the Swan – Mockingbird 1-2 using the Swan’s map.

Swan Mockingbird Presentation
Swan Mockingbird Presentation