Category: Domino

Yesterday it seemed like it would be an ordinary working day but a client called me informing about the expiration of a certifier. It would be normal to resolve the problem with the re-certification procedures but it was a special certificate.

This client has been using Notes/Domino since version 4.0.  When I saw the certificate creation date 05/09/1996 I was impressed.

This customer uses the environment for mail and applications for 25 years!. How times flies

I started working for this client in 1999 by installing the first R5 server (5.0.4) on an IBM Netfinity 5500 Server running Windows NT 4.0.

The hardware is gone, the operating system and the administrators who created this certifer are no longer in the company.  I believe they never imagined that the day to re-certify would come.

I learned a lot from this client and from the environment they have.

There are dozens of servers, thousands of users, hundreds of applications and a lot of success history to tell.

 

Domino

1. Open the Domino directory
2. Select the Server view
3. Select Programs view
4. Click Add Program
5. Under the Basics tab and in the field Program name enter: nserver
6. In the Command line enter:
    -c “tell http restart” ( for restarting the HTTP Task )
 7. Fill in the Server to run on field and also set a schedule under the Schedule tab.
8. Save the document
If you want to see the schedule at the Domino console type show sched

Domino

When you create mail journaling you can encrypt all documents using the Administrator ID.  Last week a customer ask to add access for another user (developer). The Admin remove the database encryption but lots off documents remain encrypted . The solution was to remove the document encryption using the following steps:

To remove encryption from documents:

1. First, create a view named “Encrypted”. The view selection formula you use will vary depending on the type of database with which you are working.

 

  • If working in a mail file, then use the following:
      • SELECT (Encrypt = “1” |  EncryptionFlags = “2”)

    If you are working in a non-mail file and want to remove encryption from documents encrypted with a Private key, then use the following formula:

      • SELECT @IsAvailable(SecretEncryptionKeys)

    If you are working in a non-mail file and documents may be encrypted using either a Public or Private key, then use the following:

      • SELECT @All

    In the above scenario, if you want to remove encryption based on the Form or other field value, then remove the @All. For example: Select Form = “Report”.

    In other scenarios, use an ampersand (&) to add additional criteria to the selection formula. For example: Select Form=”Report” & @IsAvailable(SecretEncryptionKeys)

  • 2. Create an agent with the following code. Set it to run manually from Actions menu on all documents in the database.

Dim s As New notessession
Dim db As notesdatabase
Dim view As notesview
Dim doc As notesdocument
Dim nextdoc As notesdocument

Set db = s.currentdatabase
Set view = db.getview(“Encrypted”)
Set doc = view.getfirstdocument

While Not doc Is Nothing

  • Set nextdoc = view.getnextdocument(doc)
    'The below loop is mandatory to ensure that all $File entries are unecrypted
    Forall i In doc.items

    • If i.isencrypted Then
      • i.isencrypted=False

      End If

    End Forall
    'Must have at least 1 field encrypted in order to call Encrypt method
    Dim temp As New NotesItem(doc,"tempjunk","temp")
    temp.IsEncrypted=True
    Call doc.encrypt
    Call doc.save(True, False)
    'This portion can now remove the fields relative to encrypting the
    'single token encrypted field.
    Call doc.removeitem("$Seal")
    Call doc.removeitem("$SealData")
    Call doc.removeitem("SecretEncryptionKeys")
    Call doc.removeitem("Encrypt")
    Call doc.removeItem("tempjunk")
    Call doc.save(True, False)
    Set doc = nextdoc

Wend

Domino

When using the Domino Administrator client, the Rules tab does not display when you select Messaging Settings on the Configuration tab.  You may also notice that after a Configuration document is edited from the Domino Administrator client, the Rules tab no longer appears when the document is viewed from the Notes client.

Cause

The issue occurs because the “ActForm” field is present in the configuration document.

Resolution

To resolve the issue, delete the ActForm field from the Configuration document. There are two approaches to accomplish this:

Approach 1: Create a Formula agent, designed to act on selected documents, to delete the field ActForm:

