Classic Domino and HTML 5  

By Jesper Kiær | 5/28/24 8:21 AM | Development - Notes / Domino | Added by Roberto Boccadoro

Sometimes a simple web application based on classic Domino is in place. However Domino has not been updated in this area for many years. If you create a form and use it on the web it will create a very old HTML document type. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> In 2024 you probably want to use HTML 5 and some of the newer features in it. Fortunately you can change it to HTML 5.

XPages JEE 3.0 Beta 4  

By Jesse Gallagher | 5/23/24 10:43 AM | Development - Notes / Domino | Added by Roberto Boccadoro

Earlier today, I uploaded beta 4 of XPages JEE 3.0 to GitHub. I've been taking a slow approach to this release due to its "breaking changes" nature, but I think it's just about ready for release. Domino 14 Like previous betas, this release requires Domino 14 (and Notes 14 for development), since it moves to a baseline of Jakarta EE 10, which in turn requires Java 11. Doing this let me get rid of some extra shim code that was needed to support both Domino 14 and previous versions, and also let me move to some newer language constructs. If you're interested in the sorts of things that the new versions of Java brought, check out the OpenNTF webinar from April, where I talked about just that.

Quick Tip: Did you know? DDE uses .gitignore  

By Oliver Busse | 5/23/24 10:42 AM | Development - Notes / Domino | Added by Roberto Boccadoro

ne thing I recently found out is that Domino Designer respects the .gitignore of your on-disk-project (ODP). In general it’s obviously helpful that this file is respected in your local repositories and with your favourite git client. I wasn’t aware though that Domino Designer also uses this file to decide whether or not to import a resource from the ODP into the NSF.

Building applications in a build container  

By Daniel Nashed | 5/13/24 4:32 AM | Infrastructure - Notes / Domino | Added by Roberto Boccadoro

Specially when developing for different target versions of an OS or an application a build container can be very helpful. But build containers are also really helpful in larger teams when everyone should use the exact same build environment. The Domino container project supports adding the Notes/Domino C-API SDK to the container image. In case of Domino libnotes.so is required. Therefore compiling requires at least an installed Domino server with the same or newer version than the SDK version. I built a Domino 14.0 FP1 image including C-API 14.0 and tagged it hclcom/domino:build. For this blog post I am using the simple test program in the container projects automation test directory --> https://github.com/HCL-TECH-SOFTWARE/domino-container/tree/main/testing The directory is defined as a volume inside the container /build.

Development Containers - the fine print  

By Stephan Wissel | 5/13/24 4:30 AM | Development - Notes / Domino | Added by Roberto Boccadoro

Development Containers are supposed to liberate your development environment from a specific local installation, like container technology liberated your runtimes (a.k.a YAMLed them into Docker or Kubernetes). Development != Runtime Containerization for development has some overlap and quite some difference to containerization for production:

Domino Container Project: software.txt link & new start script version  

By Daniel Nashed | 5/9/24 3:22 AM | Infrastructure - Notes / Domino | Added by Roberto Boccadoro

The container project contains a software.txt file with all the web-kits used to build images. For some technical reasons the file was located in two places. 1. The build.sh script uses software.txt for checking web-kits before the image build starts. 2. The actually image build process uses software.txt to verify the downloaded web-kits before installing them. software.txt and current_version.txt can also be added to a custom software directory (SOFTWARE_DIR) or remote download location (DOWNLOAD_FROM).

After upgrading Sametime to V12.0.2 you cannot send messages to offline users  

By Remco Angioni | 5/9/24 3:20 AM | Infrastructure - Sametime | Added by Roberto Boccadoro

After upgrading to Sametime V12.0.2, we cannot send chats to offline users anymore using client or mobile app. After opening a case, HCL told us that there should be a policy for that. But this policy doesn't exists in ../sametime-config/policy/policies.user.xml.

Engage 2024 – Some random reflections  

By Roberto Boccadoro | 5/3/24 6:43 PM | Business - Events / People | Added by Oliver Busse

