Skip to main content link. Accesskey S
  • Help
  • HCL Logo
  • HCL Notes and Domino Application Development wiki
  • THIS WIKI IS READ-ONLY. Individual names altered for privacy purposes.
  • HCL Forums and Blogs
  • Home
  • Product Documentation
  • Community Articles
  • Learning Center
  • API Documentation
Search
Community Articles > Developing Applications > Developing XPage Applications > Adding Business Logic to XPage Applications > Running Java Agents from XPages in the Notes Client
  • Share Show Menu▼
  • Subscribe Show Menu▼

Recent articles by this author

Upgrading to XPages Release 8.5.2

Guidence, best practics,known issues and problems related to upgrading XPages applicatoins to Release 8.5.2

Create a Client Simple Action

How to simply and quickly create your own XPages Client Side Actions

XPages and Views in V852 - Multiple Category Filters, Start Key, and Goto Last

V852 of XPages supports a number of enhancements to Views and Pagers, Multiple Category Filters, Start Key, and Goto Last

XPages Public Access Support

XPages V852 now supports Public Access for XPage Design Elements and accessing Documents and Views.

XPages and Calling Agents Using an In-Memory Document

Leverage the new In-Memory Document Agent APIs using XPages
Community articleRunning Java Agents from XPages in the Notes Client
Added by ~Yoshi Ekvelutheroni | Edited by IBM contributor~Umberto Zekreternivu on August 9, 2010 | Version 5
  • Actions Show Menu▼
expanded Abstract
collapsed Abstract
XPages V852 now supports running Agents locally in the Notes Client
Tags: 8.5.2, agents, app dev, security, xpages, XPages
ShowTable of Contents
HideTable of Contents
  • 1 Introduction
  • 2 Background
  • 3 V851 -v- V852

DISCLAIMER: IBM Lotus Notes Domino R8.5.2 is pre-release software so there is no guarantee that what is written below will be part of the final release.

Introduction



XPages in the Notes Client, Release 8.5.2, supports calling Java Agents to run locally on the Notes Client. Previously, only Agent.runOnServer() was supported where the NSF containing the XPages application and Java Agent were stored on a Domino Server.

In Release 8.5.2, XPages support for the Java Agent APIs is the following,




Client Type NSF Location Supported Agent API
Agent.run() Agent.run(String noteID) Agent.runWithDocumentContext(Document doc) Agent.runWithDocumentContext(Document doc, String noteID) Agent.runOnServer() Agent.runOnServer(String noteID)
Notes Client Local Notes Client Yes Yes Yes, new API for 8.5.2 Yes, new API for 8.5.2 Yes, runs agent on Notes Client Yes, runs agent on Notes Client
Notes Client Domino Server Yes Yes Yes, new API for 8.5.2 Yes, new API for 8.5.2 Yes Yes

Background



Figure 1 is a high level overview of the key components for XPages on the Notes Rich Client Platform (RCP). The Eclipse View/XUL Runner Browser are the components that presents an XPages application to the user in the Notes Client


Figure 1. XPages in the Notes Client Architecture

When a Java Agent is run from the Notes Client - for example, via the Actions menu, or from a button action in a 'classic' Notes applications - it runs in a JVM started by the Notes Client process - nlnotes.exe - and Java Agent security functions as it has always done.

XPages manages its own Java Security Manager. Since, XPages runs from the Notes Client notes2.exe Java process, a Java Agent agent run from XPages will be managed by the XPages Java Security Manager (since there can only be one Java Security Manager running at any one time).

When an XPages application is run, the XPages Java Security Manager is started. All Java security sensitive operations will go through this security manager. If the thread is a Java Agent thread, then the XPages security manager will create an instance of the Note Client Agent security manager and delegate to it, so that the Execution Security Alerts (ESA) will be the same as if the agent was run from the Action menu in the Notes Client.

V851 -v- V852



In Release 8.5.1, XPages support for the Java Agent APIs was the following,




Client Type NSF Location Supported Agent API
Agent.run() Agent.run(String noteID) Agent.runOnServer() Agent.runOnServer(String noteID)
Notes Client Local Notes Client No No No No
Notes Client Domino Server
No
No
Yes
Yes


In Release 8.5.2, XPages support for the Java Agent APIs is the following,




Client Type NSF Location Supported Agent API
Agent.run() Agent.run(String noteID) Agent.runWithDocumentContext(Document doc) Agent.runWithDocumentContext(Document doc, String noteID) Agent.runOnServer() Agent.runOnServer(String noteID)
Notes Client Local Notes Client Yes Yes Yes, new API for 8.5.2 Yes, new API for 8.5.2 Yes, runs agent on Notes Client Yes, runs agent on Notes Client
Notes Client Domino Server Yes Yes Yes, new API for 8.5.2 Yes, new API for 8.5.2 Yes Yes



  • Actions Show Menu▼


expanded Attachments (0)
collapsed Attachments (0)
Edit the article to add or modify attachments.
expanded Versions (5)
collapsed Versions (5)
Version Comparison     
VersionDateChanged by              Summary of changes
This version (5)Aug 9, 2010, 10:56:32 AM~Umberto Zekreternivu  IBM contributor
4Aug 9, 2010, 10:52:19 AM~Zelda Fezboosipulgon  IBM contributor
3Aug 9, 2010, 10:49:52 AM~Zelda Fezboosipulgon  IBM contributor
2Aug 9, 2010, 10:47:54 AM~Zelda Fezboosipulgon  IBM contributor
1Aug 9, 2010, 10:43:04 AM~Ned Desfanatherli  
expanded Comments (0)
collapsed Comments (0)
Copy and paste this wiki markup to link to this article from another article in this wiki.
Go ElsewhereStay ConnectedAbout
  • HCL Software
  • HCL Digital Solutions community
  • HCL Software support
  • BlogsDigital Solutions blog
  • Community LinkHCL Software forums and blogs
  • About HCL
  • Privacy
  • Accessibility