Steps to create the agent:
1. Start the Domino Designer client and open the Domino Directory database.
2. From the menu, select Create -> Agent.
3. The Agent Properties dialog will appear.  Give the agent a name.  The Runtime settings can be left at the defaults of “Action Menu Selection” and “All Selected Documents”.
4.  Click on the X mark in the upper righthand corner to close and save the Agent Properties settings.  5.  In the main pane, change the “Run” keyword selection from “Simple Action(s)” to “Formula”.
6.  Enter the following code into the main window:
FIELD ActForm :[email protected]
7.  From the menu select File -> Save.
8.  Exit from the Domino Designer client.

Steps to run the agent:
1. Open the Domino Directory from the Notes client.
2. Open the view Configuration -> Servers -> Configurations.
3. Select the affected configuration documents.
4. From the menu select Actions -> <agent name>.

Now when the Configuration document is opened from the Notes client, the Rules tab will display as expected.

OR

Approach 2: Code can be added to the ServerConfig form so that it deletes the field when the Configuration document is opened.

1. Start the Domino Designer client and open the Domino Directory database.
2. In the left pane, select Forms.
3. In the right pane find and open the Form “Server\Configuration Settings”.  Note: The form’s Alias is “ServerConfig”.
4. In the lower left pane the Objects tab will be selected by default, locate and select the Queryopen event listed.
5. Paste the following code into the Programmer’s Pane:

Sub Queryopen(Source As Notesuidocument, Mode As Integer, Isnewdoc As Variant, Continue As Variant)
Dim doc As NotesDocument
Set doc = Source.Document
If Not doc.Isnewnote Then
If doc.HasItem(“ActForm”) Then
Call doc.RemoveItem(“ActForm”)
Call doc.save(True, True)
End If
End If
End Sub

6. From the menu select File->Save.
7. Exit from Domino Designer client.

Now when the Configuration document is opened from the Notes client, the Rules tab will display as expected.

 

Domino

​If you have a problem, and no-one else can help, and if you can find them, maybe you can ask an HCL Ambassador…

See the HCL Ambassadors Class of 2021

Connections Domino Notes WebSphere Portal

Today i upgrade one server to Domino 11.0.1 from Domino 11.0 on linux.  When the server starts the HTTP  the console show the error bellow:

 

[103028:000002-00007F2CD562E740] 06/18/2020 10:40:45 AM JVM: Java Virtual Machine initialized.
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:45 AM HTTP Server: Java Virtual Machine loaded
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:50 AM HTTP JVM: java.lang.reflect.InvocationTargetException
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:50 AM HTTP JVM: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:50 AM HTTP JVM: at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:50 AM HTTP JVM: at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:50 AM HTTP JVM: at java.lang.reflect.Method.invoke(Method.java:498)
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:50 AM HTTP JVM: at com.ibm.domino.http.bootstrap.BootstrapOSGIClassLoader.loadClassFromBundle(BootstrapOSGIClassLoader.java:136)
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:50 AM HTTP JVM: at com.ibm.domino.http.bootstrap.BootstrapOSGIClassLoader.launchOSGIFramework(BootstrapOSGIClassLoader.java:88)
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:50 AM HTTP JVM: at com.ibm.domino.http.bootstrap.BootstrapOSGIClassLoader.loadClass(BootstrapOSGIClassLoader.java:63)
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:50 AM HTTP JVM: at java.lang.ClassLoader.loadClass(ClassLoader.java:881)
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:50 AM HTTP JVM: at com.ibm.domino.http.bootstrap.BootstrapClassLoader.findClass(BootstrapClassLoader.java:79)
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:50 AM HTTP JVM: Caused by:
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:50 AM HTTP JVM: java.lang.ClassNotFoundException: No class loader available for the bundle: com.ibm.xsp.domino_11.0.0.20191120-0552 [226]
[103028:000002-00007F2CD562E740] 06/18/2020 10:40:50 AM HTTP JVM: at org.eclipse.osgi.internal.framework.EquinoxBundle.loadClass(EquinoxBundle.java:579)

 

The solution was to delete all content of the folder /opt/lotus/notes/latest/linux/osgi/shared/eclipse/plugins and run the installer again.

Domino Linux

Just setup this on a customer today. Befor this setup you need to install a certificate on your server.

SMTP sessions conducted over a standard TCP/IP channel are vulnerable to eavesdropping because the unencoded transmission can be easily intercepted. To protect SMTP communications, servers can use transport-layer security (TLS), more commonly known as SSL encryption, to provide privacy and authentication.

