Sun Java™ System RFID Software 2.0 Release Notes

Part Number 819-1699-10

This section of these Release Notes ...

Provides this information ...

A. What's New

New features and enhancements.

B. System Requirements, Platforms, and Supported Software

Hardware requirements needed, supported Operating systems and application servers, browsers, and other software that are required or supported by this release.

C. Known Issues

Software Limitations

Software Bugs

Bugs and Issues related to functionality in this release of the product, with workarounds where applicable.

D. Installation Notes

Addendum to any installation procedures.

Sun Microsystems is announcing Sun Java System RFID Software v2.0.

The Sun Java System RFID Software software consists of the following three components:
1. The Sun Java System RFID Event Manager
2. The Sun Java System RFID Information Server
3. The Sun Java System RFID Management Console

Radio Frequency Identification (RFID) infrastructure software is fundamental to every customer RFID deployment or solution. This software enables the management of essential RFID hardware such as RFID tags and readers, and helps filter out and make sense of the RFID data received from tags before enabling integration of the data with back-end enterprise information systems.

A. What's New

Central Monitoring and Remote Management:
- Web based Reader Management tools
- Web based device monitoring w/ event notification
- GUI based configuration tool for Event Manager services configuration
- Grouping capabilities to manage a group of readers
- Ability to generate alarms

Reporting:
- Pluggable report framework to generate reports

Standards:
- Gen 2 enabled to support EPCglobal Generation 2 readers and tags
- Support for EPCglobal ALE (Application Level Events) specifications
- EPC Tag Data Spec 1.1
- EPCglobal ALE (Application Level Events)
- JMS
- JMX
- SNMP

Tag Commissioning:
- Tag management API to manage the commissioning of tags

Tag Support:
- Supports read/write enabled tags
- Support for user accessible memory
- EPC and ISO tags
- EPC and CAGE data formats

Device Adapters:
- Alien, AWID, ThingMagic, Matrics, SAMSys, Tyco, Feig, Printronix, Zebra, more coming

Reporting:
- Tag and Reader reports

Platforms:
- Solaris 9, 10; x86/Sparc
- Redhat ES 3.0

Servers:
- Sun AS 8.1
- Sun AS 7
- BEA WebLogic 8.1
- PostgreSQL 7.4.6
- Oracle 8i
- Oracle 10g

Languages:
- English

B. System Requirements, Platforms, and Supported Software

The following platforms and operating systems are required for this release of Sun Java System RFID Software.

Platform

Operating System

SPARC

Solaris™ 9 & 10 Operating System (Solaris OS), SPARC(R) Platform Edition

X86

Solaris™ 9 & 10 Operating System (Solaris OS), x86 Platform Edition

Linux

Redhat ES 3.0

The following application servers are supported by the RFID Software

Application Servers

Sun Java™ System Application Server 7 (EE)

Sun Java™ System Application Server 8.1 (PE, EE)

BEA WebLogic Server 8.1 (SP3)

The following databases are supported by the RFID Software

Databases

Oracle Database 8.1.7

Oracle Database 10g

PostgreSQL 7.4.6

Supported Readers

Alien ALR-9780
Alien NanoScanner 915MHz
AWID MPR-2010
FEIG Electronic ID ISC.MR100
FEIG Electronic ID ISC.PR100
Matrics AR-400 Reader
Printronix SmartLine SL5000e RFID Smart Label Printers
SAMSys MP9320 EPC V2.7 Reader
Sensormatic SensorID Agile 2 Reader
ThingMagic Mercury4 Reader
ThingMagic Mercury 3 Reader
Zebra Technologies R110XiIIIPlus

Platform Requirements

The Sun Java System RFID Software Event Manager, Information Server, and Management Console have the following platform requirements:

Sun Java System RFID Software Event Manager

Sun Java System RFID Software Information Server

Sun Java System RFID Software Management Console

C. Known Issues

Known Limitations

ALE Installation
To properly install ALE under the event manager, user would need to do a custom installation and selecting the ALE component together with either the Execution Agent or Control Station. If the ALE is deployed by itself, the installer will report an error. The best approach to install this is to select the ALE upon install and select it along with installing other components. This depends also on the availability of Sun Java Application Server 7 and 8.1 present in the system.

ALE Limitation
If you're planning to use the EPCglobal Application Level Events (ALE) API support, you will need to patch your Sun Java System Application Server to fix Bug ID:
6239283: SOAPElement.addChildElement(SOAPElement); adds an incomplete element without markups in the element

The following patches are available through SunSolve for specific versions of the Sun Java System Application Server:
SJSAS 8.1 Solaris Sparc: 119166-03 (or newer)
SJSAS 8.1 Solaris x86: 119167-03 (or newer)
SJSAS 8.1 Linux: 119168-03 (or newer)
SJSAS 7.1 URx SE/EE - Install the latest JWSDP 1.5 plugin (Available at the Sun Download Center)

