Install WAS
Contents
- WAS
- Embedded Messaging
- Web Server Installation
- Install IBM HTTP Server V 2.0.42.x
- IBM WAS v5.1 Release Notes
See Also
Install WAS
- Review hardware and software requirements
- Review prerequisites
- The WAS installers use the language setting from the machine locale to determine the language for the interface. Note that for Red Hat Linux 9, you can improve performance exponentially by changing the default locale.
- Install a Web server on a separate machine. (Optional)
The installation programs let you install a web server on the same machine as the appserver. If you want the web server on a separate machine, perform this step.
After installing IBM HTTP Server, you can install the plug-in by installing the base WAS product and deselecting all features but the plug-in for IBM HTTP server.
You do not have to use a web server. You can instead use a hardware load balancer such as Big-IP F5 or Local Director.
- Configure WebSphere MQ.
This is for enterprise-level implementations.
To install WAS v5 on a machine that already has WebSphere MQ v5.3, certain prerequisites need to be satisfied.
- Verify that no files exist in the $WAS_HOME/classes directory.
- To migrate, see WAS 5.0 to 5.1 upgrade.
- As user "root", cd to the directory where launchpad.sh is located.
Failing to use the correct working directory can cause ISMP errors that stop the installation.
- Execute ./launchpad.sh.
The prereqChecker.xml file checks for existing versions of WAS.
You can start the installation wizard from the command line, bypassing launchpad.sh, by executing ./install.sh.
Perform a silent installation by running...
./install.sh options -responsefile...which causes the installation wizard to read your responses from the options response file, instead of from the interactive GUI. You must customize the response file before installing silently.
- Choose Custom install
This type of installation is required if you intend to deselect the WAS embedded messaging server because you have already installed the WebSphere MQ Version 5.3 product, or another JMS provider. And if you are going enterprise, you want to deselect embedded messaging.
For better appserver startup times, do not install the Samples.
- Examine the $WAS_HOME/logs/log.txt file to verify that there were no file system or other unusual errors during installation.
- Apply any relevant fix packs.
- Tune performance
Embedded Messaging
WAS installs the embedded messaging feature by default for use as the JMS provider. Embedded messaging supports both queues and topics.
Gotcha alert: The WAS embedded messaging client cannot interoperate with a WebSphere MQ JMS provider, due to both licensing and version reasons. An embedded messaging client on host1 cannot put messages onto a WebSphere MQ queue on host2. If you are going to use a WebSphere MQ JMS provider, use the WebSphere MQ client. Install WebSphere MQ before installing WAS, and deselect the embedded messaging feature when installing WAS.
Also note that on UNIX systems there is no way to uninstall the embedded messaging client without wiping the disk clean of all WAS software.
Embedded Messaging is really MQ-lite, and should be avoided if you are going to run an enterprise-level system.
Web Server Installation
- Execute "LaunchPad" to install the plugin for IBM HTTP Server (IHS).
To install the IHS and its plug-in on a different machine from the WAS.
- Run LaunchPad
- Select Custom installation.
- Clear all options but the IHS and the plug-in for the IHS.
- Complete the installation.
To use a plugin other than IHS, select the plug-in for a supported Web server on the feature selection page of the installation wizard, and then manually configure the plug-in.
Install IBM HTTP Server V 2.0.42.x
To configure...
- Install IBM HTTP Server Version 2.0 before installing IBM WAS V5.1
- Download IBM HTTP Server V2.0.
- Go to the directory where you downloaded and unpacked the file and execute...
java -jar setup.jarTo install IBM HTTP Server V2.0 on UNIX-based platforms without using an X-Windows GUI:
- To use all installation defaults instead of dialogs
java -jar setup.jar -silent- To use text-based dialogs
java -jar setup.jar -console
- When installing WAS 5.1, select the relevant plugin-in.
mod_was_ap20_http.so Linux and UNIX-based platforms other than HP-UX mod_was_ap20_http.sl HP-UX platforms mod_was_ap20_http.dll Windows You must select the IBM HTTP Server V2.0 plug-in during installation of the base IBM WAS, Version 5.1 product. The installer does not install it when you select the plug-in for IBM HTTP Server, Version 1.3.x as it did in previous releases.
IBM WAS v5.1 Release Notes
Content
- Installation and uninstallation
- Application servers
- Object request brokers
- HTTP server
- Application services
- EJB modules
- Web modules
- Assembly tools
- Deployment
- Messaging and Extended messaging
- Data access
- Performance data and tools
See Also
Installation and uninstallation
Install WAS on top of WebSphere MQ
To install WAS v5 on a machine that already has WebSphere MQ v5.3...
- Verify the following required WebSphere MQ features are installed:
WAS ND: Java Messaging WAS Base... Runtime, Client, Java Messaging, Message Catalogs - Ensure that WebSphere MQ v5.3 is upgraded to the appropriate prerequisite CSD level
- CSD1 for WAS v5.0 - CSD3 for WAS v5.0.1 - CSD4 for WAS v5.0.2 - CSD6 for WAS v5.1- Install the WAS v5 GM release.
- Install any appropriate WAS fix packs.
After the initial installation of WebSphere MQ and WAS, service WebSphere MQ independently of the WAS fix packs. For example, apply WebSphere MQ v5.3 CSD6 before upgrading WAS to v5.1.0.5.
Login with ssh on Linux
When you install WAS, the following entries are displayed in the SystemOut.log fileJMSRegistrati A MSGS0601I: WebSphere Embedded Messaging has not been installed JMSEmbeddedPr A MSGS0050I: Starting the Queue Manager JMSEmbeddedPr E MSGS0058E: Unable to start the JMS Server as WebSphere Embedded Messaging has not been installed JMSService E MSGS0001E: Starting the JMS Server failed with exception: java.lang.Exception: MSGS0058E: Unable to start the JMS Server as WebSphere Embedded Messaging has not been installedAlso, the following associated messages are added to the mq_install.log file
Checking if user "root" is in group "mqm" wmsetup: date time ERROR: Group "mqm" exists, id "root" is defined to the group but does not have the group in its current set of effective groups. Current group membership is ... uid=0(root) gid=0(system) groups=2(bin) You may need to login. wmsetup: date time ... RC 4 from Check_root ERROR: User "root" not in group "mqm" Check_root mqbrkrs Checking for group "mqbrkrs" ... lsgroup returned "mqbrkrs id=203 admin=false users=root adms=root registry=files " RC=0 Checking if user "root" is in group "mqbrkrs" wmsetup: date time ERROR: Group "mqbrkrs" exists, id "root" is defined to the group but does not have the group in its current set of effective groups. Current group membership is ... uid=0(root) gid=0(system) groups=2(bin) You may need to login. wmsetup: date time ... RC 4 from Check_root ERROR: User "root" not in group "mqbrkrs"To prevent this problem, use ssh instead of telnet to log in.
To workaround, run: su -
Verify the system cp command when using emacs or other freeware
If you have emacs or other freeware installed on your Linux or UNIX-based system, verify that the system cp command is being used.
- Type which cp at the command prompt before running the installation program for a WAS product.
- Remove the freeware directory from your PATH if the resulting directory output includes freeware. For example if the output shows /opt/freeware/bin/cp, remove the directory from the PATH.
- Install the WAS product.
- Add the freeware directory back to the PATH.
If you install with a cp command that is part of a freeware package, the installation completes but the Java 2 SDK that the WAS product installs, which is $WAS_HOME/java, can have missing files. Some required symbolic links can be destroyed. If you remove the freeware cp command from the PATH, you can install the WAS product successfully.
To verify that the Java 2 SDK that WAS installs is working correctly...
cd $WAS_HOME/java/bin ./java -version.
Verify that no files exist in the $WAS_HOME/classes directory during installation
The $WAS_HOME/classes directory is reserved for testing and debugging fixes when customers call IBM Support. Having files in the directory during installation can cause various problems depending on the fix left in the directory.
Verify that no files exist in the $WAS_HOME/classes directory.
When IBM Support queues work for you and provides you test or debug fixes, you put the fixes in the $WAS_HOME/classes directory. By default, the $WAS_HOME/classes directory is picked up first in the WAS class path to let it override other classes.
This directory lets you verify or debug a fix. After accepting the test fix or finishing with the debugging of the debug fix, delete the fix from the $WAS_HOME/classes directory to return the system to a working state. If you do not remove such fixes from the $WAS_HOME/classes directory, you can experience errors.
Application servers
The service shows incorrect status when the log root is changed
The WAS service might go to the started state and then return to the stopped state when you start the WAS service even though the server starts successfully. This change in state might happen if the default log root is altered in the variables.xml config file.
The WAS service cannot find the process ID file (for example, server.pid) to verify that the server starts successfully. The process ID is created relative to the log root.
In order for the WAS service to display the correct status, modify the log root directory in your variable.xml file back to the default log root directory, for example, $WAS_HOME/logs. Otherwise, issue the stopServer command to stop the server...
$WAS_HOME/bin/stopServer.sh server
Object Request Brokers
ClassCastExceptions or Delegate not set exceptions
When cycling an application, the ORB creates a new ClientDelegate object, though some existing objects still have references to the old ClientDelegate object. The two objects conflict, allowing calls to go to the wrong underlying servant object, which results in the ClassCastExceptions exceptions or Delegate not set error messages followed by further application failures.
Apply interim fix PQ85782 to fix the problem.
HTTP server
- Forms Proxy Settings and Proxy Cache do not behave correctly
- Using IHS IKEYMAN to create a key database causes a core
- Hiding one copy of the OpenSSL module so that Apache Web server can start
- Define the name of the WebSEAL HTTP server in lower case
- Bringing up the IKEYMAN console with the Conversational Monitoring System option for IHS
- Enabling cryptographic hardware
Forms Proxy Settings and Proxy Cache do not behave correctly
When using IE v6.0 to view the IBM HTTP Administration server, the Forms Proxy Settings and Proxy Cache do not behave correctly. If you select the radio buttons that display editable fields, the fields do not display.
To work around this problem, use another version of the browser.
Using IBM HTTP Server IKEYMAN to create a key database causes a core
A core occurs while using the IKEYMAN or IKEYCMD utility, or during the IHS SSL initialization.
An incompatibility exists between functions in various C or C++ run-time libraries. Depending on the order that the libraries are loaded, a core can occur or IHS fails to initialize. This problem is seen on various RedHat Intel versions.
The GSKit libraries used by the IKEYMAN utility and the IHS SSL module require the C++ library libstdc++-libc6.1-1.so.2 file on the Intel platform and the libstdc++-libc6.1-2.so.3 file on the OS/390 platform. If the libraries do not exist, the IKEYMAN utility might provide only limited functionality and the IHS SSL fails to initialize. If another version of this library, or another library with a common function, loaded first, it might result in the use of an incompatible library routine.
If you encounter this problem on Linux Intel systems, set the environment variable LD_PRELOAD to the following values before starting IHS or IKEYMAN...
export LD_PRELOAD=/usr/lib/libstdc++-libc6.1-1.so.2
This change forces the library to load first when the application starts.
Hiding one copy of the OpenSSL module so that Apache Web server can start
Apache Web server fails to start when using the mod_ssl plug-in module and issuing the following command
apachectl startsslA problem exists with a single process that has two copies of the OpenSSL modules.
Hide the GSKit copy of the OpenSSL modules by renaming the opt/ibm/gsk7/icc directory to opt/ibm/gsk7/icc_save.
Define the name of the WebSEAL HTTP server in lower case
When defining your WebSEAL HTTP Server in the console, define the name of the WebSEAL HTTP Server all in lower case.To define the name of the WebSEAL server name, click...
LTPA | Trust Association | Interceptors | com.ibm.ws.security.web.WebSealTrustAssociationInterceptor | Custom Properties | com.ibm.websphere.security.webseal.hostnames
Enabling cryptographic hardware
The cryptographic token is no longer a separate item on the IKEYMAN GUI menu. It is treated as one of the key store types. You can specify the PKCS11 module name by specifying the property of DEFAULT_CRYPTOGRAPHIC_MODULE in the ikmuser.properties file as before. However, IKEYMAN no longer tries to load the DLL or Library (LIB) at startup time to decide whether to support the cryptographic token. The value of the DEFAULT_CRYPTOGRAPHIC_MODULE property is used only for the default value shown on the GUI.
When you open the Cryptographic Token, IKEYMAN first retrieves the value of the DEFAULT_CRYPTOGRAPHIC_MODULE property in the ikmuser.properties file and pre-fill the value in the File Name and Location fields in the Key Database File > Open dialog box of IKEYMAN GUI. Modify the value in the File Name and Location fields or click the Browse button.
Once the specified DLL or LIB is loaded successfully, you can use IKEYMAN. After opening a cryptographic token successfully, IKEYMAN displays the certificates stored in the cryptographic token.
Application services
Clean disk cache files after installing fix packs
If the server is configured to use the disk cache, clean the disk cache files because the disk cache files are not compatible to the previous version. Failure to remove the old disk cache files results in a ClassCastException exception in the systemerr.log file when you access the cache from the disk.
To delete the disk cache, perform the following steps:
- If you do not know the disk cache offload location, do the following steps:
- Open the administrative server.
- Click Server | Application Server | server | Dynamic Cache Service
- The location is specified in the Disk offload field.
If the location is not specified, the default directory WebSphere/appserver/your_node/server_name/_dynacache is used.
- Verify that the you stop the server and delete all the files under the offload location.
- If you use Network Deployment, delete the disk cache files for each server.
Transaction service unable to recover
If the transaction service is unable to perform recovery processing as a result of inconsistencies within the recovery log, appservers may fail to start. During startup, appservers attempt to resolve incomplete transactions from previous server runs. If the log is corrupt, you might get the following error message...
"WTRN0019E: The transaction service log file 'name' has become corrupted" (where 'name' is either "partnerlog" or "tranlog")To fix, delete the transaction log files...
rm -r $WAS_HOME/tranlog/*...and restart the server.Apply interim fix PQ80441 to prevent the problem from re-occurring.
To download this interim fix, visit the WAS Support page at the following Web site:
EJB modules
Single access intent read ahead hint
A single access intent read ahead hint might not refer to the same bean type in more than one relationship. For example, if a Department enterprise bean has a relationship employees with the Employee enterprise bean, and also has a relationship manager with the Employee enterprise bean, then a read ahead hint cannot specify both employees and manager.
Assembly tools
Help files are viewable only from a locally installed browser
If you access any of the IBM WAS tools from a remote machine, for example, the Assembly Toolkit, the remote browser cannot display the help files. You can only view the help files from a locally installed browser.
To work around this problem, close all the Netscape sessions on the remote machine and click Help. A new Netscape session starts and you can then view the Help files.
Assembly Toolkit unsupported types
When configuring a resource reference for an application client module in the Assembly Toolkit, the Type field lists javax.resource.cci.ConnectionFactory as an available resource reference. This type is not supported by the J2EE application client run time. The supported types are:
- java.net.URL
- javax.mail.Session
- javax.jms.QueueConnectionFactory
- javax.jms.TopicConnectionFactory
- javax.jms.Queue
- javax.jms.Topic
- javax.sql.DataSource
Run the Assembly Toolkit on UNIX platforms causes errors
When you run the Assembly Toolkit on UNIX platforms, a sample of errors that display follows:
...Font specified in font.properties not found [-urw-itc zapfdingbats-medium-r-normal--*-%d-*-*-p-*-sun-fontspecific] Font specified in font.properties not found [-urw-itc zapfdingbats-medium-r-normal--*-%d-*-*-p-*-sun-fontspecific] ...The Assembly Toolkit or installer functions are not affected by these errors. These messages display in the command shell that spawned the Java GUI. You can disregard these messages.
Messaging and Extended messaging
Embedded JMS provider installation fails
It is possible for the embedded JMS provider installation to fail without any visible warning if the prerequisite checker returns an error that the IBM WAS installation is not expecting. The IBM WAS installation completes, but the JMS provider is not installed.
Look for details in...
/tmp/mq_prereq.log
$WAS_HOME/log/create_mq.log
$WAS_HOME/log/mq_install.logAfter correcting, install the embedded JMS provider separately by clicking Custom installation.
Embedded JMS server and IBM WAS in a single JVM
In a single server environment, the embedded JMS server and IBM WAS run on the same single JVM. If a MQ native process dies and restarts while the JMS server is running, restart all applicable appservers manually.
In a distributed server environment, the JMS server and the appserver run in separate processes, obviating the need to perform this task.
Information know about using server-side and client-side selectors
The default behavior for the internal JMS broker is to use server-side selectors. The default behavior for external brokers is to use client-side selectors. The reason for the latter is that not all brokers support server-side filtering. Those that do, are not all JMS compliant in their implementation process.
Component-managed authentication alias not specified
When using JMS, informational messages similar to the following can occur:
[10/31/02 9:13:20:438 EST] 6a55451c ConnectionFac I J2CA0107I: Component-managed authentication alias not specifiedIf the named connection factory ends in JMSManagedConnection@nnnn, where nnnn is a multi-digit number, the informational message can be ignored. A connection factory with this type of name is created internally by the JMS server and does not require a component-managed authentication alias.
Stopping the queue manager while running the embedded JMS provider stops IBM WAS
When you run the embedded JMS provider and the queue manager stops, IBM WAS is also stopped.
To recover the queue manager and IBM WAS, start the appserver.
A NullPointer exception is thrown when several remote clients send requests to a target server with a gateway server between the sender and the receiver in a stress environment
In a stress environment where there are several remote clients sending request to a target server with a gateway server between the sender and the receiver, you might get a NullPointer exception recorded in the SystemOut.log file. The remote clients continue to run over time. Then the embedded MQ server ends without warning and the gateway server stops.
When a fix becomes available, you can download it from the following Web site:
https://www6.software.ibm.com/dl/wsmqcsd/wsmqcsd-p.
On Linux/Intel (RedHat V8) platforms, installation of WAS hangs during the embedded messaging installation stage
On Linux (RedHat v8), the installation of WAS hangs during the embedded messaging installation stage. The last line of the mq_install.log is
Install MQSeriesClient-5.3.0-1.i386.rpm MQSeriesMsg_Zh_CN-5.3.0-1.i386.rpm MQSeriesMsg_Zh_TW-5.3.0-1.i386.rpm MQSeriesMsg_de-5.3.0-1.i386.rpm MQSeriesMsg_es-5.3.0-1.i386.rpm MQSeriesMsg_fr-5.3.0-1.i386.rpm MQSeriesMsg_it-5.3.0-1.i386.rpm MQSeriesMsg_ja-5.3.0-1.i386.rpm MQSeriesMsg_ko-5.3.0-1.i386.rpm MQSeriesMsg_pt-5.3.0-1.i386.rpm MQSeriesRuntime-5.3.0-1.i386.rpm MQSeriesSDK-5.3.0-1.i386.rpm MQSeriesJava-5.3.0-1.i386.rpm MQSeriesServer-5.3.0-1.i386.rpm...The last line of the master install log (/tmp/log.txt) is
(date time), Setup.product.install, com.ibm.wizard.platform.linux.LinuxProductServiceImpl, msg1,installing Exec Action From Directory (mqUnixInstallActionRPM lock files exist that prevent the product installation from continuing.
For information about solving this problem, see the bugzilla report...
http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=74726
Data access
Limited connection caching available for servlets
Caching of connection handles across servlet methods is limited to JDBC and JMS resources. Other non-relational resources, such as CICS or IMS, currently cannot have their connection handles cached in a servlet. This limitation only applies to single-threaded servlets since multithreaded servlets do not allow caching of connection handles.
To work around this problem, you need to get, use, and close the connection handle within each method invocation.
Misleading scope when installing RAR file at the server level
When installing a RAR file, by clicking...
Resources | Resource Adapters | Install RAR...the scope defined has no effect on where the RAR file gets installed. You can only install RAR files at the node level.The scope on the Install RAR page determines the node to install. However, the scope you set on the resource adapters panel determines the scope of the new Resource Adapters, which you can install at the server, node, or cell level.
Test connection fails when on node agents
The test connection service operation might fail when the operation occurs on the node agent.
This is because either the data source is defined at the node scope, or because the data source is defined at a server scope and the server is not running. The problem only occurs when an alias is added to the configuration, and then used on a data source for testing, without cycling the node agent.
Run stopNode.sh / startNode.sh to fix.
DB2 8.1 client limitations
Limitations exist when you connect a DB2 8.1 client to a back level server, for example, DB2 7.2 FP8, using a DB2 XA data source
If there is no fix pack installed on the client, testing the connection for the data source stops the appserver with no error log if the connection is tested from the console. If it is tested from wsadmin.sh at the command prompt, you can receive the following exceptions
wsadmin>$AdminControl testConnection TradeDataSource(cells/DefaultNOde/nodes/Def aultNode:resources.xml#DataSource_1056390840594) WASX7015E: Exception running command: "$AdminControl testConnection TradeDataSource(cells/DefaultNOde/nodes/DefaultNode:resources. xml#DataSource_1056390840594)" ; exception information... com.ibm.websphere.management.exception.ConnectorNotAvailableException org.apache.soap.SOAPException: [SOAPException: faultCode=SOAP-ENV:Client; msg=Connection reset by peer: socket closed; targetException=java.net.SocketsException... Connection reset by peer: socket closed]If you install Fix Pack 2 on a DB2 8.1 client, the appserver does not stop, but returns the following error
389b0a5 DataSourceCon E DSRA8040I: Failed to connect to the DataSource. Encountered : java.lang.Exception: COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] SQL30070N "0x1055" Command is not supported. SQLSTATE=58014Upgrade the DB2 server level to the same level as the DB2 client.
DB2 legacy CLI JDBC and DB2 Universal JDBC driver
WAS fails if you use the DB2 legacy CLI-based JDBC driver and the DB2 Universal JDBC driver at the same time. Run the DB2 legacy CLI-based JDBC driver and the DB2 Universal JDBC driver at different times.
DB2 V8.1 FP3 Universal JDBC driver type 2 XA data source
Applications might stop when you use the DB2 V8.1 FP3 Universal JDBC driver type 2 XA data source. You might see the following message in the SystemOut.log file
Transaction [transaction number] has timed out after xxx seconds.This defect is in the DB2 V8.1 FP3 Universal JDBC driver. This defect is fixed in DB2 V8.1 FP4. Upgrade your DB2 database to DB2 V8.1 FP4. If you cannot upgrade your database to DB2 V8.1 FP4, use the legacy CLI driver XA data source.
Using the correct user ID and password to connect to the DB2 Universal JDBC driver
If you do not use a user ID and password, or you use some combination of an invalid user ID or password to connect to the DB2 Universal JDBC driver, you still can get the connection. However, when the connection is used in an XA transaction, an XAException exception is displayed with an XAER_PROTO error code .
The DB2 Universal JDBC driver requires the correct user ID and password to acquire a connection that is unlike the legacy CLI driver.
Verify that you use the correct user ID and password to connect to the DB2 Universal JDBC driver. DB2 is aware of the problem.
The console no longer displays any deprecated JDBC Provider names
Starting from WAS v5.1, the administrative console no longer displays any deprecated JDBC provider names. The new providers differ only in names from the old deprecated ones. The new providers are more descriptive and less confusing.
The deprecated JDBC pProvider names continue to exist in the jdbc-resource-provider-templates.xml file for migration reasons, for example, for the existing Jacl scripts. However, you can use the new and more descriptive JDBC provider names in the Jacl scripts.
NullPointerException if serverName property is not provided
When you create a data source of DB2 Universal JDBC driver and set the driverType property to 4, provide the serverName property.
If you do not provide the serverName property, DB2 throws a NullPointerException instead of an exception with meaningful message.
preTestSQLString customer property
When using the pre-test connection function with DB2 Legacy CLI-based type 2 JDBC Provider (JDBC) Driver (XA), you need to provide an SQL statement to the preTestSQLString customer property. If you do not provide an SQL statement to the preTestSQLString customer property, WAS uses the default SQL string for the pre-testing the connection, which might cause applications to throw a javax.transaction.xa.XAException exception.
This is a defect of DB2 Legacy CLI-based type 2 JDBC Driver. DB2 is aware of the problem.
ArrayIndexOutOfBoundsException thrown when reading CLOB data
An ArrayIndexOutOfBoundsException exception is thrown when reading the CLOB data from the query result set.
The exception is thrown only when the data being retrieved can be expanded because of the character conversion. A typical scenario that causes this exception is that you retrieve the CLOB data from the query result set as an ASCII stream and then read the stream. The following is an example of the exception trace
java.lang.ArrayIndexOutOfBoundsException at COM.ibm.db2.jdbc.app.DB2InputStream.SQLReadArrayOfByte(Native Method) at COM.ibm.db2.jdbc.app.DB2InputStream.read(DB2InputStream.java(Compiled Code)) at COM.ibm.db2.jdbc.app.DB2InputStream.read(DB2InputStream.java(Compiled Code))DB2 is aware of the problem. Contact DB2 for this problem.
Databases-IBM Cloudscape
- Descriptive error messages
- driverType data source custom property
- Uninstall Cloudscape v5.1.x
- DB2 JDBC settings instead of Cloudscape
- Accessing the result set after a transaction is committed
- Remove "export" keywords to support Cloudscape tools on Solaris
No descriptive errors
When running WAS v5.0.2 against the Cloudscape Network Server or the DB2 universal driver, you cannot see the descriptive error messages from the database unless the retrieveMessagesFromServerOnGetMessage data source custom property is set to true. By default, the full message text is not returned to the client when a server-side error occurs. This property is disabled by default.
driverType data source with Network Server framework
When running WAS v5.0.2 with Cloudscape using the Network Server framework, you can receive the following exception if you either forget to set the driverType data source custom property or set it to 2
com.ibm..db2.jcc.b.SQLException: Unexpected throwable caught java.lang.UnsatisfiedLinkError: DBConnectTo avoid receiving the exception, set the driverType data source custom property to 4.
DB2 JDBC settings instead of Cloudscape
When creating a new Cloudscape JDBC Provider Network Server using the universal JDBC driver provider through the console in WAS v5.0.2, the console fills in the DB2 universal data sources settings by default instead of the Cloudscape Network Server ones. Those settings include:
- the DataStoreHelper class
- the data source custom properties
The incorrect settings do not include the implementation class, which is just like the DB2 Universal one.
If you want to create the Cloudscape JDBC Provider Network Server using the universal JDBC driver provider, perform the following steps to manually modify the entries in the console:
- Change the DataStoreHelper class to
com.ibm.websphere.rsadapter.CloudscapeNetworkServerDataStoreHelper- You only need the following custom properties
driverType 4 (Only valid value for Network Server) serverName Server TCP/IP address or name. Required databaseName Database name retrieveMessagesFromServerOnGetMessage Required by WAS, not the database. Defaults to false by the database. Must be set to true in WAS. The following data source custom properties are optional
portNumber. Port number where Network Server listens for connection requests. Required. Default is port 1527. logWriter
traceLevel
traceFile
traceFileAppend
deferPrepares Works as documented except that the prepare on EXECUTE STATEMENT is never deferred resultSetHoldability Defaults to CLOSE_CURSORS_AT_COMMIT for Cloudscape. This is the only valid value for Network Server. Use the JDBC 3.0 API's for setting holdability. securityMechanism Network Server supports the following security Mechanisms. com.ibm.db2.jcc.DB2BaseDataSource.CLEAR_TEXT_PASSWORD_SECURITY
com.ibm.db2.jcc.DB2BaseDataSource.ENCRYPTED_PASSWORD_SECURITY
Accessing the result set after a transaction is committed
When you run WAS with Cloudscape using the Cloudscape network server framework, Cloudscape throws an exception when you access the result set after the transaction is committed despite the fact that the cursor holdability is false by default.
This problem does not exist when you run in Cloudscape embedded. As this problem has been reported to Cloudscape, you can consult Cloudscape Support.
Ensure that your application does not rely on an exception that is thrown.
Remove "export" keywords to support Cloudscape tools on Solaris
Cloudscape tools, for example, ij.sh, cview.sh, sysinfo.sh, startNetworkserver.sh, and stopNetworkserver.sh might not work on the Solaris Operating Environment.
The scripts contain a keyword that is not compatible with the Solaris Operating Environment.
Change the scripts to remove the "export" keyword as indicated in the following example:
Change...
export xyz = abc...to...
xyz = abc
XA transactions and IBM Informix Dynamic Server
XA transactions and IBM Informix Dynamic Server sometimes do not play nice together. Possible exceptions include...
java.sql.SQLException: Could not position within a table...or...java.sql.SQLException: Could not do a physical-order read to fetch next row.Currently, there is no solution for the problem. IBM Informix Dynamic Server is working to resolve the issue.
A Web services security enabled application fails to start
A Web services security enabled application fails to start. You can receive an error message similar to the following
WSEC5156E: An exception while retrieving the key from KeyStore object: java.security.UnrecoverableKeyException: Given final block not properly paddedThe cause of the problem is that the keypass (password) provided for a particular key in a Key Store is invalid. The Key Store passwords are specified in the KeyLocators elements of the bindings file(s) (ws-security.xml, ibm-webservices-bnd.xmi or ibm-webservicesclient-bnd.xmi).
Check the keypass values for keys specified in the KeyLocators elements of the bindings file(s) and correct any that are incorrect.
Web services security is not supported in a pure Java client (also known as a non-managed client)
Web services security is not supported in a pure Java client (also known as a non-managed client). Web services security is only supported in a managed client in WAS v5.0.2 or later.
The Web services security constraints do not apply to the outbound client or Web services acting as the client SOAP message if the application code does not use the J2EE programming model, therefore the J2EE environment (including security handlers) is not available to the client. This includes Web services security. You might configure to digitally sign, encrypt, and generate the security tokens. For the outbound message for a client or Web services acting as a client, the SOAP message is not digitally signed or encrypted and the security is not token inserted into the message.
Change the application to a managed client application and use the J2EE programming model to invoke Web services.
AccessControlExceptions exceptions might be reported in the system log file that are associated with the JavaMail-related configuration files
In the system log file, WAS might report AccessControlExceptions exceptions that are associated with certain JavaMail-related configuration files such as .mailcap, mailcap, javamail.providers, and so on.
These exceptions are benign. This is not an application or system problem because the JavaMail anticipates the exceptions and handles them appropriately. The WebSphere SecurityManager is rather verbose in logging possible violations of the Java 2 security access control exceptions.
To reduce this redundant reporting, you can grant read access to each reported JavaMail configuration file. For more information, see information center topics, "AccessControlException" and "Configuring app.policy files."
Federal Information Processing Standards are supported in WAS v5.0.2 or later
WAS v5.0.2 or later supports a configuration option to use only Federal Information Processing Standards (FIPS) 140-2 certified cryptography modules including IBM Java Cryptography Extension Federal Information Processing Standards (IBMJCEFIPS) and IBM Java Secure Socket Extension Federal Information Processing Standards (IBMJSSEFIPS).
When WAS v5.0.2 or later has FIPS-certified cryptography modules enabled, it uses the IBMJCEFIPS provider exclusively and does not use the IBMJCE provider. Also, when these cryptography modules are enabled, you can configure WAS to use the IBMJSSEFIPS provider on a per port basis.
The IBMJCEFIPS and IBMJSSEFIPS providers that are packaged in WAS v5.0.2 or later are currently in the FIPS certification process. The IBMJCEFIPS and IBMJSSEFIPS modules in WAS v5.0.2, are being certified using the IBM SDK, Version 1.3.1. The modules are undergoing certification for the Windows and AIX platforms and Solaris Operating System only.
IBM is firmly committed to FIPS certification and to meet the Government Security Standards. The IBMJSSEFIPS and IBMJCEFIPS providers are undergoing FIPS 140-2 certification.
Unknown certificate errors using the default dummy key files
SSL interoperability fails with unknown certificate errors using the default dummy key files and trust files between WAS v5.1 and previous releases.
A new dummy certificate is created in WAS v5.1 with a later expiration date. The signer for this certificate is not present in the trust files of previous releases. This missing signer causes unknown certificate errors when making SSL connections between WAS v5.1 and previous releases.
Use the newer dummy key files and trust files in the previous releases for test interoperability. Do not use these default dummy certificates, key stores, and trust stores in production environments. The update installer overwrites these files when an interim fix is applied. The certificates are widely used and considered insecure for any production environment.
IBM Developer Kit, JTE V 1.4.x security debug
If Java 2 Security is enabled and IBM Developer Kit, JTE, v 1.4.x Java 2 Security debug parameters...
(-Djava.security.debug=all...or...
-Djava.security.auth.debug=all or both... are enabled, a recursive loop results and eventually the WAS crashes with a Java core dump. This problem is recognized in the IBM Developer Kit, Java Technology Edition Version 1.4.x.Do not use the IBM Developer Kit, JTE v 1.4.x> security debug with the all or domain.
Problem exists with a parsing permission that has a trailing space in the permission target name
A problem exists with a parsing permission that has a trailing space in the permission target name.
When a policy has a trailing space in the policy permission target name, the policy fails to parse the permission properly in WAS v5.1 IBM Developer Kit, Java Technology Edition Version 1.4.x. In the following example, note the space before the last quote: * \"*\" "
grant { permission javax.security.auth.PrivateCredentialPermission "javax.resource.spi.security.PasswordCredential * \"*\" ","read"; };The following exception might display when loading a permission with a trailing space in any of permission attributes
[9/16/03 16:56:13:112 EDT] 5fff004e WSDynamicPoli E SECJ0197E: Caught Invocation TargetException while constructing the permission object. The exception is java.util.NoSuchElementException at java.util.StringTokenizer.nextToken(StringTokenizer.java(Compiled Code)) at javax.security.auth.PrivateCredentialPermission.init(PrivateCredentialPermission.java:379) at javax.security.auth.PrivateCredentialPermission.<init>(PrivateCredentialPermission.java:193) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:79) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:43) at java.lang.reflect.Constructor.newInstance(Constructor.java:313) at com.ibm.ws.security.policy.WSDynamicPolicy.getPermissionInstance(WSDynamicPolicy.java:1537) at com.ibm.ws.security.policy.WSDynamicPolicy.access$400(WSDynamicPolicy.java:76) at com.ibm.ws.security.policy.WSDynamicPolicy$WSPolicyTemplate.add(WSDynamicPolicy.java:1594) at com.ibm.ws.security.policy.WSDynamicPolicy$WSPolicyTemplate.access$200(WSDynamicPolicy.java:1550) at com.ibm.ws.security.policy.WSDynamicPolicy.loadRAPolicyTemplate(WSDynamicPolicy.java:993) at com.ibm.ws.security.policy.WSDynamicPolicy.loadRAPolicyTemplate(WSDynamicPolicy.java:965) at com.ibm.ws.security.policy.WSDynamicPolicy.setupPolicy(WSDynamicPolicy.java:583)If the permission is in a policy file loaded by the IBM Developer Kit, Java Technology Edition Version 1.4.x policy tool, the following message might display
Errors have occurred while opening the policy configuration. View the warning log for more information.In the warning log, you might see the following error
Warning: Invalid argument(s) for constructor: javax.security.auth.PrivateCredentialPermission.Edit the permission and remove the trailing space. When the trailing space is removed, the permission loads properly
grant { permission javax.security.auth.PrivateCredentialPermission "javax.resource.spi.security.PasswordCredential * \"*\"","read"; }
"Signed by " and "JAAS Principal" keywords are not supported in dynamic policy
"Signed by " and "JAAS Principal" keywords are not supported in dynamic policy.
The "Signed By" keyword is not supported in the app.policy, spi.policy, library.policy, was.policy, and filter.policy policy files. But this keyword is supported in the java.policy, server.policy, and client.policy files. The "JAAS Principal" keyword is not supported in the app.policy, spi.policy, library.policy, was.policy, and filter.policy files, but in a Java Authentication and Authorization Service (JAAS) policy file specified by the JVM system property java.security.auth.policy.
Define grant statements with the "Signed By" keyword in the java.policy or server.policy file. Specify JAAS Principal in a JAAS policy file that is specified by the JVM system property java.security.auth.policy or statically set this keyword in the java.security file with auth.policy.url.n=[URL].
CSIv2 trusted ID list might use the pipe (|) or comma (,) characters for the delimiter when the server ID is the distinguished name
The CSIv2 trusted ID list might use the pipe (|) or comma (,) characters for the delimiter when the server ID is the distinguished name (DN).
The previous CSIv2 trusted ID list used a comma delimiter before the DN was supported as a server ID. Now that DN is supported as a server ID, the comma is no longer valid to use a delimiter of DNs.
Use the pipe (|) character as the list delimiter from now on. WAS is still supporting the comma (,) character as the list delimiter for backwards compatibility. WAS checks the comma character when the pipe character fails to find a valid trusted ID.
Interoperability issue exists between WAS for z/OS and WAS distributed packages when SSL is supported, but not required
An interoperability issue exists between WAS for z/OS and WAS distributed packages when Secure Sockets Layer is supported, but not required.
WAS distributed packages set an integrity required flag for the CSIv2 inbound configuration to true by default because SSL requires integrity at a minimum. However, WAS for z/OS interprets this flag as an SSL requirement.
In the security.xml file for WAS distributed packages system, change the following line from
<CSI xmi:id="IIOPSecurityProtocol_1066667906706"> <claims xmi:type="orb.securityprotocol:CommonSecureInterop" xmi:id="CommonSecureInterop_1066667906706" stateful="true"> ... <requiredQOP xmi:type="orb.securityprotocol:TransportQOP" xmi:id="TransportQOP_1066667906706" establishTrustInClient="false" enableProtection="false" confidentiality="false" integrity="true"/> ... </claims>to
<CSI xmi:id="IIOPSecurityProtocol_1066667906706"> <claims xmi:type="orb.securityprotocol:CommonSecureInterop" xmi:id="CommonSecureInterop_1066667906706" stateful="true"> ... <requiredQOP xmi:type="orb.securityprotocol:TransportQOP" xmi:id="TransportQOP_1066667906706" establishTrustInClient="false" enableProtection="false" confidentiality="false" integrity="false"/> ... </claims>You also can make the previous change using the WAS administrative scripting commands.
A LDAP token gets a new expiration period when validated downstream
A LDAP (LTPA) token gets a new expiration period when validated downstream.
When an LTPA token is sent downstream as the authentication information, a new timestamp is added to the validated LTPA token. This effectively increases the timeout period of the token.
When an interim fix becomes available, you can download this update by accessing the WAS support Web site and clicking All Updates (Fixes, patches, etc.).
Configuring the trusted mode to determine if administrators can trust private HTTP headers or not
WAS has tightened security further by introducing a configuration option that permits administrators to specify if they trust private HTTP headers or not.
You must carefully evaluate enabling the WAS Internal HTTP Transport in the trusted mode in the production environment to determine if sufficient trust is established.
When the trusted mode is enabled, the WAS Internal HTTP Transport supports the assertion of the user identity by adding the client certificate to the HTTP header. The Web server plug-in can use this feature to support client certificate authentication. The HTTP header does not carry verifiable information that WAS can use to determine the server identity that asserts the client certificate. You should establish a secure communication channel with transport level authentication between the Web server plug-in and WAS to avoid HTTP header spoofing.
You can configure the trusted mode for each HTTP port independently and disable on any port that client machines can access directly, both from the Internet and the intranet. Requiring the Web server plug-in to establish a SSL connection with client certificate authentication is a way to ensure that only a trusted Web server plug-in asserts the user certificate. Moreover, use a self-signed certificate so that only those servers that have the self-signed certificate can establish a secure connection to the trusted Internal HTTP Transport.
Other than SSL, you can use mechanisms such as VPN and IPSec to protect the Internal HTTP Transport from being accessed by unauthorized users.
The trusted mode is set to true by default. Perform the following steps to add a custom transport property to disable the trusted mode:
- Using the console, click Servers > Application Servers > <server name> > Web Container >HTTP Transports > < host> > Custom Properties.
- Click New and enter the property name Trusted with the value of false.
- Restart the server.
- After the server restarts, the transports for which you set Trusted to false do not accept client certificate assertion and return an HTTP Error 403 with the error message similar to the following example in your log file
Requests through proxies such as the WebSphere webserver plug-in are not permitted to this port. The HTTP transport on port 9080 is not configured to be trusted.
Tivoli Access Manager Documentation
To instructions on how to configure Tivoli Access Manager check out:
Hardware cryptographic token devices fail on Solaris
Hardware cryptographic token devices do not work properly on the Solaris Operating Environment.
Because of a Java compatibility test problem found in the IBMPKCS11 provider, first locate the IBMPKCS11 provider java.security file by default. If you need to use hardware cryptographic devices, delete the line including...
com.ibm.crypto.pkcs11.provider.IBMPKCS11...from...${WAS_INSTALL_ROOT}/java/jre/lib/security/java.security.The problem in the IBMPKCS11.JAR provider, which makes the deletion of the line necessary, is not significant. It reports the availability of algorithm MD4 that is not present in the IBMPKCS11 provider. This causes a Java compatibility test to fail on the Solaris Operating Environment with the provider enabled.
To get the hardware cryptographic support, delete the IBMPKCS11 provider from...
${WAS_INSTALL_ROOT}/java/jre/lib/security/java.security file.
Cannot install an EAR file remotely using wsadmin.sh
The installation of an EAR file to a remote WAS is not a supported operation in wsadmin.sh.
To work around this problem, use the WAS console to install an application whose EAR file resides in a different machine from that of the WAS. An alternative is to include WAS as part of the Network Deployment environment and then use the remote scripting client to install the application to the Deployment Manager.
Performance data and tools
ESIEnable
For performance purposes, edit the plugin-cfg.xml file and change the value of the ESIEnable variable, if it exists, from false to true.
<Property Name="ESIEnable" Value="true"/>
The prepared statement recommendation might be too large
The TPV Advisor or the Runtime Performance Advisor (RPA) issues advice telling you to increase the size of the prepared statement cache to an unreasonably large value, for example, 3000. On some systems this can cause a system crash or out of memory error.
If the application has a very large number of prepared statements that are all consistently used, there are a lot of discards from the cache. The advisors see the number of discards from the cache and recommend increasing the size of the prepared statement cache. The advisors do not currently take into account the memory resources used by the prepared statement cache entries.
You should not increase the prepared statement cache above 1000 unless you are sure that you have appropriate resources.
Contradictory advice on shared resources
The TPV Advisor and the Runtime Performance Advisor (RPA) might give contradictory advice for JDBC (JDBC) Resources configured at the node or cell level and used at the server level.
When servers share a resource, each server might use the resource differently. The advisors only provide advice within the scope of a single server, without consideration of how other servers might be using the shared resource.
You should compare advice about the shared JDBC resources from all the appservers before taking such advice. If the advice is consistent, take it. If the advice is inconsistent, you should use your best judgment to configure the shared resources.
TPV cannot connect to a running server if security is enabled
Tivoli Performance Viewer (TPV) cannot connect to a running WAS . The SystemOut.log file of the server located at the $WAS_HOME/logs/<servername> directory might display errors similar to the following
SECJ0305I: Role based authorization check failed for security name <null>, accessId no_cred_no_access_id while invoking method.If security is enabled in WAS v5, TPV cannot connect to the server using a SOAP connector if the proper user login and password are not set in the SOAP properties file.
Set the user name and password in the soap.client.props file located at the $WAS_HOME/properties directory. You should set the values for the keys com.ibm.SOAP.loginUserid and com.ibm.SOAP.loginPassword. The password can be encrypted using the PropFilePasswordEncoder utility located in $WAS_HOME/bin. You can find more information by searching the topic, "Running your monitoring applications with security enabled" in the WAS v5 information center.
TPV cannot set all PMI levels to None
When trying to set the monitoring level for a PMI module to None through TPV, you can find that the monitoring level for the module continually reverts back to High.
If the Runtime Performance Advisor is enabled on the server, it sets the monitoring level for PMI modules back to High. This behavior is by design, because the RPA requires data for certain modules.
PMI on AIX
On an AIX platform when the PMI is enabled the following nodeagent SystemOut.log message repeats continuously
No PMI Module found for the Mbean systemModuleTo avoid receiving the message, install the bos.perf fileset.
HP memory usage
Using tools on the HP platform to check the memory usage of the WAS process might show a high memory usage (with the maximum set to 256 MB). The virtual number shown in glance and other tools does not represent the actual physical memory committed in use. This is normal behavior on the HP platform.
Platform-specific tips for installing and migrating
Contents
- All platforms
- All Linux and UNIX-based platforms
- AIX platforms
- HP-UX platforms
- Linux platforms
- Solaris Operating Environment
See also
- Tips for installing the embedded messaging feature.
- Configuring the IBM HTTP Server the Web server plug-in for SSL
- WASPreUpgrade command
- WASPostUpgrade command
- Tips for installing the embedded messaging feature
- Installation: Resources for learning
All platforms
- Avoid special non-ASCII characters or double byte character set (DBCS) characters in the name of the installation directory. Avoid spaces in file system names.
- Avoid the use of a V5.0.x deployment manager after migrating to V5.1.
- Ignore the registration panel when installing only IBM HTTP Server.
If you install IBM HTTP Server on another machine by installing WAS 5.1 and clearing all features but the one for IBM HTTP Server and its plug-in, the installer program displays the registration panel. Select the check box to clear it and click Next to avoid registration, which is not required when installing only the Web server. If you do attempt to register the feature when you have not installed WAS, Version 5.1, you can ignore the following error
java.io.FileNotFoundException... /opt/WebSphere/AppServer/prt/PRT_Welcome.html (the system cannot found the path specified)- Install the WAS product first. Then install the Network Deployment (ND) product.
- Install all Web server plug-ins during the initial installation.
You must select all plug-ins that you require during the initial installation of the WAS product, if you want to automatically control the configuration of the Web servers. If the installer program configures the Web servers, the uninstaller program can remove the configuration from each Web server when you uninstall WAS.
If you install the product again to add features, any Web server plug-ins you select get configured but the uninstaller program is already configured. The uninstaller program does not remove the configuration from each additional Web server whose plug-in you selected during the second installation.
Install a new instance of the WAS to create an uninstaller program that can remove the configuration from all Web servers whose plug-ins you select. Or you can remove the configuration manually.
- Restarting the server after a configuration change.
If you make any changes to the configuration, restart the server as noted in the messages section of the administrative console.
- Installing WAS V5 from a folder that begins with the word disk results in an error. Provide another name for the folder.
- Avoid license files with bad characters in certain languages. Use the graphical installation interface to avoid this problem.
- Do not use launchClient.sh on the WAS ND product. launchClient.sh only works on a WAS base and Enterprise nodes.
- Uninstall interim fixes for the IBM HTTP Server and Embedded Messaging features before installing fix pack updates to the features.
You can choose to have the update installer skip applying fix pack updates to IBM HTTP Server or embedded messaging if you do not require the updates. You can skip these updates and still apply updates to the rest of the product.
- Avoid the underscore (_) character in machine names.
Internet standards dictate that domain names conform to the host name requirements described in Internet Official Protocol Standards RFC 952 and RFC 1123. Domain names must contain only letters (upper or lower case) and digits. Domain names can also contain dash characters ( - ) as long as the dashes are not on the ends of the name. Underscore characters ( _ ) are not supported in the host name.
If you have installed WAS on a machine with an underscore character in the machine name, access the machine with its IP address or the localhost designator until you rename the machine.
- Provide adequate space for installation.
Linux on xSeries servers requires approximately 60 MB. AIX platforms require approximately 40 MB. HP-UX platforms require approximately 70 MB. Solaris Operating Environment platforms require approximately 40 MB.
- To use WebSphere MQ Version 5.3 as the JMS provider, install the IBM WAS product with only the embedded messaging client feature.
- Terminal services is not supported as a valid installation scenario when installing WAS and the embedded messaging feature.
- The IBM WebSphere Studio Application Developer Integration Edition and IBM WAS both include an option to install embedded messaging. The embedded messaging option in these two products is incompatible. To avoid this problem, do not install embedded messaging for both products on the same machine.
All Linux and UNIX-based platforms
- If you have emacs or other freeware installed on your Linux or UNIX-based system, verify that the system cp command is being used by executing...
which cpRemove the freeware directory from your PATH if the resulting directory output includes freeware. For example if the output shows...
/opt/freeware/bin/cp"...remove the directory from the PATH.
- To verify that the Java 2 SDK that WAS installs is working correctly cd to...
$WAS_HOME/java/bin...and execute...
./java -version.The command completes successfully with no errors when the Java 2 SDK is intact.
- You can ignore any messages in the log.txt file about not being able to create a desktop icon. For instance, ignore messages that are similar to the following messages when installing the base WAS product
Setup.product.install, com.installshield.product.actions.DesktopIcon, msg1, Unable to find platform specific desktop icon information. Could not create desktop icon "Start the Server" Setup.product.install, com.installshield.product.actions.DesktopIcon, msg1, Unable to find platform specific desktop icon information. Could not create desktop icon "Stop the Server" Setup.product.install, com.installshield.product.actions.DesktopIcon, msg1, Unable to find platform specific desktop icon information. Could not create desktop icon "Samples Gallery" Setup.product.install, com.installshield.product.actions.DesktopIcon, msg1, Unable to find platform specific desktop icon information. Could not create desktop icon "InfoCenter" Setup.product.install, com.installshield.product.actions.DesktopIcon, msg1, Unable to find platform specific desktop icon information. Could not create desktop icon "First Steps" Setup.product.install, com.installshield.product.actions.DesktopIcon, msg1, Unable to find platform specific desktop icon information. Could not create desktop icon "Administrative Console" Setup.product.install, com.installshield.product.actions.DesktopIcon, msg1, Unable to find platform specific desktop icon information. Could not create desktop icon "Tivoli Performance Viewer" Setup.product.install, com.installshield.product.actions.DesktopIcon, msg1, Unable to find platform specific desktop icon information. Could not create desktop icon "Log Analyzer"- Avoid setting WAS environment variables in the user or system profile.
WAS products use environment variables to control many dynamic settings, such as the path to the product in the $WAS_HOME variable, the path to the /logs directory in $LOG_ROOT, or the path to the IBM Development Kit in $JAVA_HOME. Avoid setting these variables in the system profile or in user profiles. It is possible that you might have a setting in a profile that overrides the proper setting.
If you reset variables that the products use to function, you can produce unpredictable results, or even failure. To view WAS environment variables, go to...
administrative console | Environment | Manage WebSphere Variables- Do not use spaces in the installation directory name. Spaces in directory names are not supported on Linux and UNIX.
- Move all core dump files from the var/sadm/pkg directory.
The InstallShield for MultiPlatforms (ISMP) installation wizard iterates through all the directories in /var/sadm/pkg, assuming that each entry it finds is a directory. It then tries to open the pkginfo file underneath the directory. The ISMP wizard fails when it cannot find an entry under the core file. Remove the core file from the directory to avoid the problem.
- To run Samples that use JMS APIs, manually start the JMS server (jmsserver) before running the samples on UNIX platforms.
administrative console | Servers | Application Servers | server | Server Components | JMS ServersThis step is unneccessary if you are using WebSphere MQ.
If the tmp disk does not have a large enough allocation, this message appears...
Error writing file = There may not be enough temporary disk space. Try using -is:tempdir to use a temporary directory on a partition with more disk space.Use the -is:tempdir installation option to specify a different temporary disk. For example...
./install -is:tempdir /swap- Adding additional name space bindings with a new console user.
On UNIX platforms, when you click Name Space Bindings, you receive an Error 500 message on the browser. When you click Show Details, a NullPointerException displays. This only occurs with the administrative ID that was configured as the server ID.
To solve the problem, add a different user to System Management > Console Users and login with that user to add additional name space bindings.
- The embedded messaging feature installs to fixed locations that you cannot override. The default locations are...
Platform Directories Linux /var/mqm
/var/wemps
/opt/mqm
/opt/wempsAIX /usr/opt/mqm
/usr/opt/wemps
/var/mqmSolaris /var/mqm
/var/wemps
/usr- Creating and mounting the required journalized file system, /var/mqm, before installing WAS
On UNIX platforms, use a partition strategy with a separate volume for the messaging data. This means that other system activity is not affected if a large amount of messaging work builds up in /var/mqm.
The /var file system is used to store all the security logging information for the system, and is used to store the temporary files for email and printing. Therefore, it is critical that you maintain free space in /var for these operations. If you do not create a separate file system for messaging data, and /var fills up, all security logging will be stopped on the system until some free space is available in /var. Also, email and printing will no longer be possible until some free space is available in /var.
- Defining the prerequisite Linux or UNIX operating system groups, mqm and mqbrkrs
Before you install the embedded messaging component on UNIX or Linux platforms, define the operating system groups mqm and mqbrkrs, and the user IDs needed for WebSphere embedded messaging.
- Restricting access to the /var/mqm/errors directory and messaging logging files
After installing WebSphere embedded messaging, restrict access to the /var/mqm directories and log files needed for WebSphere embedded messaging, such that only the user ID mqm or members of the mqm user group have write access. Install WebSphere embedded messaging as the JMS provider and Securing messaging directories and log files.
AIX platforms
- Install xlC.rte 6.0 run-time code, which is a prerequisite of GSKit7 on AIX 5.1 or AIX 5.2.
You must install the xlC.rte 6.0 run-time code, which is a prerequisite of GSKit7. Download the run-time code as a fix from the AIX Support site .
- Install the prerequisite Java130.rte.lib Version 1.3.0 on AIX Version 4.3.3 or AIX Version 5.
On AIX Version 4.3.3 (not supported by WAS V5.1) and AIX Version 5, install Java130.rte.lib Version 1.3.0 to verify that the embedded messaging feature installs correctly. To download a copy of Java 1.3.0...
- Go to www.ibm.com/java: Java Technology Zone.
- Go to the bottom of the page: Most popular links.
- Click IBM Developer Kit for AIX.
- Click Download.
- Click Java 1.3.0 from the Java Version column in the table.
- (Optional) Register for a user ID and password.
To correct an existing problem:
- Uninstall the following components, if present...
- WAS
- WebSphere MQ (MQSeries)
- WebSphere MQ (MQSeries) classes for Java and WebSphere MQ (MQSeries) for Java Message Service
- IBM HTTP Server
- WebSphere Embedded Messaging Publishing and Subscribe Edition
- Edit the vpd.properties file and remove any entry related to WAS. WAS-related entries begin with:
- WSB for the base WAS, V5.0.x product
- WSBAA51 for the base WAS, V5.1 product
- WSC for the WAS Application Clients
- WSE for the Enterprise product, V5.0.x
- WSN for the ND V5.0.x
- WSNAA51 for the ND V5.1
- WSM for the WebSphere MQ product
- Reinstall the WAS product.
- Correcting directory permissions on AIX platforms before reinstalling WAS with the embedded messaging feature
After manually uninstalling the WAS product and before reinstalling the product with the embedded messaging component, look for the following directory: /var/mqm/log/WAS_system_name_server. If this directory exists, confirm that the directory is empty and that the user, mqm, can open and write to it. If it is not accessible, the embedded messaging installation program throws the following error
AMQ7064: Log path not valid or inaccessible is written in the createMQ.system_name_server.log file.If this error occurs, the remaining embedded messaging component installation fails.
- Avoid corrupt display characters when installing V5.1 on AIX 5.2 in a Simplified Chinese locale.
When using the installation wizard to install V5.1 in one of the Simplified Chinese locales, set the LANG variable to "EUC-CN" to avoid the display of corrupt font characters...
- Click Options > Language from the logon console and select the EUC_CN Simplified Chinese locale.
The logon console changes to Simplified Chinese.
- Log in as root.
- Run the locale command to verify that you have set the EUC_CN locale
bash-2.01# locale LANG=EUC_CN LC_COLLATE="EUC_CN" LC_CTYPE="EUC_CN" LC_MONETARY="EUC_CN" LC_NUMERIC="EUC_CN" LC_TIME="EUC_CN" LC_MESSAGES="EUC_CN" LC_ALL=- Set the LANG variable to "EUC_CN if the setting is not correct
export LANG=EUC_CNYou can now install without corrupt characters.
- Avoid a core dump when running WAS with DB2 V7.2 FP8 client in AIX 5.2.
A core dump might occur when you are running WAS with DB2 V7.2 FP8 client in AIX 5.2 having all of the following configurations...
- You installed WAS in 64-bit AIX 5.2.
- You installed 64-bit DB2 V7.2 FP8.
- You created a 32-bit client instance to connect to the DB2 server.
- You installed applications which use DB2 data source in WAS.
A java core dumped error displays when you start the WAS. This is due to a DB2 problem. A defect has been opened to DB2.
To solve this problem, rename the libdb2lai.a file on your DB2 client machine as follows...
- Change to the /usr/lpp/db2_07_01/lib directory.
- Rename the file libdb2lai.a to libdb2lai.a.orig.
- Avoid a problem when installing or uninstalling.
While installing or uninstalling, a core dump causes the desktop to disappear, leaving only the login prompt. Run the DBX utility on the resulting core file. If the problem is this one, you see this output
dbx /usr/bin/X11/X core Type 'help' for help. reading symbolic information ...warning: no source compiled with -g [using memory image in core] Segmentation fault in . at 0x10040aac 0x10040aac (???) 931d0000 stw r24,0x0(r29) (dbx) where SetFontPathElements(??, ??, ??, ??) at 0x10040aac SetFontPath(??, ??, ??, ??) at 0x10042e58 SetFontPath(??, ??, ??, ??) at 0x10042e80 ProcSetFontPath(??) at 0x10015ce4 DeleteClientFromAnySelections(??) at 0x1001e8a8To solve this problem, apply the AIX PTF fix for PMR:82869,004.
- Avoid a null pointer exception during the interactive installation of the IBM HTTP Server product on AIX platforms.
When installing IBM HTTP Server as a stand-alone GUI install on the AIX platform, in certain cases you might receive a null pointer Java error on the installation panels, when the installer begins to copy files to your machine. This is caused by an unstable AIX ODM registry.
To work around this problem:
- Exit the installer.
- Issue the command to see if there are remaining IBM HTTP Server registry entries that should not be there
lslpp -l|grep IHS- If there are remaining IBM HTTP Server registry entries, do a silent install of IBM HTTP Server by running
java -jar setup.jar -silent -P ihs.installLocation=the desired install location
Note that To remove the installation silently, use the -silent parameter on the uninstall command. For example, run this command from the IBM HTTP Server $WAS_HOME
java -jar _uninst/uninstall.jar -silent- Ignoring DBCS messages or installing necessary patches when you do not require DBCS support.
While installing any WAS product, you might see the following messages on AIX 5.1 and AIX 4.3.3 (not supported by WAS V5.1) until you install the missing filesets
Operating system patches of particular concern... fileset X11.fnt.ucs.ttf_KR was not found on the system. v5.1.0.0 - Font required for Korean character display fileset X11.fnt.ucs.ttf_TW was not found on the system. v5.1.0.0 - Font required for Taiwanese character display fileset X11.fnt.ucs.ttf_CN was not found on the system. v5.1.0.0 - Font required for Chinese character display
- Using UNIX line-end characters (0x0D0A) to terminate each line of the options response file for silent installation.
During a silent installation on AIX machines, the response file passed to the installer program must not contain ASCII line-end characters (0x0D0A). The response file must contain UNIX line-end characters only. When the options response file contains ASCII line-end characters, the install command is unsuccessful and does not log or display an error. To verify the cause of failure, use the Java argument -Dis.debug=1 on the install command. The debug information describes a service exception about invalid characters in the options response file.
- Navigating if the scroll bar disappears on the installation feature panel.
If the scroll bar disappears, use the up and down arrow keys to navigate the features in the Feature panel. Use the tab key to move the focus to the navigation. You can also use the mouse.
- Ignoring the following error messages that appear in the log.txt installation log.
Ignore
WASBase, com.ibm.wizard.platform.aix.AixProductServiceImpl, wrn, - WARNING... Got invalid size of 0 for file... /usr/WebSphere/AppServer/config/cells/BaseApplicationServerCell/nodes/DefaultNode/spi.policy... WASBase, com.ibm.wizard.platform.aix.AixRegistryServiceImpl, wrn, AixRegistryServiceImpl... Error attempting to modify AIX VPD.
- Avoid a potential port conflict between the administrative console and the WebSM system management console on AIX 5.1, with maintenance level 2.
The AIX WebSM system management server listens on port 9090 by default. If you suspect you have a port conflict, verify it by shutting down WAS. Then issue this command
netstat -an |grep 9090If you get a match, another process is already listening on port 9090. If you want the WebSM server and WAS to coexist, change the WAS administrative console port when installing WAS, or after installation. Although not recommended, you can also disable the WebSM server. To disable the WebSM server, issue this command
The command permanently disables WebSM server startup./usr/websm/bin/wsmserver -disable
- Canceling the installation and updating your operating system before cycling the installation, if you install on an AIX machine and receive a message that a file set is missing, such as file set X11.fnt.ucs.ttf.
Update your operating system if it is missing required filesets. If you receive a message that a fileset is missing, such as file set X11.fnt.ucs.ttf, cancel the installation, update the operating system, and restart the installation.
- Set up the display environment for a real root login on AIX systems.
In a normal root login, issue the command su. For a real root login, issue the command su -.
Display settings for a normal root login are automatic. For a real root login, you must set your display environment properly to successfully view the GUI installation wizard. Otherwise, you see a message about Preparing Java(tm) Virtual Machine..., and seven rows of dots, but no installation GUI and no further messages. Refer to the documentation for AIX machines to determine proper display settings.
- Avoid a DSAPI filter-loading error when the Lotus Domino Server starts.
On a UNIX-based operating system, if the Lotus Domino Web server starts using a non-root user, you are likely to generate a DSAPI filter-loading error
Error loading DSAPI filter. Filter not loaded: /usr/WebSphere/AppServer/bin/libdomino5_http.aManually change the WAS bin directory permissions from 750 to 755 to run Lotus Domino Server as a non-root user and not generate the error. This change does, however, pose a security risk.
You must also change permissions on the WAS logs directory to 777 to let Lotus Domino Server write to the log.
If the Lotus Domino Server is started as root, the problem does not occur.
HP-UX platforms
- Uninstall a V5.1 instance on HP-UX platforms before reinstalling the instance.
If you uninstall a V5.1 instance but leave the embedded messaging feature installed because of other WAS instances on the machine, rename the /opt/WebSphere/AppServer51 directory to cause HP-UX to be unable to locate the earlier installation that is still registered. Reinstall into a directory other than the /opt/WebSphere/AppServer51 directory or the renamed directory. Use a new directory name for reinstalling the V5.1 instance.
For example, assume that V5.0.2 exists in /opt/WebSphere/AppServer502 with the embedded messaging server and client feature. You then install V5.1 to the following directory, /opt/WebSphere/AppServer51, but later you uninstall the product with the uninstall command and select to leave the embedded messaging feature installed. And now you decide to reinstall V5.1.
Rename /opt/WebSphere/AppServer51 to /opt/WebSphere/AppServer51_bk before reinstalling V5.1 into the /opt/WebSphere/AppServer51New directory.
This step is required before you can reinstall the product onto the same system. If you want to correct the registry enbtries and uninstall all WAS products on the machine, follow the procedure in Manually uninstalling on HP-UX platforms instead.
- Mounting the product CD-ROM
The mount command can fail on any CD-ROM that contains files with long file names. There are two ways to get around the problem and mount the product CD-ROM for WebSphere Application Server...
- Editing the pfs.fstab file
- Using pfs_mount to read the Rock Ridge system type
Editing the pfs.fstab file
. To avoid the mount problem, perform the following steps:
- Log in as a user with root authority.
- In the /etc directory, add the following line to the pfs_fstab file
The mount_point variable represents the mount point of the CD-ROM./dev/dsk/c0t2d0 mount_point pfs-rrip ro,hard- Start the pfs daemon by entering the following commands (if they are not already running)
/usr/sbin/pfs_mountd & /usr/sbin/pfsd 4 &- 4. Insert the CD-ROM in the drive and enter the following commands
mkdir /cdrom /usr/sbin/pfs_mount /cdrom where /cdrom represents the mount point of the CD-ROM.
Using pfs_mount to read the Rock Ridge system type
- The standard HP-UX mount procedure does not read the Rock Ridge file system type correctly. you need to mount the CD using pfs_mount. Start pfs daemons by entering these commands
pfs_mountd& pfsd&- Mount the CD as follows, where device represents the raw device (for example, /dev/rdsk/c0t2d0), and mntpnt represents the mount point (for example, /cdrom)
pfs_mount -x unix device /mntpnt- Add the following line to /etc/pfs_exports, where remotemnt represents the mount point, and server represents the name of the HP-UX system where you want WAS installed
/remotemnt -access=server- Enter the following command
pfs_exportfs -a- On the local HP-UX system, execute the remaining steps in this procedure:
- Log in as root.
- Start pfs daemons by entering these commands
pfs_mountd& pfsd&- Enter the following command, where remote_server represents your remote system, remotemnt represents the CD-ROM drive on the remote HP-UX system, and localmnt represents the mount point on your local HP-UX system
pfs_mount -x unix remote_server:/remotemnt /localmnt- Change directory to the package location, where localmnt represents the directory mount point
cd /localmnt/tas
- Configuring HP-UX kernel settings before installing.
To set kernel parameters, perform the following steps:
- Log into the host machine with superuser (root) privileges.
- Determine the physical memory, which know to avoid setting certain kernel parameters above the physical capacity:
- Start the HP-UX System Administration Manager (SAM) utility.
- Select Performance Monitors > System Properties > Memory.
- Note the value for Physical Memory and click OK.
- Exit from the SAM utility.
- Set the maxfiles and maxfiles_lim parameters to at least 4096. (The following table recommends 8000 and 8196, respectively. You must first edit the /usr/conf/master.d/core-hpux file, to allow the SAM utility to set values greater than 2048:
- Open the file /usr/conf/master.d/core-hpux in a text editor.
- Change the line," *range maxfiles<=2048" to "*range maxfiles<=60000"
- Change the line, "*range maxfiles_lim<=2048" to "*range maxfiles_lim<=60000"
- Save and close the file. Old values might be stored in the /var/sam/boot.config file. Force the SAM utility to create a new boot.config file...
- Move the existing version of the /var/sam/boot.config file to another location, such as the /tmp directory.
- Start the SAM utility.
- Select Kernel Configuration > Configurable Parameters. When the Kernel Configuration window opens, a new boot.config file exists.
Alternatively, rebuild the boot.config file with this command
# /usr/sam/lbin/getkinfo -b
- Set new kernel parameter values:
- Start the SAM utility.
- Select Kernel Configuration > Configurable Parameters.
- For each of the parameters in the following table, perform this procedure...
- Highlight the parameter to change.
- Select Actions > Modify Configurable Parameter.
- Type the new value in the Formula/Value field.
- Click OK.
Some kernel values for WAS with the embedded messaging feature are higher than those shown in the following table.
Some kernel values for WAS IBM DB2 on the same machine, are higher than those shown in the following table.
- Recommended HP-UX kernel configuration parameters for DB2 Version 8
- Recommended HP-UX kernel configuration parameters for DB2 V7
Typical kernel settings
Parameter Value dbc_max_pct 25 maxdsiz 805306358 maxdsiz 2048000000 (when the base and ND products are on one machine) maxfiles_lim 8196 (Change this one before maxfiles.) maxfiles 8000 maxssiz 8388608 maxswapchunks 8192 max_thread_proc 3000 maxuprc 512 maxusers 512 msgmap 2048 msgmax 65535 msgmax 131070 (when the base and ND products are on one machine) msgmnb 65535 msgmnb 131070 (when the base and ND products are on one machine) msgmni 50 msgseg 32767 msgssz 32 msgtql 2046 nfile 58145 nflocks 3000 ninode 60000 nkthread 7219 nproc 4116 npty 2024 nstrpty 1024 nstrtel 60 semmap 514 semmni 2048 semmns 2048 semmnu 1024 semume 200 shmmax 2147483647 shmmni 1024 shmseg 1024 STRMSGSZ 65535
- Select Actions > Process New Kernel.
- Click Yes on the information window to confirm your decision to restart the machine.
Follow on-screen instructions to restart your machine and to enable the new settings.
- If you plan to redirect displays to non-HP machines, do the following before running the WAS installation wizard:
- Issue the following command to obtain information on all public locales accessible to your application
# locale -a- Choose a value for your system from the output that is displayed and set the LANG environment variable to this value. Here is an example command that sets the value of LANG to en_US.iso88591
# export LANG=en_US.iso8859
- Migrating or coexisting with an existing WebSphere Application Server node that HP-UX does not recognize.
In some cases, the InstallShield for MultiPlatforms (ISMP) program does not detect a previously installed version of WAS because of a failure to read the registry keys on HP-UX.
For example, use this command
./install -W previousVersionDetectedBean.previousVersionDetected="true"You can also force the display of the coexistence panel to change conflicting port number assignments. For example, force the coexistence panel to display using this command
./install -W coexistenceOptionsBean.showCoexistence="true"On either panel, identify the location of the existing product instance that is not being recognized.
- Avoid using Netscape 4.79 on HP-UX 11 in Japanese, to avoid problems in viewing the administrative console.
It is possible that you might be unable to view the menu or areas of the console that scroll. Only certain portions of the administrative console are visible. It is not possible to scale the administrative console to view it all. It is difficult to see what is displayed.
The workaround for the problem uses another supported browser, or another browser and operating system platform. You can also open the menu frame in a separate window, to avoid the problem.
- Configuring the converter.properties file to use EUC-JP (Japanese) encoding on HP-UX.
The $WAS_HOME/java/jre/lib/i18n.jar file on HP-UX platforms does not have the coverters for Cp33722C, but does have the converter for Cp33722. To use EUC-JP encoding on HP-UX platforms, change the EUC-JP=Cp33722C entry in the converter.properties file to EUC-JP=Cp33722 or EUC-JP=EUC_JP.
Linux platforms
- Preparing Linux for S/390 for better performance
Linux for S/390 (which refers to the Linux distributions available from Linux distributors that run on IBM eServer zSeries and S/390 systems in 31-bit mode) provides a configuration technique that affects the installation and run time performance of WAS. The technique configures the environment where the Linux image runs to use swap space efficiently. Some performance guidelines recommend running Linux with the OS/390 swap or the z/OS swap turned off because of OS/390 and z/OS virtualization of hardware. Virtualization can produce double-swapping situations where either OS/390 or Z/OS swaps storage and Linux also swaps storage, which degrades performance.
Excessive swapping affects the performance of WAS, which might require 200 MB when all Sample applications are loaded. On a system without swap space configured for use, and with a relatively small amount of memory (such as 256 MB), WAS might encounter problems obtaining enough free memory to work properly, particularly when competing for resources against other applications and products that run in the Linux environment.
The solution is to disable swapping in Linux but enable swapping in the OS/390 or the z/OS logical partition (LPAR) or sysplex. You can increase performance by letting OS/390 or z/OS handle the swapping. When you do this, double or even triple the specification for physical memory for the Linux image. For example, if the physical memory allocation as seen by the Linux image is 256 MB, disable swap in Linux, enable swap in either OS/390 or z/OS, and increase the physical memory specification as seen by Linux to 512 MB or 768 MB. This handles any large spikes in application memory usage that might occur.
- Ignoring YAST2 dependency conflicts for embedded messaging packages
There is a known problem in the YAST2 utility on SuSE Linux Enterprise Server 8.0. YAST2 reports dependency conflicts erroneously. If you use the utility, you can ignore the "Dependency Conflict" panel that reports conflicting packages for the embedded messaging feature. Two examples from such a report might appear like this
MQSeriesClient MQSeriesClient-U486878 MQSeriesJava MQSeriesJava-U486878Many packages, such as the embedded messaging packages in the Application Server products, specify a conflict to control incompatible package levels. In this case, the conflict should identify a WebSphere MQ (MQSeries)-related package level that is less than 5.3.0. YAST2 seems to be misinterpreting the specification and flagging a conflict for WebSphere MQ packages than are less than or equal to 5.3.0.
- Preparing the SuSE Linux Enterprise Server 8.0 - Powered by UnitedLinux 1.0 operating platform for WAS installation.
- Install SP2 for the UnitedLinux 1.0 operating platform to let you use the WAS LaunchPad.
It is your responsibility to install this service pack. There is no definitive way for the prereqChecker function of the installer to detect service pack versions on UnitedLinux. Kernel uname/versions between 8.0 and 8.0.2 are identical. There is no signature RPM to denote a service pack install.
- Use the IBM Developer Kit that WAS provides to support the Java 2 SDK on the SuSE SLES 8.0 operating system to avoid potential problems when uninstalling an interim fix or a fix pack. To use the IBM Developer Kit, remove the java2-jre-1.3.1-524 and java2-1.3.1-524 RPMs from the machine before installing WAS.
- Configuring Apache 1.3 to run on SuSE Linux Enterprise Server 8.0.
Using the following directive in an otherwise unmodified httpd.conf file can result in an error
LoadModule app_server_http_module /opt/WebSphere/AppServer/bin/mod_app_server_http.soThe error is indicated by a message similar to the following example
[warn] Loaded DSO /opt/WebSphere/AppServer/bin/mod_app_server_http.so uses plain Apache 1.3 API, this module might crash under EAPI! (please recompile it with -DEAPI) [notice] Apache/1.3.26 (Linux/SuSE) mod_python/2.7.8 Python/2.2.1 PHP/4.2.2 mod_perl/1.27 configured -- resuming normal operations [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec) [notice] Accept mutex: sysvsem (Default: sysvsem) [notice] child pid 3383 exit signal Segmentation fault (11)Comment the PHP directives in the httpd.conf file. After commenting the directives, the preceding LoadModule directive works. Comment these PHP directives
Include /etc/httpd/suse_loadmodule.conf Include /etc httpd/suse_addmodule.conf Include /etc/httpd/suse_include.confDo not attempt to use the EAPI module with the version of Apache 1.3 shipped with SuSE Linux Enterprise Server 8.0. There is a an error in this version of Apache that prevents its use. Obtain an updated version of Apache 1.3 from SuSE, or download an updated version of Apache 1.3 from another source to use the EAPI plug-in module. Comment the PHP directives when using the EAPI plug-in module also.
- Avoid the certificate revocation list (CRL) function, which is not supported for IBM HTTP Server on Linux for S/390.
Do not use the certificate revocation list (CRL) function on Linux for S/390 at this time.
- Using the ikeycmd command line interface for ikeyman from IBM HTTP Server on Linux for S/390.
You could see a Java core dump after executing an ikeyman command function, such as creating the stash file. This has occurred on both RedHat and SuSE releases. It is the result of a conflict in library routines caused by the default loading sequence.
To work around this problem, set the LD_PRELOAD environment variable before running the command
This loads the library first when the application is started. Setting this environment variable is also necessary to allow SSL to work correctly on Linux for S/390.LD_PRELOAD=/usr/lib/libstdc++-libc6.1-2.so.3- Migrating from WAS, Version 3.5 on Linux platforms.
The error can occur when the migration tools cannot find the JAVA_HOME.. The WASPreUpgrade command reports the error while backing up the WAS V3.5 environment. The error appears in the WASPreUpgrade log as...
MIGR0257E:Environment variable JAVA_HOME was not set is generatedTo work around the problem...
- Create a directory link to one of the following directories...
- $WAS_HOME/IBMJavaLink
- /opt/IBMJava2-122
- $WAS_HOME/IBMJava2-122
WAS_HOME is the WAS 3.5 WAS_HOME.
- Run the WASPreUpgrade command again, followed by the WASPostUpgrade command, to migrate the environment correctly to WAS, Version 5.
- Avoid utility hangs.
The default Red Hat installation creates an association between the host name of the machine and the loopback address, 127.0.0.1. In addition, the /etc/nsswitch.conf file is set up to use /etc/hosts before trying to look up the server using a name server (DNS). This loopback processing can hang utilities that start and stop a server, such as startServer.sh and others, even though the server might successfully start or stop.
Ensure that the host name is defined properly. The default configuration has localhost defined in the /etc/hosts file. The default /etc/nsswitch.conf looks only at the host file and not the DNS server.
To correct this problem, remove the 127.0.0.1 mapping to localhost in the /etc/hosts file or edit the name service configuration file (/etc/nsswitch.conf) to resolve the proper host name by using the name server.
For example, remove the 127.0.0.1 mapping from the /etc/hosts file, which might look like this example:
# IP Address name of machine n.n.n.n hostname.domain.com hostname 127.0.0.1 localhostOtherwise, change the etc/nsswitch.conf file to search DNS before searching the hosts file.
For example, hosts : dns files
- Accessing First Steps items on Linux for S/390 systems.
When you select the following features from the First Steps GUI, the Web browser window does not open...
- WebSphere InfoCenter
- Register the Product
- Samples Gallery
- Administrative Console
To access these features...
- Open a Web browser window on another machine.
- Type the browser URL that displays in the First Steps status window into the address field of the Web browser.
- Click Enter to open the page in the Web browser.
Solaris Operating Environment
- Uninstall a V5.1 instance on a Solaris platform before reinstalling the instance.
- Avoid problems starting appservers in zh_TW.EUC locale on Solaris
If you intend using the WebSphere embedded JMS provider or WebSphere MQ as the JMS provider on Solaris, do not set the LANG and LC_ALL variables to zh_TW.EUC (Traditional Chinese locale) to avoid problems when starting appservers. Set the LANG and LC_ALL variables to zh_TW instead of zh_TW.EUC.
Uninstalling applications using wsadmin.sh
- Invoke the AdminApp object commands interactively, in a script, or use the wsadmin -c command from an operating system command prompt.
- Issue the following command...
Using Jacl
$AdminApp uninstall application1Using Jython
where...AdminApp.uninstall('application1')
$ is a Jacl operator for substituting a variable name with its value AdminApp is an object supporting application objects management uninstall is an AdminApp command application1 is the name of the application to uninstall
Note that Specify the name of the application you want to uninstall, not the name of the Enterprise ARchive (EAR) file.
- Save the configuration changes with the following command...
Using Jacl
$AdminConfig saveUsing Jython
Use the reset command of the AdminConfig object to undo changes that you made to your workspace since your last save.AdminConfig.save()
Uninstalling an application removes it from the WebSphere Application Server configuration and from all the servers that the application was installed on. The application binaries (EAR file contents) are deleted from the installation directory. This occurs when the configuration is saved for single server WebSphere Application Server editions or when the configuration changes are synchronized from deployment manager to the individual nodes for network deployment configurations.