WebSphere Everyplace Device Manager Version 5.0.0.1 Readme Last updated September 21, 2004 This document contains information for WEDM Version 5.0 fix pack 1. This Readme contains the following information: * What's included in this fix pack * Fix pack prerequisites * Downloading this fix pack * Installing this fix pack * Trademarks What's included in this fix pack This fix pack includes corrections for the following problems: * getSoftwareList() was returning all bundle versions available on server. Corrected problem when bundles have same bundle name but different bundle versions Agent returned only one bundle. * Enable client pull for update: fixes to software distribution job. Correctly process a OSGi bundle update. If a given bundle is installed and the agent attempts to install the same bundle, the current bundle will be updated. * APAR IY58744 New API: copybundle() only copies files to temp directory. Added support to client pull that allows software distribution to copy the file(s) and not attempt to install them. The API leaves the files in the staging or temporary directory. * APAR IY58745 Error recovery for lost connections: additional events. Added events for network related issues. * Error recovery for lost connections: fixed thread blocking issue. Corrected problem when the agent opens a socket and the connection is lost, the agent will terminate the socket, freeing the system. * Added set and getConnectionTimeout() to change connection timeout. Added timeout support for network connections to keep the JVM from waiting around for the connect to return. * Update SyncML/DM HTTP connections to use new HTTPR protocol J9 does not offer a method to set the connection timeout on a new socket. Added extension to the HTTP connection handler to allow setting a timeout on the socket. * Fixed performance issue related to addAccount(). Corrected problem with API constantly writing to the SyncML tree bin file when no updates were needed. * Changed SyncML Storable Output. Corrected performance problem using Vector(). * SyncML Input changed analogous to SyncML Storable Output. Corrected performance problem using Vector(). * Integrated ftpr.jar into osgiAgent.jar. Corrected problem using OSGi protocol handler registation and class not found problems when using HTTPR and FTPR protocols. * Terminate retry events. * Agent Bundle stop threw exception when osgiconfig was null. Corrected problem when the osgiconfig node has not been initialized. * Fixed message from previous run: PREREQS COULD NOT BE RESOLVED. Corrected problem with client pull APIs and not getting enough information returned after calling the APIs. The server will send the results after calling client pull APIs. * Agent sent two events, END_OF_SOFTWARE_SELECTION_LIST, for a correlation id. * Required bundles did not get loaded. * Duplicate software list download (potential app loop). Added correlator ID to client pull APIs. This allows a calling application to validate the response from the server. The application can match the correlator ID to see what action is needed next so it doesn't perform the same command again. This is useful when the agent disconnected in the middle of performing a job. * Server can't resolve bundle should give "FAILED_NO_RETRY" Corrected problem where the agent requested the installation of a bundle and the bundle prerequisites could not be resolved, the software distrubtion job should not have been attempted again. * We had a job with corr id 167711820947985339 but the SESSION_STARTED and PACKAGE_SENT events have corr-id 0. * WIN32 registry returns 404 due to node being deleted. * Adds an event when a bundle is copied and not installed by the agent. The event contains the Bundle Name and Version. * APAR IY62306 Agent status was false when it should have been true. * APAR IY62303 Performance problem when accessing tree bin file. * APAR IY61775 No activity from agent thread. * APAR IY62307 No stack trace and ERROR_null null null null:null event. * Stack trace wasn't working. If a software distribution job was submitted and the software was deleted from the Device Manager database it caused a problem for a connecting device resulting in no jobs executing on every connect. The software distribution job could not execute because there was a missing required software job parameter. The invalid job was logged and ignored, but it was not cleared out of the vector such that the next time the device connected, the same situation occurred. This has been fixed such that the job is failed and subsequent jobs are executed normally. When the console was installed on Windows XP machine the following error was returned when the user clicked on Help/Device Manager InfoCenter: DYM0018E Unexpected error: CreateProcess: start "http:///dms/docs/en/InfoCenter/index.html" error=2 java.io.IOException: CreateProcess: start "http:///dms/docs/en/InfoCenter/index.html" error=2 * In the Device Manager Console, on the "New Software Properties" panel, the user must select a device class and job type combination in order to register the software properly. However, the panel allowed a user to click the "OK" button without selecting a device class and job type combination. When this happened, the software job would not get registered properly, which caused a problem when the user created a new software distribution job. With this fix, the console automatically selects all the device class and job type combinations presented when the user tries to register new software. * Only one version of a bundle was showing up in software selection list on the OSGi client. Corrected a problem related to OSGi bundle automatic prerequisite resolution in which the appropriate prerequisite bundle was not identified when multiple available bundles supply an OSGi package with various versions. Added correlator support for client initiated commands. This enables an OSGi client application interfacing with an OSGi agent to better associate server commands with application initiated actions. * Patch install modifications. * Patch README modifications. * Send MetaFormat on CustomCmd Replace of binary. * APAR IY57565-WEDM Performance Improvement - When using the Device Manager Console to submit a job using a named query as the target criteria, the SQL generated to insert records into the ACTIVE_JOB table will now be one insert statement using an inner select. * APAR IY60756 When submitting a software distribution job that specified rebooting the device, the device entered a loop. Testing the RDMI protocol level needed to be added to this release. * Corrected a problem when the agent attempts a check point restart and fails to set the socket connection time-out. A user may experience a condition where the agent doesn't respond, because it is waiting for a reply. By setting the connection time-out prior to opening a socket connection allows the agent to regain control after the time-out has expired. * APAR IY61604 Corrected a problem when using Thread.wait() and Thread.notify() to dispatch events to listening applications. When the agent is busy, the event thread at times never posted the event and was lost forever. * Patch build modifications. * Fixpack README modifications. Fix pack prerequisites Tivoli Device Manager 1.5.1 must be already installed. Downloading this fix pack You can retrieve fix pack 1 code from the WebSphere Everyplace Device Manager support site: http://www-306.ibm.com/software/pervasive/ws_everyplace_device_manager/support/ Installing this fix pack To install this fix pack, do the following: 1. w32-ix86: installPatch.bat example: installPatch.bat "C:\Program Files\TivDMS15" Non w32-ix86: installPatch.sh example: ./installPatch.sh /usr/TivDMS15 Below is an example run of the patch. C:\DM151patch0001>installPatch.bat "C:\Program Files\TivDMS15" Starting the patch installer... *** Begin PatchInstall.java::main() *** Extracting jar: Patch.jar Created content list: C:\Program Files\TivDMS15\support_packages\temp\AppSrv_Lib .lst Creating backup jar: orig_AppSrv_Lib.jar Extracting jar: AppSrv_Lib.jar Created content list: C:\Program Files\TivDMS15\support_packages\temp\DMS_Home.l st Creating backup jar: orig_DMS_Home.jar Extracting jar: DMS_Home.jar Created content list: C:\Program Files\TivDMS15\support_packages\temp\Server_Web App.lst Creating backup jar: orig_Server_WebApp.jar Extracting jar: Server_WebApp.jar Created content list: C:\Program Files\TivDMS15\support_packages\temp\WebSrv_Doc Root.lst Creating backup jar: orig_WebSrv_DocRoot.jar Extracting jar: WebSrv_DocRoot.jar *** End PatchInstall.java::main() *** Successful patch installation Return code: 0 2. You must reinstall the Device Manager console on all machines where the console is installed. Go to http:///dmserver/DMconsole and follow the instructions. 3. To uninstall the fix pack, do the following: w32-ix86: uninstall_1.5.1-WES-0001.bat Non w32-ix86: ./uninstall_1.5.1-WES-0001.sh Trademarks AIX, DB2, IBM, RS/6000, SecureWay, Tivoli, WorkPad, WebSphere, and Everyplace are trademarks of the IBM Corporation in the United States, other countries, or both. Lotus, Domino, Lotus Notes, Notes, and Mobile Notes are trademarks or registered trademarks of Lotus Development Corporation and/or IBM Corporation in the United States, other countries, or both. Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. JDBC is a trademark of Sun Microsystems, Inc. in the United States, other countries, or both. Microsoft, Active Directory, Exchange, Pocket PC, Internet Explorer, Windows, Windows 2000, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both. Pentium is a registered trademark of Intel Corporation in the United States, other countries, or both. Other company, product, and service names may be trademarks or service marks of others. (c) Copyright International Business Machines Corporation 2004. All rights reserved. U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.