After the Application Server restarted, the very first ALE request will trick the ALE Web Services on the Application Server to discovery the ALE Services. Therefore, the first client that issues the first ALE operation will get a message saying "Connection to ALE Services is not available at this time." After that the available ALE Services will be discovered, the ALE Services will be made available, and everything will be fine. Therefore, if the client sees the connection to ALE Services unavailable message, the client should try to connect to ALE Web Services again.

Using Alien ALR-9780 Reader
When using the Alien ALR-9780 reader, you may need to replace the AlienRFID.jar file in
/opt/SUNWrfid/lib/utils
(Solaris) or /opt/sun/rfidem/lib/utils (Linux) with a more recent version shipped with your reader. This allows the Event Manager to automatically reconnect to the reader after a prolonged network drop. If you do not replace the shipping AlienRFID.jar with an official version newer than 11/2004, you may be forced to power cycle the reader in order to reestablish connectivity.

MQ Broker Default Port Limitation
The Information Server requires the MQ Broker to use the default port 7676. If you deploy the Information Server on a bundled Solaris 9 or Solaris 10 Appserver, you will need to configure the bundled MQ Broker to use port 7676." The unbundled Sun Java System Appservers already use port 7676 as default.

Debugging the Event Manager
If you have started the Event Manager but your services do not appear to be running and there is no indication as to why in the log files, please turn up the logging level of the Rio Monitor and Rio Cybernode as follows:

Modify the following files:
Linux: /etc/opt/sun/rfidem/system/logging-station.properties
Linux: /etc/opt/sun/rfidem/system/logging-agent.properties

Solaris: /etc/opt/SUNWrfid/system/logging-station.properties
Solaris: /etc/opt/SUNWrfid/system/logging-agent.properties

Change the following two lines in both files to be:
org.jini.rio.cybernode.level = FINEST
org.jini.rio.monitor.level = FINEST

DOD Conflict for Event Manager
Due to the conflict with DOD specifications, if you need to decode 64-bit TYPEIII EPC, you will need to set the following parameter in readers.xml, in the section: <Comment>Reader</Comment>

<Parameter Name="AutoidCenterTypeIII" Value="true" />

If you resort to this, do not use the Configuration Manager Tool, since it will overwrite the contents of this file every time changes are saved.

Log-in Problem for Information Server on BEA Weblogic Server 8.1
If the login window doesn't pop up, perform the following step, assuming "myrealm" is the default realm which will be used by EPCIS:
In weblogic's console->security->realms->myrealm, set the value of the "Check Roles and Policies" to "All
Web Applications and EJBs", then set the value of the "Future Redeploys" drop-down menu as "Initialize roles and policies from DD".

Login Not Being Displayed on AS8.1 EE
From AS Admin Console -> Configurations -> default-config -> Web Container -> Session Properties, set Session Timeout to non-null.

Startup Script on Linux
Startup Script for Linux requires that users make sure that the correct multicast is set prior to the startup script being called in the system. The startup script is located in /etc/rc5.d/S91rfidStation and
/etc/rc5.d/S92rfidAgent. Multicast is set by running the following command:

route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0

Supporting of the Persistence of Non-EPC data on RFIDIS
In order to support the persistence of non-EPC data on RFIDIS, the database schema has been extended. Therefore you need modify your database schema using the oracle_create_table.sql (for Oracle)
or postgres_create_table.sql (for PostgreSQL) which are provided with the software. Please backup your existing data first and repopulate them after the schema is modified.

The script files are in the following directories:
/opt/SUNWrfidis/lib/sql (Solaris)
/opt/sun/rfidis/lib/sql (RH Linux)

Reporting Framework (using JasperReports)
These reports are provided as examples of how to create your own reports using JasperReports. They do not work out of the box. Please follow the step listed below and refer to the Developer Guide for further configuration requirements.

While accessing the reporting framework, to avoid the ServletException thrown by the JasperReports below, please add the following JVM Option in the JVM Settings of the application server:
-Djava.awt.headless=true

javax.servlet.ServletException: Servlet execution threw an exception
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
...
root cause

java.lang.InternalError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.
at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
at sun.awt.X11GraphicsEnvironment.<clinit>(X11GraphicsEnvironment.java:125)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:140)
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:62)
at net.sf.jasperreports.engine.util.JRGraphEnvInitializer.initializeGraphEnv(JRGraphEnvInitializer.java:102)
...

SAMSys RFID Reader

In order to configure a SAMSys Reader in the Configuration Manager Tool, you will first need to remove the existing Device Profile for the SAMSys reader and recreate it. Please follow these steps in order to recreate the SAMSys profile:

