Release Notes for iPlanet TradingXpert
Version 3.5.1 for Solaris 2.6, 2.7, or 2.8
Updated December 21, 2001
These release notes contain important information available at the time of the Version 3.5.1 release of iPlanet TradingXpert. New features and enhancements, installation notes, known problems, and other late-breaking issues are addressed here. Read this document before you begin using this release of iPlanet TradingXpert. Version 3.5.1
An electronic version of these release notes is posted on the iPlanet documentation web site: http://docs.iplanet.com/docs/manuals/
. Check the web site prior to installing and setting up your software and then periodically thereafter to view the most up-to-date release notes and manuals.
These release notes contain the following sections:
What's New in TradingXpert, Version 3.5.1
This section describes the changes to the following product components:
FX Properties Changes
Several new fields have been added to the FX Properties file, as shown in Table 1. These fields have been added to allow for user modifications, as specified in the iPlanet TradingXpert Installation Guide. The FX Properties file is located in:
$NASDIR/APPS/FX/common
Example:
/opt/iplanet/nasserver/nas/APPS/FX/common
Table 1    Added Fields in FXproperties
Field
|
Description
|
FX.basedir |
The base directory name in the FX.basehref field. For example, if FX.basehref is `http://tree.red.iplanet.com:5050/TX', the FX.basedir should be indicated as `TX'. |
FX.dateFormat |
Specifies the date setting. For details on how to set the date format, refer to:
http://java.sun.com/j2se/1.3/docs/api/java/text/SimpleDateFormat.html
Some examples:
MM.dd.yyyy => 12.06.1966
MM/dd/yyyy at HH:mm:ss => 12/06/1966 at 23:59:59
hh:mm:ss a => 11:59:59 PM |
FX.logDocEvents |
Enables or disables detailed document tracking information. Valid values are TRUE or FALSE. |
FX.unreadFilter |
Determines the type and status of documents to retrieve, depending upon which button is selected. Refer to Table 2 for details on how this field is used. Valid values are TRUE or FALSE. |
FX.verboseTracking |
Extends the tracking information screen to include all event log information for a given tracking ID. |
Table 2    FX.unreadFilter Flag Value and Button Behavior Descriptions
Flag Value
|
Button Behavior Description
|
|
Get Documents |
Inbound |
Outbound |
true |
All inbound (both read and unread) and outbound documents are retrieved |
Inbound documents (read) will not be retrieved until the Get Doc button is selected.
After Get Doc button is selected, this button will retrieve both read and unread inbound documents. |
All outbound documents are retrieved. |
false |
All inbound (both read and unread) and outbound documents are retrieved. |
Both read and unread inbound documents are retrieved. |
All outbound documents are retrieved. |
User Interface Enhancements
Table 3 describes the enhancements to the user interface for this release.
Table 3    Enhancements to the User Interface
Component
|
Existence
|
Functionality Description
|
Welcome page |
New to this release |
Following user login, TradingXpert does not load documents until one of the document load buttons is selected (i.e., the Get Documents, Inbound, or Outbound buttons) |
Get Documents Button |
New to this release |
When selected, TradingXpert loads both inbound and outbound document information from the ECXpert database into the TradingXpert memory cache. |
Inbound Button |
Exists in TX 3.5 |
When initially selected, TX gets inbound documents from the ECXpert database, including the latest received documents. When subsequently selected, TX gets inbound documents from the TX server cache. |
Outbound Button |
Exists in TX 3.5 |
When initially selected, TX gets outbound documents from the ECXpert database, including the latest sent documents. When selected subsequently, TX gets outbound documents from the TX server cache. |
Inbound page |
Exists in TX 3.5 |
When the `check for new messages' checkbox is selected, the `Search' button gets inbound documents from the ECXpert database, including the latest received documents. Otherwise, the `Search' button gets inbound documents from the TX server cache. |
Outbound page |
Exists in TX 3.5 |
When the `check for new messages' checkbox is selected, the `Search' button gets outbound documents from the ECXpert database, including the latest sent documents. Otherwise, the `Search' button gets outbound documents from the TX server cache. |
Java Enhancements for Developers
In this release, the ECX/iAS extension has been replaced by the ECXpert JNI API library so that the ECXpert 3.0, 3.5, and 3.6 databases can be accessed. This enhancement requires migration of existing Java files from TradingXpert 3.5.1. The migration includes the installation of two packages:
-
jni.base.* - contains JEcxInit and JEcxBase classes
-
jni.db.* - contains ECX DB Access classes
-
jni.submit* - contains JECXSubmit class
Class Equivalence Diagram
Table 4 shows the class relationships between the iAS/ECX extension and the JNI API library.
Table 4    Class Equivalence Diagram
iAS/ECX Extension
|
ECXpert Java JNI API
|
IEcxMgr
|
not used |
IEcxBase
|
JEcxBase
|
IEcxAddresses
|
JEcxAddresses
|
IEcxCrypto
|
JEcxCrypto
|
IEcxDocId
|
JEcxDocId
|
IEcxDocument
|
JEcxDocument
|
IEcxLog
|
JEcxLog
|
IEcxLogin
|
JEcxLogin
|
IEcxMember
|
JEcxMember
|
IEcxPartnerId
|
JEcxPartnerId
|
IEcxPartnership
|
JEcxPartnership
|
IEcxService
|
JEcxService
|
IEcxServiceList
|
JEcxServiceList
|
IEcxSubmit
|
JEcxSubmit
|
IEcxTracking
|
JEcxTracking
|
not used |
JEcxInit
|
Enhanced Object Creation
In previous releases of TradingXpert, developers were forced to use the IEcxMgr interface to create other objects. The concept of an "object factory" does not exist with this release. Instead, all Java API objects can be directly instantiated. This allows more flexibility when customizing TradingXpert.
The following code fragments (derived from FXProfile.java) illustrate the difference between object creation in TradingXpert 3.5 and TradingXpert 3.5.1:
With iAS/ECX extension:
(1)IEcxMgr ecxMgr ;
(2)IEcxLogin ecxLogin ;
(3)IEcxMember ecxMember ;
(4)
(5)ecxMember = ecxMgr.createMember(ecxLogin);
With JNI API library:
(a)JEcxLogin ecxLogin ;
(b)JEcxMember ecxMember ;
(c)
(d)ecxMember = new JEcxMember();
(e)ecxMember.setLogin(ecxLogin);
With the iAS/ECX extension method, you use an instance of IEcxMgr to create the ecxMember object. To log in to the database, you use the createMember() method to establish a db context, create the ecxMember object, and associate the supplied login credentials with that object.
In the new JNI API library IEcxMgr does not exist. Instead, the JEcxMember object is directly instantiated, and the supplied setLogin() method binds the login credentials.
Establishing the db context occurs when the retrieveFXSession() method in FXAppLogic is called. As in the prior release of TradingXpert, Applogics calls this method to retrieve login information, session data, and other information. The retrieveFXSession() method was enhanced to instantiate a JEcxInit object, which in turn establishes a db context using the ecxInit() method.
Hardware and Software Requirements
If you are creating a new installation of iPlanet TradingXpert, refer to the "Preinstallation Tasks" chapter of the iPlanet TradingXpert Installation Guide for any hardware and software requirements, including such things as cache settings.
Installation Notes
This section explains how to install TradingXpert Version 3.5.1 as either a new product or an upgrade to a pre-existing TradingXpert 3.5 installation.
Caution
|
If you are installing TradingXpert on a machine that does NOT have ECXpert, the ecx.ini file must exist in the following configuration directory:
/opt/iplanet/nasserver/config/ecx.ini;
Do NOT put the ecx.ini file in a lower directory, for example, do NOT put the ecx.ini file in:
/opt/iplanet/nasserver/nas/config/ecx.ini;
If ECXpert is on the same computer as TradingXpert, the ecx.ini file can reside in the $ECX_HOME/config/ecx.ini directory.
|
New Installation
Follow the installation instructions provided in the iPlanet TradingXpert Installation Guide. There is one additional prompt requesting you to enter the ECXpert version used with this installation of TradingXpert. For that prompt, enter 3.0, 3.5, or 3.6 as appropriate.
Migration
To upgrade an existing installation of TradingXpert 3.5, perform the following steps.
-
If you are planning to do an ECXpert migration, do it before migrating TradingXpert. Refer to iPlanet ECXpert Installation Guide Version 3.6 for instructions.
-
Back up your customized installation of TradingXpert. Create tar files of the ecx and fx directories, and verify that the reg.dat file is backed up.
-
Shut down iAS.
-
Verify that the LDAP server is running.
-
Verify that the LD_LIBRARY_PATH environment variable is set properly:
LD_LIBRARY_PATH = $ECX_HOME/lib
-
Logged in as either root or as the ECXpert installation user actraadm, navigate to the directory where the binaries are located. Locate and execute the following command:
upgrade_exe
-
During installation, you will be prompted for the iAS directory. Enter the following path:
/opt/iplanet/nasserver/nas
-
You will also be prompted for the version of ECXpert you will use with TradingXpert. The upgrade script renames directories that are modified to xxxxx.preSP1, where xxxxx is filename. New directories and files will also be copied to the same location.
-
Once the installation process completes (when the command line prompt returns), any customized files that were backed up need to be migrated from the `xxxxx.preSP1' files to the newly copied files. The following modified directories and files are installed with this release:
-
$NASDIR/APPS/FX/common
-
$NASDIR/APPS/FX/document
-
$NASDIR/APPS/FX/events
-
$NASDIR/APPS/FX/login
-
$NASDIR/APPS/FX/maps_etc/Customization
-
$NASDIR/APPS/FX/profile
-
$NASDIR/APPS/FX/templates/en_US/document/listPartners.html
-
$NASDIR/APPS/FX/templates/en_US/document/track.html
-
$NASDIR/APPS/FX/templates/en_US/inbound/inbound_1.html
-
$NASDIR/APPS/FX/templates/en_US/outbound/outbound_1.html
-
$NASDIR/APPS/FX/tradeCenter
-
$NASDIR/APPS/FX/web/en_US/frameset.html
-
$NASDIR/APPS/FX/web/en_US/help.html
-
$NASDIR/APPS/FX/web/en_US/menu/menu.html
-
You can remove the following ECX/iAS extension project files when the installation process has completed:
-
ecx.gxm
-
ecx.gxr
-
You can also remove the ecx directory:
% rm -R /opt/iplanet/nasserver/nas/APPS/ecx
Bug Fixes and Enhancements
Table 5 lists the bug fixes and enhancements included in this release. In addition, a more complete discussion of Bug ID 530969 follows the table.
Table 5    Bug Fixes and Enhancements in TradingXpert 3.5.1
iPlanet Bug Tracking #(s)
|
Description
|
397571 |
A Get Document button now allows you to load data from the database into memory, to speed up data access and allow users to have more documents in their mailbox. |
---- |
You can now quickly call up the log on a web page, by replacing tradeCenter.html (which makes calls to the database) with a simple welcome webpage. |
---- |
The logon java bug was fixed, to eliminate the error "No document found" that is raised when the locale is missing from the URL. |
---- |
You can now log into TradingXpert from within an iPlanet Portal session. |
---- |
User name has been added to the top frame, to show which user is logged into TradingXpert. |
347780 |
The initial entry to inboxes or outboxes has been fixed, so that the TradingXpert Partner selection is no longer empty. |
433970 |
The date format parameter setting has been added in the FX properties file, to enable internationalization of dates specified and displayed when viewed in a returned Search list. |
---- |
The JNI interface has been added to the ECXpert extension, allowing TradingXpert to work with either the ECXpert 3.0, 3.5, or 3.6 database. |
---- |
Users are now prevented from making invalid selections of the combination of a Trading Partner and an invalid Document Type (or vice versa) while administering a New Document. The two individual parameters, each represented by a selection list, are now combined into one pull down list. |
---- |
Incorrect field focus occurring within $FX/web/javascript/function.js has been fixed. Previously, with Netscape Communicator 4.x only half the page would be selected. The behavior on Microsoft Internet Explorer 5.0 gave an error indicating "cannot give focus to a hidden field." |
396071 |
This bug, involving a password change that caused iAS to dump core, has been fixed. |
387920 |
A fix has been added to turnaroundDocument.java allowing sublineitems to be properly turned around. |
370734 |
This bug has been fixed, to allow display of more than one Purchase Order at a time. |
387436 |
Bug fix for 997 FAgen producing a doc type 'null' in the Inbound list. |
Refreshing the TradingXpert Connection (Bug ID: 530969)
There are two ways the ECXpert/TradingXpert administrator can refresh the TradingXpert connection to ECXpert:
-
From a browser:
-
Add a Refresh button to the ECXpert Server Management User Interface. See "Adding a Refresh Button to the ECXpert Server Management User Interface" for further information.
-
From a command line or a batch shell program:
-
Write a utility Java Class that connects to refresh Applogic in TradingXpert. See "Writing a Utility Java Class to Refresh the TradingXpert Connection to ECXpert" for further information.
Adding a Refresh Button to the ECXpert Server Management User Interface
-
Modify the file 1-1Left.htm in the ECXpert installation directory:
$BDGHOME/UI/html/admin/Management/1-1Left.htm
-
Production directory example:
/opt/iplanet/NS-apps/ECXpert/UI/html/admin/Management/1-1Left.htm
-
Add the following html just after "Update Screen" in the table.
|
|
<tr>
|
<td bgcolor="white"> <font size="-1" face="PrimaSans BT, Verdana,
sans-serif">
|
<a href="http://<hostname>:<port>/cgi-bin/gx.cgi/GUIDGX-
|
{7D446663-4E0E-1A8C-FA9D-080020B37846}" target="middle">
|
<b>Refresh TradingXpert</b></a></font>
|
</td>
|
</tr>
|
|
|
-
where:
-
hostname = Hostname of machine on which TradingXpert is installed
-
port = Port configured for TradingXpert
-
GUID = The GUID with which the refresh Applogic is registered
-
Example:
-
<ahref="http://txdemo.iplanet.com/cgi-bin/gx.cgi/GUIDGX-{7D446663-4E0E-1A8C-FA9D-080020B37846}" target="middle">
Writing a Utility Java Class to Refresh the TradingXpert Connection to ECXpert
The refresh Applogic can be invoked programmatically from a java program, using the following class to send an HTTP request through a URL connection:
-
Compile the TXURLConnection class:
javac TXURLConnection.java
-
Execute TXURLConnection:
java TXURLConnection [http://<host_name>:<port>]
-
Example:
-
TradingXpert is installed on the host production.foo.com on port 8000. In this case, the java TXURLConnection would be initiated from the URL:
http://production.foo.com:8000
Java Utility Class Source Code
Code Example 1    Java Utility Class Code for Class TXURLConnection
import java.net.*;
|
import java.io.*;
|
import java.util.*;
|
|
public class TXURLConnection
|
{
|
public static final int SUCCESS = 0;
|
public static final int FAILURE = 1;
|
|
private String baseHref, refreshAL;
|
private HttpURLConnection urlConn; // generic connection object
|
private URL url; // generic URL reference
|
|
public TXURLConnection(Properties props){
|
baseHref = props.getProperty("HREF");
|
refreshAL = "/cgi-bin/gx.cgi/GUIDGX-{" + props.getProperty("GUID")
+ "}";
|
}
|
public int connect(){
|
try {
|
url = new URL(baseHref + refreshAL);
|
buildConnection(url);
|
writeToConnection();
|
return SUCCESS;
|
}
|
catch (Exception e) {
|
System.out.println(e.getMessage());
|
return FAILURE;
|
}
|
}
|
|
private void writeToConnection()
|
throws IOException
|
{
|
DataOutputStream printout = new DataOutputStream
(urlConn.getOutputStream ());
|
printout.flush ();
|
printout.close ();
|
urlConn.getResponseCode(); // wait for server response
|
}
|
|
private void buildConnection(URL target) throws IOException
|
{
|
urlConn = (HttpURLConnection)target.openConnection();
|
System.out.println(target.toString());
|
urlConn.setDoInput (true);
|
urlConn.setDoOutput (true);
|
urlConn.setUseCaches (false);
|
}
|
|
}
|
|
-
The client program using this class uses the properties file props.txt to get the hostname, port and the GUID for the refresh Applogic.
-
The main method of such a client program can be implemented in two ways:
-
It can be part of TXURLConnection.java
-
It can be part of another client class, for example, TXClient
-
For example:
|
public static void main (String args[]) {
|
Properties props = new Properties(); // store HTTP parameters
|
try
|
{
|
FileInputStream fis = new FileInputStream("props.txt");
|
props.load(fis);
|
}
|
catch (IOException e)
|
{
|
e.printStackTrace();
|
return;
|
}
|
TXURLConnection txURL = new TXURLConnection(props);
|
if (txURL.connect() == TXURLConnection.SUCCESS)
|
;
|
else
|
System.err.println("Failure :: TXURLConnction.init()");
|
}
|
|
A sample props.txt file for a TradingXpert installation on a machine with the IP address 192.18.112.184 on port of 8080 for the Application Server, and a GUID for the refresh Applogic is:
7D446663-4E0E-1A8C-FA9D-080020B37846
HREF=http://192.18.112.184:8080
GUID=7D446663-4E0E-1A8C-FA9D-080020B37846
You need to refresh TradingXpert every time the ECXpert Admin server is restarted. If the Application Server is restarted after ECXpert refreshes TradingXpert is not necessary. TradingXpert should also be refreshed every time the ECXpert TCP/IP connector is restarted.
How to Report Problems
If you have problems with iPlanet TradingXpert, Version 3.5.1, contact iPlanet Customer Support:
-
iPlanet online support web site at http://www.iplanet.com/support/online/
-
From this location, use the CaseTracker and CaseView tools for logging problems.
-
The telephone dispatch number associated with your maintenance contract
So that we can best assist you in resolving problems, have the following information available when you contact Customer Support:
-
Description of the problem, including the situation in which the problem occurs and its impact on your operation
-
Machine type, operating system version, and product version, including any patches and other software that might affect the problem
-
Detailed steps for reproducing the problem
-
Any error logs or core dumps generated as a result of the problem
For More Information
Useful iPlanet information can be found at the following Internet locations:
Use of iPlanet TradingXpert is subject to the terms described in the license agreement accompanying it.
Copyright © 2001 Sun Microsystems, Inc. Some preexisting portions are covered under Copyright © 2000 Netscape Communications Corp. All rights reserved.
Sun, Sun Microsystems, the Sun logo, Java, iPlanet, and all Sun, Java, and iPlanet based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. Netscape and the Netscape N logo are registered trademarks of Netscape Communications Corporation in the U.S. and other countries. Other Netscape logos, product names, and service names are also trademarks of Netscape Communications Corporation, which may be registered in other countries.
Last Updated December 19, 2001