Archives for the ‘XPages’ Category

7 Dec 2015
1

John Jardin’s 2nd Session at IBMConnect 2016: Optimus XPages

IBM-Connect-2016

So, to my utter surprise, my second Abstract for IBM Connect 2016 was approved. It’s titled “Optimus XPages: An Explosion of Techniques and Best Practices“. For a reference to my first Abstract, click here. Just so everyone knows, IBM Connect takes place at “The Hilton” in Orlando, Florida. My session “Optimus XPages” is scheduled for Monday the 1st February 2016 at 3:30pm.

I am extremely excited to be presenting this session. Over the past year I have implemented a number of solutions running on XPages, and I got to experience first hand the improvement in performance and overall user experience when comparing these solutions to ones I developed in the past. I feel I have come up with some serious practices that anyone can easily apply to make their applications work and feel fast and responsive, whether running on a local network or in the cloud.

Below is a rundown of my session:

TITLE:

AD-1074 – Optimus XPages: An Explosion of Techniques and Best Practices

SESSION SUMMARY:

Starting a new XPages project but not sure it’s going to be done right the first time? Do you have an existing application that doesn’t seem to have that “X” Factor? In this session John will demonstrate how XPages developers can apply proven techniques and best practices to take their applications to a game changing level.

WHAT WILL ATTENDEES LEARN:

  1. Rapidly develop responsive applications
  2. Improve user experience and response times with background and multi threaded operations
  3. Keep your XPages lightweight with code injection
  4. Create scheduled tasks the XPages way
  5. and much more.

I hope to see you all there :)

Cheers for now :)
John
3 Dec 2015
2

John Jardin’s 1st Session for IBMConnect 2016: The XPages of Things

IBM-Connect-2016

I am honoured to be presenting at IBMConnect in 2016 at “The Hilton” in Orlando, Florida. So far I will be presenting 2 sessions, with a possible 3rd to be confirmed :)

My first session is a Jumpstart Technical Breakout that’s scheduled for Sunday the 31st January at 3:45pm. I’m very excited to have this date and time slot as it gives me the opportunity to kickstart the tempo for the event by showing off some XPages and Bluemix awesomeness.

The following is a rundown of my session:

TITLE:

JMP-1075 – The XPages of Things: Integrate Bluemix with Your XPages Applications for a World of Possibilities

SESSION SUMMARY:

Have you ever wondered if it would be possible to send Push Notifications straight from your XPages application? What about taking your application logic to the next level using cognitive computing? All of this and more is possible and at your fingertips. John will demonstrate how applications can leverage services on the Bluemix Cloud to expand on what’s currently possible in XPages.

WHAT WILL ATTENDEES LEARN:

  1. Send iOS and Android Push Notifications from your XPages application
  2. Use Watson Services to improve user experience and interaction
  3. Implement Web Sockets for real-time communication
  4. and much more

I hope to see you all there :)

Cheers
John
28 Aug 2015
4

Africa’s Technology User Group is now on Meetup.com

It’s finally here!!! Africa’s Technology User Group (aka AFRITUG) has just been launched on Meetup.com.

This meetup is for those interested in technology and innovation focused primarily around IBM platforms. Whether you’re a newbie, a specialist, or a general user of the technology, there’s a place for you here. Activities will include local meetups, events, workshops, skills growth, showcases, demos and much much more.

We are in the beginning stages of this group and will soon be uploading valuable content as well as scheduled meetups. In the meantime, it will be great to start connecting with everyone.

Click here to join now and stay tuned for more. See you on the other side :)

20 Aug 2015
6

IBM Domino Tip: Pass HTML to RichTextItem without using MIMEEntity

Notes8_9Logo

This is a quick tip on how to include HTML when populating a RichTextItem object without using MIMEEntity in IBM Notes/Domino.

First some venting

It’s amazing how certain easter egg features have been available in the Domino Object Model since release 5, that I’ve managed to keep missing, yet constantly required. This morning I happened to stumble across one of them.

For the longest time, whenever I needed to send out a mail programatically via code that needed even the slightest bit of HTML, I would resort to using a MIMEEntity object. Which is great don’t get me wrong, but most of the time it’s actually overkill. This morning, all I wanted to do in my RichTextItem is include a URL (Not a doclink, but a predefined URL). I would do this by using:

RichTextItem.appendText("www.ukuvuma.co.za");

This was never an issue for me back in the day because, in IBM Notes Mail, Notes would see it as a url and convert it into a hyperlink. In my particular case when testing with Gmail and Outlook, the url just showed as plain text and nothing more. “Oh crap!” are the words I believe I used this morning. I kept thinking…”here we go again with MIMEEntity“.

Thankfully, I took a minute to double check the Designer Help. At first I noticed that there were no real options for me in the RichTextItem object, but when taking a look at the RichTextStyle object (this is used to provide standard font changes, etc. in your RichTextItem), I noticed what is right now to me the most beautiful object property of the year….PassThruHTML!!!

The Solution

Using my example above, assuming you have a RichTextStyle object initiated, all I needed to do was the following:

RichTextStyle.setPassThruHTML(true);
RichTextItem.appendStyle(RichTextStyle);
RichTextItem.appendText("<a href="www.ukuvuma.co.za">www.ukuvuma.co.za</a>");
RichTextStyle.setPassThruHTML(false);
RichTextItem.appendStyle(RichTextStyle);

That’s it. Domino converts the text into HTML and applies it to your RichTextItem object. I’ve spent the day kicking myself for not seeing this before, but I think I’m over it now. As long as this blog post can help others early enough from following the same road I travelled.

Till next time :)

John

30 Jul 2015
0

XPages and Bootstrap Tip: Style the File Download control

This is a quick tip on how to convert a plain looking XPages File Download control into a Twitter Bootstrap style Table.

Everyone should know by now that the latest XPages Extension Library (2 versions ago actually) includes the Twitter Bootstrap framework. While is this brilliant, the reality is that many of us already have existing designs where Twitter Bootstrap is manually included. This means that XPages controls used in these designs look plain when compared to adding bootstrap-styled HTML.

A good example is the File Download Control below. I’ve added this control to my XPages app that has Twitter Bootstrap manually configured, but the control is not affected by this framework:

FileDownloadExample1

If you view the HTML source of the File Download Control in Firebug, you’ll see it’s just a table with row and column tags. This is good news, because Twitter Bootstrap’s table designs follow the same pattern, which means that by just adding 2 Bootstrap classes to the control, you change look of it to:

FileDownloadExample2

To achieve this, all you have to do is add the “table” and “table-hover” class to the File Download Control. See example below:

<xp:fileDownload
   value="#{attachmentsDoc.Attachments}"
   rows="1000"
   id="downloadAttachments"
   displayLastModified="false"
   hideWhen="true"
   allowDelete="true"
   displayCreated="false"
   styleClass="table table-hover">
</xp:fileDownload>

You can imagine that this one example opens a series of additional opportunities for those who are manually applying the Twitter Bootstrap framework to their XPages Design.

Till next time
Cheers :)