This time it was the Handelsbeurs, the old stock exchange. Is a Gothic building, really extraordinary. I did not take pictures, but my good friend Hogne Bo Pettersen did and on the Engage website you will find a link to his great job and pictures taken by others. He told me “it doesn’t happen every day that you can take a picture of a speaker with the background from Game of Thrones”. This should give you an idea of the location we were.

My thoughts on Engage 2024  

By Martijn de Jong | 5/3/24 6:42 PM | Business - Events / People | Added by Oliver Busse

Last week was the HCL user group event Engage in Antwerp, Belgium. It’s one of my favourite events. It’s meticulously organized by Theo Heselmans, who this year organized Engage and its predecessor, BLUG, for the 15th time. As he announced last year in Amsterdam, it was also the last time that he would organize this event, and it’s therefore logical that this fact played an important role during the event.

Be careful with search-admin role in HCL Connections   

By Christoph Stoettner | 5/3/24 5:37 AM | Infrastructure - Connections | Added by Roberto Boccadoro

I showed, in several slides and sessions, how you can use the search-admin role in the search application of HCL Connections for troubleshooting and reviewing some key configurations. In several environments, my user or other administrative users have this role, just to access the link to /search/serverStatus for example. Be aware, when you assign the search-admin role in the search application to a user, the advanced search will not return any result.

Adventures in AI  

By Paul Withers | 5/2/24 9:23 AM | Development - Notes / Domino | Added by Roberto Boccadoro

Those who were at Engage will have seen some of the experimentation I’ve been doing with AI in the context of VoltScript. In the OGS Jason demoed how I used it to provide code for a loop, correcting it with information about APIs specific to VoltScript. Before my VoltScript session, I showed two videos demonstrating how I’ve used AI to add value to the VoltScript coding experience, firstly by checking unit tests for code coverage and then by checking code complexity of functions in VoltScript Collections.

HCL SafeLinx 1.4.2 available -- New best friend "Domino CertMgr"  

By Daniel Nashed | 5/2/24 9:21 AM | Infrastructure - Notes / Domino | Added by Roberto Boccadoro

This was a quite high rated AHA idea. So the SafeLinx team and Domino team teamed up to implement it. The flow is integrated into the SafeLinx UI and SafeLinx also allows ACME challenge "passthru". There isn't any change in CertMgr needed. It is implemented in a way that you could implement your own integration flows. If you have a specific integration idea, ping me. I can point you to the right direction.

The conf-file in the Domino Container build script  

By Martijn de Jong | 5/2/24 9:19 AM | Infrastructure - Notes / Domino | Added by Roberto Boccadoro

In my previous post, I showed that the Domino-container build script now has a menu. When Daniel announced his plans to include a menu, I asked him to add the option to output the result of a menu build in the form build.sh domino 12.0.2 FP3 -verse -nomad etc. Why? So you could use this in a script to build the same container image with an updated Linux OS base layer unattended. Daniel listened, but implemented it in a different way.

My slides from Engage 2024  

By Heiko Voigt | 4/30/24 2:15 AM | Development - Notes / Domino | Added by Oliver Busse

Hello, here are my slides from Engage about Building an app with ChatGPT using the HCL Domino REST APIs.

Engage 2024. Thanks Theo. Wellcome Kris & Tom  

By Javier Sánchez Oliva | 4/30/24 2:13 AM | Business - Events / People | Added by Oliver Busse

One more Engage. And this year had been a really special one. The great Theo Heselmans leave the Engage board. This was his last engage as organicer, celebrated on the beauty “Handelsbeurs” building with the usual quality of the Engage brand.

Every Time I Think I’m Out, They Pull Me Back In – The Domino Elf  

By Hogne B. Pettersen | 4/29/24 2:03 AM | Business - Events / People | Added by Oliver Busse

I attended the Engage user group conference for the first time since 2022 this week. This time I thought I was only going down there to shoot photos and say thank you to Theo Heselmans, who after 15 years is stepping down as leader for my favorite conference.

Engage 2024  

By Heiko Voigt | 4/25/24 12:37 PM | Business - Events / People | Added by Oliver Busse