Some servers support SSL for SMTP communications by sending and receiving SMTP traffic through the SSL port (port 465 by default) only. However, because this requires that both the sending and receiving servers support SMTP over SSL, this solution isn’t always practical.

To provide SSL security for SMTP transfers over TCP/IP, Domino® supports the use of negotiated SSL. In a negotiated SSL scheme, the sending and receiving hosts each use the SMTP STARTTLS extension, defined in RFC 2487, to signal their readiness to negotiate an SSL connection. The receiving server displays the STARTTLS keyword in response to the sending server’s EHLO command. The sending server issues the STARTTLS command to request the creation of a secure connection. After the initial TLS handshake completes successfully, the two parties proceed to set up an SSL channel between them. Both the sending and receiving server must possess SSL certificates.

Supporting STARTTLS for outbound SMTP sessions

A Domino server configured to use negotiated SSL for outbound mail connects to the receiving server’s SMTP TCP/IP port (port 25 by default). If the initial SMTP response from the receiving server indicates that it supports the STARTTLS extension, Domino issues the STARTTLS command to request the use of SSL to encrypt the rest of the session.

If the receiving server did not advertise support for STARTTLS in response to the Domino server’s EHLO command, the sending Domino server continues with an unencrypted SMTP TCP/IP session.

To enable outbound STARTTLS support, set the SMTP outbound TCP/IP port status to: Negotiated SSL.

Domino

I’m working on projects that involve many technologies and frameworks.

Particularly in one of our projects the IceGuard many things have been used such as Flutter for mobile application, Node-Red for  integrations,  IBM Cloud and IBM Watson IoT services.

We have reached a point where an asset management application such as sensors and gateways is required.

The application has the requirements:

1 – Run OffLine and Web

2 – Data replication

3 – Authentication and  Data security

4 – Integration with other applications.

5 – Implement a simple flow of approval.

Another detail is that we needed it to be developed rapidly.

Much is said that the Lotus IBM HCL Notes & Domino is dead.

Not for my case. If I were to use another product (s)/technologies I would spend two working days at least to architect the entire application, choose the Framworks to do the job, not to mention  database modeling,  authentication service, etc., etc.

With the HCL Notes & Domino i create the application in just one day!

It is a simple application, but that solved a real problem of my project.

Notes & Domino do the job.

Domino

As of April 10, 2018, Google has deprecated Google Cloud Messaging (GCM). The GCM server and client APIs are deprecated and will be removed as soon as April 11, 2019. IBM Traveler uses GCM for push notifications with IBM Verse for Android clients. Firebase Cloud Messaging (FCM) is the new supported notification infrastructure. This flash details what actions should be taken for IBM Traveler and the IBM Verse for Android clients to support the FCM notification infrastructure.

More information on this link

Domino verse

I miss some webinars about Domino V10 . Here is the link to Collaboration Solutions Webinars records

Comunidade Domino

IBM Verse is a powerful cloud-based email experience. It’s optimized for web browsers and mobile devices. It helps you focus on your top priorities and take control of action items. This one hour course will help you get started.

https://versetraining.mybluemix.net/#/?_k=j95tjm

Domino

With the launch of Domino 10  knowledge of JavaScript and how to work with JSON Objects will be required for the new development model.

As i am working on a IoT project  i need to learn JSONata to manipulate lots of JSON objects.

JSONata is underpinned by the semantics of the location path inspired by XPath, the ability to format the output into any JSON structure inspired by XQuery, and the functional programming model inspired by Scheme.

The semantics of the location path inspired by XPath

  • Simple and intuitive syntax for selecting values within a structure.
  • Powerful predicate mechanism for complex queries and data joins.
  • Built-in functions and operators for manipulating and aggregating data.

The ability to format the output into any JSON structure inspired by XQuery

  • Standard JSON syntax used for constructing new objects and arrays.
  • Any valid JSON data is also a valid JSONata expression.
  • Allows template style queries to be constructed.

The functional programming model inspired by Scheme.

  • Implements the ‘metacircular evaluator’ described in SICP.
  • Supports user-defined functions (closures).
  • Turing complete.

The lightweight footprint of the runtime processor enables it to run in the web browser or as a node.js module with no package dependencies.

Take a look at http://jsonata.org

Domino