|Latest 7 Posts
| Big News for Domino, Connections and OpenNTF|
Fri, Sep 15th 2017 300
| Notes, Domino, The Cloud and Performance|
Thu, Aug 24th 2017 7
| IBM Notes and Domino FP9 (a.k.a Zircon)|
Fri, Aug 18th 2017 12
| Dojox Charting Update – Part Two|
Thu, Aug 10th 2017 5
| Dojox Charting Update – Part One|
Thu, Jul 20th 2017 5
| Call to Action: Designer Lite Plugin|
Wed, Jun 28th 2017 7
| CRUD, NoSQL, Domino and Workflow|
Thu, Jun 22nd 2017 3
| Big News for Domino, Connections and OpenNTF|
Fri, Sep 15th 2017 300
| IBM Notes and Domino FP9 (a.k.a Zircon)|
Fri, Aug 18th 2017 12
| XPages Dialog Control and Partial Refreshes|
Thu, May 28th 2015 11
| Bootstrapv3 Form Table and Edit Box Width|
Tue, May 23rd 2017 11
| From XPages to Web App Part Fourteen: Calendar View|
Tue, Feb 23rd 2016 10
| A Cool Use for Component’s Binding Property|
Tue, Jun 3rd 2014 9
| The Perils of getColumnValues().get(0)|
Sun, Jul 20th 2014 9
| IBM Connect 2017|
Mon, Feb 13th 2017 9
| Swagger for Domino Developers – Part Four: Generating Domino Design Elements|
Fri, Jun 16th 2017 9
| XPages OpenLog Logger v5.0|
Wed, Apr 23rd 2014 8
||Intec Systems | IBM Business Partner | Collaboration Solutions Provider » Blog |
||Collaborative Solutions for Progressive Businesses|
|| 2017-07-29 12:20:11 Failed to parse RSS file. (Not well-formed (invalid token) at line 1, column 1). |
This could be a simple time out issue. Validate your feed here: feedvalidator.org or validator.w3.org
|Feed Last Checked
||Sep 15, 2017 7:45:24 PM EST. Realtime Update:
||Fleet, Hampshire UK
| Recent Blog Posts
Big News for Domino, Connections and OpenNTF|
Fri, Sep 15th 2017 7:31p Paul Withers
There are signs you can tell summer is over. For us in the northern hemisphere, the weather starts feeling chillier (although it’s been very changeable in UK most of the “summer”). And things start ramping up as people get back from holidays and Q3 comes to an end.
We’ve already seen Domino FP9 or Zircon released last month and another Verse on Premises release. It’s also good that I only just realised I’ve been running FP9 for a few weeks now. With previous r
Notes, Domino, The Cloud and Performance|
Thu, Aug 24th 2017 1:04p Paul Withers
Over the last month or so, I’ve been working on an application that pushes performance quite a bit. Last week I published a blog post about aspects of developing for performance. I’ll be writing a future blog post (maybe more than one) on the approaches I’ve taken for performance. But in this blog post I want to take a step back and discuss why I had to address performance, even after quite a bit of optimisation from the initial development. That’s because the learning re
IBM Notes and Domino FP9 (a.k.a Zircon)|
Fri, Aug 18th 2017 4:27p Paul Withers
Today Barry Rosen announced on Twitter that Notes and Domino FP9 have been released on Fix Central and will be added to Passport Advantage next week. Considering that just last week the target date announced was 25th August, this continues the theme of releases ahead of published schedule we saw with FP8.
A look at the Release Notes shows something else, a code name for the release – Zircon. And Barry has also confirmed that FP10’s code name will be Mystic Topaz, continuing a theme o
Dojox Charting Update – Part Two|
Thu, Aug 10th 2017 12:11p Paul Withers
First of all, with the demo database, there are a couple of basic, standard changes. The first is that I’m using the XPages extension library, so that’s enabled in the Xsp Properties. That’s used for the Java code, to leverage the ExtLibUtil class to give easy access to standard XPages objects and virtually every Java XPages developer will be using ExtLibUtil. Whether or not you use Java in XPages is a matter of choice, personally I moved to using Java for anything significant
Dojox Charting Update – Part One|
Thu, Jul 20th 2017 1:25p Paul Withers
It’s over three years since my last blog post on the charting options available with Dojo. At that time the version of Dojo in XPages would have been later than 1.6, when a major overhaul of Dojo for AMD processing had taken place. But then and afterwards I didn’t revisit the code to load Dojo charts. This week I needed to create some charts again, so took a step back and looked at the documentation on the Dojo site (there’s also the reference guide). Although a lot of the func
Call to Action: Designer Lite Plugin|
Wed, Jun 28th 2017 12:15p Paul Withers
At Engage I hosted a round table discussion titled “Domino Next Generation IDE“. The discussion was around giving / promoting CRUD API access to databases, views and forms, as well as managing scheduled processes (which in the NSF world is handled as agents). The discussion was useful and covered a number of aspects. Since then I’ve digested and distilled the feedback I received, done some further investigation, and put together a spec. That has now been published on OpenNTF
CRUD, NoSQL, Domino and Workflow|
Thu, Jun 22nd 2017 8:30p Paul Withers
Swagger for Domino Developers – Part Four: Generating Domino Design Elements|
Fri, Jun 16th 2017 12:21p Paul Withers
This final part has taken a while, because of problems that will become apparent during the blog post! But I’ve finally overcome them, in a (hopefully) future-proofed manner, which I’ll also go into.
Another one of Stephan Wissel’s projects on GitHub is the Swagger Domino Code Generator. If you’ve followed the other parts of this blog series and looked at the Swagger Editor, you’ll see there are various code generators for generating server-side code:
Some Recent XPages (and Plugin) Learning Points|
Wed, May 24th 2017 12:11p Paul Withers
With a recent project, I’ve been deep in the bowels of the XPages component tree and run-time, with some detailed debugging involved. This has brought a few things to my attention
Dialogs and Component Loading
I’ve been adding a component to an XPage and then using Java on page load to access it. But when I put the component in a Dialog, my code failed. The problem is that although the Dialog component is accessible, the components within it are not loaded into the component tree unt
Bootstrapv3 Form Table and Edit Box Width|
Tue, May 23rd 2017 1:21p Paul Withers
Yesterday I fought for quite some time trying to get Edit Boxes in a Form Table to go full width. It’s a starter database I’ve had for some time and converted from OneUI to Bootstrap. So I have some styles for setting the width of Edit Boxes, depending on whether I want small, medium or full-width. My CSS class for full width sets “width: 100%”. But this was being ignored.
Using Firebug I could see it wasn’t being overridden by something else. I could see that the E
Engage Review and Slides|
Thu, May 11th 2017 1:15p Paul Withers
Over the last few days I’ve been attending Engage. As ever, it was an excellent conference, with a great attendance from across Europe. (If you’ve not attended a user group recently and will not this year, put it on your list for next year, May 2018.) As ever, Theo is a brilliant organiser and the social events were great. As ever, the speakers were top quality.
The conference got off to a great start when Barry Rosen told me on Sunday evening that a free non-production entitle
Domino Server for Developers Entitlement Announced|
Mon, May 8th 2017 9:29a Paul Withers
Today at Engage Ed Brill announced that in Q3 there will be a Domino server licensing entitlement for developers. Yes, you read that correct. There are still some logistics to be finalised (e.g. access to feature packs to keep up to date), but this is great news.
I’d like to thank Ed, Barry Rosen and Peter Janzen as well as anyone else I’m not aware of who has been involved in making this happen. It’s something I’ve been speaking to Barry and Pete since IBM Connect 2016,
Intec Speakers Next Week at Engage|
Thu, May 4th 2017 12:50p Paul Withers
Next week IBM Lifetime Champion Theo Heselmans is hosting Engage, back in Antwerp, of which I have fond memories. The last time the conference was there, Tim Tripcony and I spent quite some time discussing all things XPages on a walk around the city and at the speakers dinner. I’m looking forward again to enjoying the beautiful city. This time both myself (Paul Withers) and Tim Malone will be speaking.
The Power To Believe
On Monday at 11:45 Tim Malone will be speaking with HP Dalen will b
Swagger for Domino Developers – Part Three: Mock Server and Thanks Stephan Wissel|
Mon, Apr 10th 2017 12:20p Paul Withers
Stephan Wissel – One of Our “IBM” Champions
As you may have seen, Stephan Wissel has recently left IBM to join SalesForce, as Rene Winkelmeyer and Mikkel Heisterberg did last year. because this part of my blog series will cover Stephan’s session from IBM Connect earlier this year and setting up a mock server for an OpenAPI (aka Swagger) definition, it seems a good time to thank him for his efforts over the years. His twitter feed has been very helpful in giving early noti
Swagger for Domino Developers – Part Two: Swagger Editor|
Wed, Apr 5th 2017 1:54p Paul Withers
The first step, then, is to install NodeJS. NodeJS seems to be
The Awesome New Functionality of ODA Part Two|
Tue, Mar 28th 2017 4:43p Paul Withers
Part one of this, which covers the background, is here.
Before looking at some code, it’s worth just covering performance. Obviously, on a busy production server, if you’re running code for every save of a document, code needs to be optimised. To give you an idea, here’s a snippet of conversation:
“About” is good, but something more accurate is better. This happened the following morning, early October, with code echoing event messages to the server console. The fi
ODA Update From IBM Connect: The Awesome New Functionality of ODA|
Sun, Mar 26th 2017 11:45p Paul Withers
At the end of my OpenNTF Domino API session with Stephan Wissel at IBM Connect, I showed a demo of some experimental new functionality in ODA. Hopefully those who saw it were impressed with the power and potential, especially because part of it reproduced the Watson Workspace notifications integration that the Sapho product showed in the OGS, but this was built with open source over lunch before the session.
First, I need to give some background.
For a few years now, there has been functionality
Validators, Vectors and Strings â Oh My!|
Fri, Mar 24th 2017 8:34p Paul Withers
….Or, “When is a blank value not a blank value!”
This week I hit a problem with XPages validation. I had a custom Java validator that was doing some complex validation across multiple components. The validator was affixed to a Dojo List Text Box. It had a requiredValidator as well, to ensure the value wasn’t blank. I was then doing some additional checking on the value. But my code suddenly started throwing an error on one document. Here is part of the stack trace:
Swagger for Domino Developers – Part One: Introduction|
Tue, Mar 14th 2017 6:30p Paul Withers
At IBM Connect I led a team for the Hackathon. Technically and in terms of meaningful outcome, the day was a bit of a disaster. In terms of learning and working together, it was still enjoyable. My main focus for the day was never to win. For me, the main aims were for the team to learn something, whether from one another or from the tasks and to have a good time. After all, everyone was giving up a day of their time, and if it’s not enjoyable, everyone would be best served spen
Domino and Notes Feature Pack 8|
Tue, Mar 7th 2017 9:10p Paul Withers
Today Notes and Domino Feature Pack was released. It’s good to see a developer-heavy release finally delivered. Apart from the Extension Library on OpenNTF, developers have had little to engage their interest over the last three years. But FP8 is a marquee release for developers and app dev server users.
The most noteworthy point for XPages developers is that the latest Extension Library release has been rolled back into the core, including the Name Picker, Value Picker a
OSGi Plugins (Extension Libraries) and Loading Order|
Mon, Mar 6th 2017 10:47a Paul Withers
Those who were at my session about ODA (OpenNTF Domino API) with Stephan Wissel at IBM Connect may remember him mentioning that his preferred place for adding plugins was directly on the server, because of some issues he had encountered. After Connect I asked for some clarification, so I could understand the risks, symptoms and so pre-empt any potential issues.
What Stephan and others found out when they dug into it further was that the sequence of loading OSGi plugins, or extension libraries, i
IBM Connect – Domino Application Development Review|
Sun, Mar 5th 2017 7:37p Paul Withers
This time last year, the message about Domino application development was very straightforward. Domino 9.0.2 was slated for Q4 2016, with the expectation that this would include open sourcing of not only XPages Extension Library components, but all XPages components. The XPages runtime classes would still be closed source, but things like DominoDocument datasources would be open sourced, so additional features could be added by the community and we would be able to understand how rich text is ha
IBM Connect 2017: My Sessions and Documentation Constructive Criticism Call-to-Arms|
Sun, Feb 26th 2017 8:07p Paul Withers
Last week I delivered two sessions at IBM Connect, both with strong speakers from the community.
The first session on Tuesday afternoon was GraphQL 101 with Christian Guedemann. Within an hour of reading the documentation about GraphQL, it was very apparent to me that GraphQL was a major technology for application development. And its inclusion in Watson Workspace and Watson Work Services made this conference the perfect time to introduce it to the community. It was also a good time
Intec win 2017 IBM Business Partner Excellence Award – Europe|
Wed, Feb 22nd 2017 10:27a Paul Withers
Yesterday at Connect in San Francisco Intec were announced as the winner of the IBM Business Partner Excellence Award for Europe. This Award recognises an IBM Business Partner in each geographical region who has demonstrated excellence in IBM Collaboration Solutions technology, as well as commitment, leadership and dedication to IBM and clients.
Tim Malone, Intec CEO said ‘There are many facets of a business which IBM look at before issuing this award and therefore it is due to the excepti
Watson Workspace Java SDK – 0.6.0 Released and Unit Testing Learning|
Fri, Feb 17th 2017 5:12p Paul Withers
Today I pushed up a new release of Watson Workspace Java SDK to OpenNTF. This includes all mutation GraphQL queries, namely:
As ever, the documentation has been updated and full Javadoc comments added. As before, the documentation includes examples.
This has been a big learning curve, building up my skills more on unit testing. The challenge has been that all of these mutations can only be run under a user’s authority. They fail if run jus
IBM Connect 2017|
Mon, Feb 13th 2017 7:57p Paul Withers
With a little over a week to go, IBM Connect 2017 looks set to be as busy as ever. 2016 was a challenging year as a Domino developer, testing the faith and patience of many. My attendance at IBM Connect as a speaker, Business Partner and IBM Champion may seem “business as usual”, but it has not been a straightforward journey. So I hope the experience is as positive as last year but with a more positive rest of the year.
IBM Connect Hackathon
On Monday I will be taking part in and lea
Setting Names, Readers and Authors the ODA Way|
Wed, Feb 8th 2017 12:05p Paul Withers
No matter how long you work with an API, there can still be surprises. Yesterday proved one of those for me. While troubleshooting an issue for someone with setting an Authors field in a document (it turned out there was an obscure bug that meant it was trying to recycle a String in a Vector), I shared two ways I’ve been setting Readers or Authors fields in an application using OpenNTF Domino API for a while. Then this conversation ensued:
This is, without doubt, the recommended way of cr
Git Flow, Maven, ODA and Domino FP8|
Fri, Jan 27th 2017 9:27a Paul Withers
The last few weeks quite a large amount of my work has been outside the NSF, so using more standard development tools in a more standard environment. There have been some challenges but also some refreshing experiences.
One of the big challenges for traditional Domino development is when features are requested but cancelled or fixes are required to live code while new features are in test. Fortunately, I decided from the start to do the REST service I was working on as an OSGi plugin us
Domino App Dev, Performance and Verse|
Wed, Jan 4th 2017 9:00a Paul Withers
Performance is an area that I have been very aware of with Domino, as I’ve previously blogged about. It’s an aspect I cover in basic XPages training and sessions I’ve done.
But before going any further, it’s important to realise performance falls into two distinct areas – developer performance (speed to market) and code performance (speed for users). Spending a lot of (development) time optimising performance for an app that will be used by a handful of users is rar
WWS Java SDK API 0.5.0 and GraphQL Visualisations|
Fri, Dec 23rd 2016 2:14p Paul Withers
As I’ve blogged before, over recent weeks I’ve been working with Christian Guedemann on a Java SDK for the Watson Work Services API. The documentation has been available since it was released at the end of October. There has also been a GraphiQL in-browser IDE for writing, validating and testing GraphQL queries against Watson Work Services, which is invaluable (note: you have be authenticated to Watson Workspace in the same browser for the queries to return any data).
That also has a
Tip: Copying and Pasting Java Classes in DDE|
Thu, Dec 15th 2016 11:17a Paul Withers
Earlier today I say a tweet from Fredrik Norling about a blog post he did in 2014 for copying and pasting Java code between XPages and Java agents.
Used my code to export a webservice today, great way for webservices in XPages https://t.co/GYg85tZ86C #XPages
— Fredrik Norling (@XPageDeveloper) 15 December 2016
It reminded me of something I noticed a while ago. I think it was when I was looking at the On Disk Project for an NSF while I was editing a Java agent or Script Library.
Because I sta
Intec’s Returning Champions|
Thu, Dec 15th 2016 10:36a Paul Withers
Yesterday the 2017 IBM Champions for ICS were announced during #MeetIT. It was great to see again that Intec has two champions, both returning. Tim Malone was announced as an IBM Champion for the fourth consecutive year alone with Paul Withers, who has been ever-present since the program began for ICS in 2011.
The post Intec’s Returning Champions appeared first on Intec Systems | IBM Business Partner | Collaboration Solutions Provider.
ViewScope, Full Refresh and reloadPage()|
Thu, Dec 8th 2016 3:57p Paul Withers
Recently I picked up on a discussion about managed beans, viewScope and full page refreshes. If I understood the comments correctly, the expectation was that a full page refresh would reload the managed bean.
My IBM Connect session at the beginning of this year (which is being re-run for TLCC’s webinar next week) was all about expectations and troubleshooting to verify that the expectations are correct. So I had a database already set up with everything to verify and explain what actually
Watson Work Services Java API Introduction|
Thu, Nov 24th 2016 2:45p Paul Withers
For a few weeks now, Christian Guedemann and I have been working on a Java API to send requests to Watson Work Services to interact with a Watson Workspace. I blogged about the approach recently. I was determined to avoid Java developers having to write strings of JSON data to pass as queries to Watson Work Services. Over the weekend I saw a tweet from Christian where he had incorporated the code into a Workspace Client 4 Eclipse plugin:
@guedeWebGate @PaulSWithers looking good mate
— Mat Ne
DDE Local Preview and CKEditor|
Thu, Nov 24th 2016 1:51p Paul Withers
For a long time I’ve been a strong advocate of using a local Domino server for XPages development. DDE Local preview had its place for Notes Client development, but has not had the required investment to keep pace with XPages enhancements. There are now too many quirks and workarounds required when using local preview to justify it as a viable tool. And the amount of development required to address those issues (not to mention QA and testing), even if possible do not justify the request. W
Watson Workspace and Watson Work Services|
Thu, Oct 27th 2016 3:11p Paul Withers
This week has brought the preview beta of Watson Workspace and Watson Work Services, what was previously called Toscana. These are very early days, without a doubt. Some are disappointed at the progress since the announcement at IBM Connect in February (seem screenshots can be seen here). The majority of features users take for granted in comparative products like Slack and Skype (e.g. direct messages, @mention alerts, favourites) still missing.
But there has clearly been a lot of work undertake
Whatever Happened to “XPages Extension Library: Second Edition”|
Tue, Oct 11th 2016 9:53a Paul Withers
I’ve mentioned at user groups that there is unlikely to ever be a second edition of “XPages Extension Library” and many of the reasons have been apparent for all well before now. Whatever the decision about the future of application development on Domino that IBM release, whether at the end of this year or later, I am now more convinced than ever that there will be no point in writing a second edition.
A little over two years ago, “Mastering XPages 2nd Edition” had
From XPages to Web App Part Seventeen: CrossWorlds|
Wed, Oct 5th 2016 7:08a Paul Withers
Table of Contents
Part One – The Application
Part Two – XPages Advanced 1
Part Three: XPages Advanced Database Separation
Part Four: XPages Advanced Document Wrapper
Part Five: XPages Advanced MVC Controller
Part Six: Use of OpenNTF Domino API
Part Seven: OSGi Application Development Introduction
Part Eight: OSGi JAX-RS REST Access with ODA
Part Nine: OsgiWorlds
Part Ten: Vaadin
Part Eleven: OsgiWorlds Document Wrapper
Part Twelve: Key Date Page
REST Services, JsonJavaObject and Dates|
Sat, Sep 24th 2016 10:40a Paul Withers
In REST services, the standard format for dates is the ISO 8601 format, which formats the time offset against UTC. So 24th September 2016 12:00:00 British Summer Time would be a string in the format “2016-09-24T12:00:00+01:00”. However, when you want to use that in your application, you need to convert the text string to something your application can use, which when doing a JAX-RS REST service means some flavour of Java date. java.util.Date doesn’t actually include any timezon