So eventually it's over. Engage 2024 is already history but boy what a great conference it was. In his last time as event maestro for engage, Theo Heselmans outdid himself once more with a breathtaking venue - the Handelsbeurs in Antwerp. What a location, what a venue, what an event - organisation and logistics have been perfect as always with Theo's events.

Running MkDocs in a container  

By Oliver Busse | 4/18/24 11:40 PM | Development - Notes / Domino | Added by Roberto Boccadoro

I recently used mkdocs again, the lovely documentation framework which comes with several useful plugins, nice styling and built-in PDF and static website generation. Sometimes it is a bit tricky to get everything installed on your machine to make in running, such as Python 3 and several add-ons, so you may want to run it inside a container.

Notes client is spamming the Domino console  

By Oliver Busse | 4/18/24 1:53 AM | Infrastructure - Notes / Domino | Added by Roberto Boccadoro

This is something we experienced for quite a while with several versions of the Notes client on different systems: the Notes client randomly tries to access known servers in the environment (aka servers with a connection document in the names.nsf). I never understood the strategy behind the client trying to access a "server A" when this isn't even the mail server of the used location after login, especially when the ID is not even allowed on "server A". Ok, I live with that for decades and sometimes it helps to nuke the $Saved... fields in the location document(s). But this is another story. The story I want to tell with this post is the following: we randomly see Notes trying to access a "server X" where the currently used notes ID (defined in the location being used) is not cross-certified.

Building your Domino Container Image in 2024  

By Martijn de Jong | 4/18/24 1:51 AM | Infrastructure - Notes / Domino | Added by Roberto Boccadoro

When you have a child which you see everyday, you don’t really notice how much he/she grew until you compare their current height with the line on the doorpost of the year before. It’s like that with the Domino container community project for me. My last major post on the Domino container project was in July 2022. Daniel Nashed, the main contributor to this project, has been steadily working on and there are many additions to the project. I use Domino containers on a daily basis, so I’ve seen the progress step by step. Only when reading my post from 2022, I realised how far the project has progressed in the past 21 months. Time for an update! The project also got a new status as since Domino 12.0.2, HCL’s official container images, which you can download from FlexNet, are now also based on the community container scripts! There are 2 new additions which make creating a Domino container image much easier: The use of the domdownload script The build menu Next to that there are a couple of very interesting new options. In this article, I’ll mainly focus on these two items. In another article, I’ll focus on the new options.

Maven build with multiple Java versions   

By Stephan Wissel | 4/17/24 4:02 AM | Development - Notes / Domino | Added by Roberto Boccadoro

Imagine, you are tasked with maintaining a Java application that needs to run on more than one Java version. You want to ensure that it compiles, tests and builds on all of them. This is our story, buckle up, there are a few moving parts

How to remove a Groupchat in Sametime V12?  

By Remco Angioni | 4/17/24 4:01 AM | Infrastructure - Sametime | Added by Roberto Boccadoro

When a user creates a groupchat using, let’s say “AllUsers”, this groupchat will consume a lot of resources when AllUsers contain many many users. Beside asking the users to remove this chat, there is no way to remove this groupchat using a (Admin)gui. We raised a call to HCL and they solved it by removing it from the backend. Smart one. They even created a KB item about it, using our information. Smart one. You can terminate the group chat from the MongoDB Here are the steps:

The iPhora Journey - Part 8 - Flow-based Programming  

By Richard Moy | 4/17/24 3:58 AM | Development - Notes / Domino | Added by Roberto Boccadoro

