An Introduction to XPages for Lotus Notes Developers


4CTechnologies & XPages

My name is Aaron Brake, and I am a Notes development professional of 6 years. I am excited to be the author of a recurring column on the 4CTechnologies blog based around my experiences with XPages, with the goal of sharing my knowledge and our company’s capabilities with other prospective XPage developers.

What I’ll try to do here is reveal some of the tricks I’ve learned to understand and utilize XPages from a background of traditional Notes development. I’ll also point out several web resources and training methods that led me to the techniques and code samples that I use. As I continue, I hope that I will both highlight the benefits of using XPage development, as well as break down the barrier of understanding that clouds the development community.

 A little about my background

I started development in Notes 7, and worked primarily in LotusScript and Formula language. I have experience with both client applications and web-based Lotus applications. This year, I was given the opportunity to do my first large-scale XPages project when a client requested a web and mobile solution for standards tracking and reporting across numerous locations within their organization. This gave me the opportunity to begin branching out into this development method, and further, understand its benefits.

What is an XPage

Simply put, an XPages is a web and mobile application development platform built atop IBM Domino functionality. XPages hit the market with an unfortunate learning curve and slow movement to adapt. However, as time progresses, and more projects are done using the technology, applications are starting to take advantage of the benefits of notes collaboration combined with the new technologies provided by XPages.


As a Notes developer, why use XPages?

There are many reasons to use XPages. First, XPages allows for web-enabled systems without relying on the Notes system of converting forms to HTML. This gives the developer greater control over structures that have long been difficult to maintain in traditional Domino environments. An XPage developer has control over the content definition, the version, all head data, and can, as a result, fully utilize up-to-date structures in HTML 5 with no conflicts or difficulty. Additionally, XPages add support for Managed Java beans, as well as support for Server Side JavaScript, Ajax, and integrated Dojo widgets.

Sounds great, but what’s the catch?

XPages can be difficult to get into. The structuring, while similar to the Domino development system, relies more on XML and JavaScripting standards to maintain its data sources. Additionally, many Notes developers have learned tricks that keep traditional Domino development as being the most efficient way of creating new systems, building on old code repositories, and design structures. Also, the performance of XPages in the Notes Client requires a bloated server response, leading to loading and performance issues, which can detriment the unified interface that XPages present.

Where do I start?

As I prepare to share some of the things I’ve learned, I’d like to point out just a few of the many resources that helped me when I was starting out. All of these are fantastic places to begin learning about XPages and to stay up to date on the latest news.

In the coming weeks, I’ll begin posting some more technical articles and code samples that I think will help Notes developers break down the barrier between traditional development and XPage development. Some of these topics will include the utilization of Custom Controls, getting the most out of Dojo and the Extension Library, hidden gems in XPages, and dynamic data binding.

This Post Has 7 Comments

  1. X-Pages project is another big project of IBM Company, launched by the qualified professionals of IBM after achieving success in the Lotus Notes Development program.

  2. Hi Aaron,

    Thanks for sharing your knowledge. I have been working in notes from version 4.5 and done numerous client and web application development, but when I turned to learn xpages, it looks like a real challenge. Eagerly waiting for you future post.

    Wish you the very best in what you do.

  3. Aaron,
    Glad you like the show! Thanks for saying so.

    Are you on Twitter? I’ve no idea how to contact you. Drop me an email please if you get a chance please. My info is on every video.


  4. Aaron,
    Nice post. I’ll be interested in this series. Thanks for the notesIn9 mention! I appreciate it.

    XPagesBlog isn’t very active anymore and what is there in some cases might be getting dated. Not sure. I’d suggest XPages.Info, and even has good starts for XPages information.

    If you’re not already you might want to get listed on and I’m not sure how you get in CT’s radar but if you can’t find it let me know and I’ll ask one of the people involved.

    Looking forward to you next post!

    1. Looks like you already did get in the radar of Collaboration Today! I’ll be interested to follow your experiences. As I’m sure you’re finding, XPages is a culture shock after Notes Client development (that was the bulk of my prior experience too). But there’s enough to satisfy the most voracious appetite for learning. The source XML makes it easier to share experience and code snippets (I’m sure you’re already aware of XSnippets). And the head-banging moments of trying to understand why something’s not working are much outweighed by the almost limitless possibilities of what’s possible.

      1. Paul,

        Thanks for reading! I am definitely finding that the more I dive into XPages the more I feel like I can accomplish (and quicker, in many cases), but that first step was quite the leap of faith. It’s my hope that hearing some similar experiences can convince some others to take the plunge and really start digging into what XPages can do!

    2. David,

      Thanks for responding! It means a lot that you’re excited to hear more about my upcoming posts. I’m hoping to put a spin on it that goes a little beyond tips and more into comparison between traditional and XPage developement, to help out some people that are in the same situation as I was. Your tutorials were a big help to me in getting started, so I had to give you a mention in my first article!

      I had noticed that the XPagesBlog was starting to slow down, and I appreciate the info. It was another of the sites I got into early in Xpage Development. I hadn’t yet checked out, but it looks like there’s some great information there.

      And finally, thanks for the suggestions. It looks like we did get picked up by CT, and I’ll see about getting listed up on Planet Lotus as well.

      Hope you enjoy my future posts!

Leave a Reply

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.