Remove existing SAMSys Device Profile:
1. From the "RFID Configuration Editor" Main Menu, select:
Components->Device Profiles
This takes you to the "RFID Role and Component Editor"

  1. From the "RFID Role and Component Editor" Main Menu select:
    Profile->Delete
    From the "Device Profile" Dialog, select:
    SAMSys Reader
    This removes the existing SAMSys Device Profile

  2. Add new SAMSys Device Profile definition:
    3. From the "RFID Role and Component Editor" Main Menu select:
    Profile->New

  3. Populate the Profile Inspector parameters
    a) Enter the following values:
    Name: SAMSys Reader
    Component Name: SAMSys Reader
    Class Name: com.sun.autoid.adapter.SAMSys.SAMSysAdapter

    b) Remove the existing Configuration Properties and add the following:
    LogLevel: CONFIG
    port: 2001
    readerepc: urn:epc:tag:gid-96:1.1.1
    autoread: true
    antennaSequence: ANT1
    protocols: EPC1,IS186B
    scanDuration: 200
    observationSetTimeout: 100
    snoopTraffic: false
    reportTimings: false

    c) Select the <OK> button

  4. Select <Close> on the "RFID Role and Component Editor"
    This takes you back to the "RFID Configuration Editor"

  5. From the "RFID Configuration Editor" Main Menu, select:
    File->Save to save your changes
    After the changes are saved, you will see the "Success" dialog box
    indicating that all configuration files have been saved.

You are now ready to define your specific SAMSys device, and assign an IP address, readerepc, and other specific device properties. After that you can assign your SAMSys device to a new or existing Configuration Object.

Management Console Requirement
The Management Console requires that the Application Server where it's deployed be running JDK 1.4.2. It will not run with JDK 1.5

PostgreSQL pg_hba.conf
When the MC and IS connect to the PostgreSQL database server, they need to authenticate to PostgreSQL. PostgreSQL's client authentication is controlled by the file pg_hba.conf in the data directory, e.g., /var/lib/pgsql/data/pg_hba.conf. (HBA stands for host-based authentication.) A default pg_hba.conf file is installed when the data directory is initialized by initdb. However, the default setup does not allow the MC and IS to connect to PostgreSQL remotely. Therefore, you need to add the following entries in the pg_hba.conf file for MC and IS respectively. (Please change the database name and user name accordingly.)

[TYPE] [DATABASE] [USER] [IP-ADDRES] [IP-MASK] [METHOD]
host rfidmgmtdb rfidmgmt [ip-address] [ip-mask] password
host epcis epcis [ip-address] [ip-mask] password

Please refer to the Chapter 19 "CLient Authentication" of PostgreSQL 7.4 manual for details.

Known Bugs

Deploying Management Console on Different Subnets
The supported configuration for the Management Console is one in which the Management Console is installed on the same subnet as its managed Control Stations and Execution Agents.

If the user chooses to manage a Control Station or Execution outside the subnet upon which the Management Console is running, they may encounter a known bug in the Management Console. In this situation, the Management Console may not correctly discover the Services across subnets and/or may not correctly detect updated Service information for Services executing on a different subnet.

A workaround for this bug is to delete the Jini Locator for this subnet from the "Settings" menu option panel and re-add the same Jini Locator.

DiscriminateReaders property for Smoothing and Delta Filter
The "DiscriminateReaders" property for the Smoothing Filter and Delta Filter does not work when set to 'false'. This will cause failures at the time it generates PML. The default value of 'true' works correctly.

RIO Service Provisioning Failure
Disk space for the system where the event manager is installed needs to be <90% full. There was a bug fixed in the the FCS version of RIO 3.1 which manages the QOS Measurable classes for Disk, Memory, and CPU. When monitoring disk utilization, if it goes >90% disk utilization, the service stops to provision the application. The symptom here is seen in the log where nothing is being provisioned by the server. Note also that the disk monitor only looks at the root file system, so creating a soft link from /opt/SUNWrfid or /opt/sun/rfidem to another filesystem with more disk space does not work. This, however, has been fixed in the FCS version of RIO 3.1. The release of the RFID software uses release candidate 2 of RIO. The work around here is to make sure that disk utilization is less than 90% capacity for the event manager.

 

D. Installation Notes

Displaying the EPC Viewer
The EPC Viewer does not automatically display when the user executes startall unlike the version 1.0 release. Users will need to run the script $RFID_INSTALL_DIR/bin/tagviewer manually to display this GUI.

Updating the policy file in BEA Weblogic Server 8.1
After installing the information server, copy the server.policy file which is located in $RFIDIS_INSTALL_DIR/policy/server.policy to $BEA_HOME/weblogic81/server/lib/weblogic.policy