As developers, most of us create applications through the conscious act of programming, either procedural, as many of us old-timers grew up with, or object-oriented, which we grudgingly had to admit was better. This is true whether we are using Java, LotusScript, C++ or Rust on Domino. (By the way, does anyone remember Pascal? When I was in school, I remember being told it was the language of the future, but for some reason it didn't seem to survive past the MTV era). But in the last decade, there are some new developments in the programming world that we need to take into account... and no, I'm not talking about AI.

Updating autoupdate.nsf with the new template (14.0 08.03.2024)  

By Daniel Nashed | 4/17/24 3:56 AM | Infrastructure - Notes / Domino | Added by Roberto Boccadoro

The new fit & finish work and the new autcat.nsf integration requires template changes. Please make sure you are getting the template version 14.0 from 08.03.2024 and not the earlier version from 03.11.2023 shipped with Domino 14. When deploying the container image I noticed an issue with the folder permissions where the container image is getting template updates for Fixpacks. The directory /opt/hcl/domino/notes/latest/linux/data1_bck/140FP1/localnotesdata contains updated templates. But the directory can be only accessed by "root" and the container runs with the "notes" user. This is not new to 14.0 FP1. Also 12.0.2 fixpacks had the same permissions, but nobody noticed the missing updates.

Domino AutoUpdate AUT Catalog integration in action  

By Daniel Nashed | 4/17/24 3:54 AM | Infrastructure - Notes / Domino | Added by Roberto Boccadoro

When the new integration is enabled, client web-kits are just pushed to AUT Catalog. The push will also happen for existing web-kits once the document is updated with data containing the Metadata XML. No manual steps needed. The documents and the new view have a button to directly jump into AUT Catalog. The button on top only shows up for software pushed to AUT Catalog. AUT Catalog sometimes has multiple documents for the same web-kit.

DBMT is good - but like most hybrids, it is a compromise  

By Adam Osborne | 4/17/24 3:53 AM | Infrastructure - Notes / Domino | Added by Roberto Boccadoro

Sometimes I think of DBMT as the love child of Compact and Updall. It combines some of their functionality, but sometimes you notice bits are missing, don’t work, or don’t work the way you think they should. The big issue that we keep encountering lately is that DBMT only enforces a time limit for it's compacting tasks; the index update threads will happily continue for hours. This is not ideal, especially for some view indexing operations on large databases.

Adding TOTP to your own application  

By Daniel Nashed | 4/16/24 5:10 AM | Infrastructure - Notes / Domino | Added by Roberto Boccadoro

The oathtool is the standard tool on Linux. It comes as a command-line tool or a dynamic and static link lib to be used in your own applications. You can statically link the code into your application and generate TOTP codes and also validate them. The homepage contains information about the command line tool "oathtool" and also the lib "liboath". https://www.nongnu.org/oath-toolkit/ Example how to use it on command-line. The example used the base32 encoded secret for "test". oathtool --totp -b ORSXG5AK

Simplifying the Maven Build of the NSF File Server Project  

By Jesse Gallagher | 4/11/24 5:13 AM | Development - Notes / Domino | Added by Roberto Boccadoro

When working on NSF File Server project that I talked about the other day, I took a slightly-different tack as far as building it than I did in the past, and I think it's worth going over some of that in case it's useful for others.

Domino Containers – The Next Step  

By Martijn de Jong | 4/11/24 5:12 AM | Infrastructure - Notes / Domino | Added by Roberto Boccadoro

With the Engage conference less than two weeks away, I’m working hard on my presentation. My topic will be “Domino Containers – The Next Step”. It’s a sequel to the presentation that I gave at Engage 2022 (and that same year at CollabSphere and OpenNTF) about the Domino container community project. Two years ago, I showed that Domino containers were ready to be used in production. On HCL’s FlexNet you had been able to download Domino docker images for quite a while already, but HCL never formally announced that those were for production use as well. During my session, I showed that the community images had quite a few benefits over HCL’s image and that Domino containers, based on these images, were a sensible replacement for your native Domino installations. So this time, we go a step further. Daniel Nashed has been working hard on the build-scripts for the community image and it has become easier than ever to build your own Domino image. I will show this live during my session.

Linux - Using Cron to schedule periodic jobs like certificate updates  

By Daniel Nashed | 4/11/24 5:10 AM | Infrastructure - Notes / Domino | Added by Roberto Boccadoro

In all the years I have never looked into cron. But it is really a very straightforward functionality, which is used by Linux itself. You can either schedule user specific jobs or use /etc/cron.d files or /etc/crontab. There is a certificate update script --> https://github.com/HCL-TECH-SOFTWARE/domino-cert-manager/blob/main/examples/nginx/cert_upd_nginx.sh