Last updated 6/28/2001
This document contains the Release Notes for the WebSphere Application Server Advanced Single Server Edition Version 4.0.
These notes will be updated periodically. For the latest version of these Release Notes, check the IBM WebSphere Application Server InfoCenter page at http://www.ibm.com/software/webservers/appserv/infocenter.html.
Due to manufacturing and printing schedules, the license agreement for this product may contain the following restriction:
You may not use the Program on machines with more than one central processing unit. To use the Program on machines with more than one processor, you must acquire a separate Proof of Entitlement for a WebSphere Application Server software product which authorizes such use.
IBM intended for this paragraph to read as follows instead:
You must acquire a Proof of Entitlement for each central processing unit on such machine.
Please contact your IBM sales representative for a corrected copy of the license agreement for the Program. IBM also intends to make an updated copy of the license agreement available in a future fixpack for the product. You also may check for a corrected copy of the license agreement on IBM’s web site at http://www-3.ibm.com/software/sla/sladb.nsf.
The following Web site lists the prerequisite products needed for IBM WebSphere Application Server:
http://www.ibm.com/software/webservers/appserv/doc/latest/prereq.html
You can find the complete installation instructions for IBM WebSphere Advanced Single Server Edition Version 4.0 at http://www.ibm.com/software/webservers/appserv/infocenter.html under "Installation."
The Release Notes contain information about known defects and the workarounds. This document also includes some supplemental information for topics covered in the Application Server documentation.
Installation and Configuration
Migration
Starting Application Server Components
Administrative Console (GUI) and Command Line Tools
Web servers
Data access
Enterprise Beans
Java programming
Servlets
Security
Object Level Trace (OLT) and IBM Distributed Debugging
National Language Version Issues/Limitations
Samples
InfoCenter
When you install WebSphere Application Server 4.0 on Linux (Intel), the packages are not registered with the RPM database. As a result, administrators cannot use native tools to uninstall WebSphere Application Server 4.0. Instead, follow the instructions in the article "Uninstalling WebSphere Application Server" to remove WebSphere Application Server from your machine. Customers who want to migrate an existing WebSphere Application Server installation to version 4.0 should refer to the Migration overview for instructions.
When running a make file to install Apache HTTP Server 1.3.19 on SuSE 7.1, kernel 2.4, an error is thrown because the ndbm.h header file is missing from the Apache HTTP Server 1.3.19 distribution.
To install Apache 1.3.19 on SuSE 7.1, kernel 2.4, complete steps such as the following to ensure all needed header files are obtained:
apache_1.3.19.tar.Z 28-Feb-2001 06:11 2.9M 1.3.19 compressed source apache_1.3.19.tar.gz 28-Feb-2001 06:11 1.8M 1.3.19 gzipped source apache_1.3.19.zip 28-Feb-2001 10:34 2.4M 1.3.19 pkzipped source
Unpack the packaged source file that you downloaded using the appropriate utility (uncompress, gzip -d or unzip) into a directory of your choice.
rpm -qa | grep gdbm
to peek at the package. Note that there is normally a second package named
gdbm-1.8.0-25 also on the system when used with the above command; the package
gdbm-1.8.0-25 is not the right package.rpm -ivh gdbm-devel
. You can verify the installation
by entering the command rpm -qa | grep gdbm
. You should see:
gdbm-devel-1.8.0-25.configure --prefix=/usr/local/apache \ --enable-module=rewrite --enable-shared=rewrite \ --enable-module=proxy --enable-shared=proxy
make
to build the Apache server. Then, install
the Apache server by issuing the command make install
from the
same directory.For more information on configuring, building and installing Apache HTTP Server, refer to the INSTALL file that comes with the Apache HTTP Server distribution.
The WebSphere Application Server installation program does not automatically upgrade the IBM HTTP Server product from an earlier version to the appropriate level that is needed for WebSphere 4.0. If you would like to preserve your IBM HTTP Server configuration information, do the following:
Updates to the WebSphere 4.0 httpd.conf file are done differently than in previous releases. In version 4.0, the WebSphere installion program updated the httpd.conf file with the new HTTP Transport plug-in directives. See InfoCenter section 3.2.4 for more information on WebSphere plugin changes for 4.0.
If you install WebSphere Application Server Advanced Single Server Edition with SuSe Version 7.1 and Netscape Version 4.7.6, you must change the following Netscape configuration values in order for the topology tree on the left hand side to display properly.
http://your_machine_name:9090/admin
.When using the default response file on the HP-UX, Linux, and Solaris platforms, WebSphere Application Server is installed into the /usr/WebSphere/AppServer directory, instead of into the /opt/WebSphere/AppServer directory, which is typically the default location. The default response file on the AIX platform also installs WebSphere Application Server into the /usr/WebSphere/AppServer directory, though this is typically the default location for AIX. To install into a directory other than /usr/WebSphere/AppServer, modify the default response file (install.script) to reflect the new destination directory.
If you used WebSphere Application Server Version 3.5 on Windows 2000 Server and then, while installing the Advanced Single Server Edition Version 4.0 using the Version 4.0 installation program, you select Backup and Uninstall, some of the Version 3.5 applications and other files or work may not be backed up.
If you attempt to uninstall the WebSphere Application Server on a Linux machine as a non-root user, the following error message displays:
Error trying to calculate for /opt/WebSphere/AppServer/properties/sas.server.props Error trying to calculate for /opt/WebSphere/AppServer/properties/sas.client.props
To avoid the errors, log in with the root
user ID and try the
uninstalling the product again.
When running Apache HTTP Server on Redhat 7.1 Linux systems with the plugin configured for SSL, before starting Apache you must set the LD_PRELOAD environment variable to the following value:
/usr/lib/libstdc++-libc6.1-1.so.2
For example, if you are using the korn shell, you enter the following before starting Apache HTTP Server:
export LD_PRELOAD=/usr/lib/libstdc++-libc6.1-1.so.2
The RR_MOVED directory may appear on the WebSphere product CD because of the limitation of eight directory levels on a CD. If the product documentation does not mention this directory, follow the documentation steps as though this directory does not exist.
The WebSphere Application Server installation program prompts you to specify one obj.conf file if you select the iPlanet plugin. But, if you use more than one iPlanet server instance (more than one port), you must do some additional work to use more than one instance of iPlanet with WebSphere Application Server because each iPlanet instance uses a separate obj.conf file. When installing WebSphere Application Server, specify the obj.conf file for one of the iPlanet instances. Then, after installation, edit the obj.conf file for each of the other iPlanet instances so they also can serve WebSphere Application Server resources.
If you specify to use another JDK, you must modify the server-cfg.xml, admin-server-cfg.xml, and template-server-cfg.xml files. The path for the PathMap entry, JAVA_HOME, must be changed to point to where you installed your JDK.
For example, by default the configurations on Windows NT have the following line (shown here on two lines to improve readability):
<entries xmi:id="PathMapEntry_6" symbolicName="JAVA_HOME" path="${WAS_ROOT}/java" description="The filesystem path to the product java home directory"/>
If your JDK is installed in C:\JDK13, then the line for the PathMap entry should look like the following (shown here on two lines):
<entries xmi:id="PathMapEntry_6" symbolicName="JAVA_HOME" path="C:\JDK13" description="The filesystem path to the product java home directory"/>
If the kernel parameters maxfiles and maxfiles_lim are not set to the values specified in the WebSphere installation guides for HP-UX, you may see java.lang.OutOfMemory errors that prevent the installation from completing.
The setup log file after silent installation is wssetup.log. The log file can show up in a logs subdirectory off the root directory or off a product directory.
The WebSphere Application Server Advanced Single Server Edition installation information for Linux is located on the product Web site at http://www.ibm.com/software/webservers/appserv/infocenter.html.
If you select the Lotus Domino plug-in during WebSphere Application Server installation, the new DSAPI filter may not work properly on AIX and WIN platforms. This is because the WebSphere installation did not add the correct DSAPI filter file name.
The DSAPI filter files, which are located under the WAS_HOME/bin directory, include--
Use the following steps to enable the new DSAPI filter. (These steps assume AIX is the example operating system.)
/usr/WebSphere/AppServer/bin/libdomino5_http.a
On HP-UX, the OLT/Debugger installation code in the WebSphere 4.0 installion program fails, requiring the OLT/Debugger installation application to be run manually after WebSphere is installed.
The install.class in the olt directory is the installation application for the OLT/Debugger. If you execute this class with the Java binary included with WebSphere 4.0, the installation application should launch, showing you the installation graphical interface.
The SSL enabled plug-in is not supported on Solaris with iPlanet Web Server. Nor is the SSL enabled plug-in supported on HP-UX with Apache HTTP Server or with iPlanet Web Server Version 4.1 SP7.
On Solaris 2.8 systems running the Domino Web server with the plug-in configured for SSL, the server will have an exception at startup. This results from some incompatibilities with Domino and C++ code. The fix for this is to disable the SSL transports in the plugin-cfg.xml file.
This problem has not been seen on Solaris 2.7 systems.
The Log Analyzer gets installed as part of the WebSphere Application Server Advanced Single Server Edition Version 4.0 installation and its executable is in the main_WebSphere_directory/bin directory by the name waslogbr.sh (on UNIX) or waslogbr.bat (on Windows).
You can view the trace output in three different formats: basic, advanced, or log analyzer. By default, the trace format is basic. You can change it to advanced or log analyzer format.
To see the trace output in advanced format, open an editor on the file
main_WebSphere_directory/properties/logging.properties.
Change the line com.ibm.ws.ras.TraceFormat=basic
to
com.ibm.ws.ras.TraceFormat=advanced
and you will get detailed
trace output on stdout.
To see the trace output in log analyzer format, open an editor on the file
main_WebSphere_directory/properties/logging.properties and
change the line com.ibm.ws.ras.TraceFormat=basic
to
com.ibm.ws.ras.TraceFormat=loganalyzer
. After you set this,
the trace output is displayed in the Log Analyzer viewable format on stdout.
You can dump a ring buffer file and then view it in Log Analyzer panes. If the you set the option of enabling trace on the administrative console and direct it to a file, and you have set the trace format as Log Analyzer, the output on stdout is in basic format but the file which gets written is in log analyzer format.
When migrating from Version 3.0.2.x to Version 4.0, the WASPreUpgrade program is run. The program returns java.io.FileNotFoundException messages. Ignore those exception messages.
After you uninstall WebSphere Application Server, if you cannot restart the iPlanet Web server or the Apache HTTP server, the problem may be that the uninstall program did not remove the plugin information from the obj.conf file.
To work around this problem for iPlanet, remove the following lines from the obj.conf file:
Init fn="load-modules" funcs="as_init,as_handler,as_term" shlib="full/path/to/module" Init fn="as_init" bootstrap.properties="full/path/to/plugin/config/file" Service fn="as_handler"
To work around this problem for Apache, remove the following lines from the httpd.conf or srm.conf file:
LoadModule app_server_http_module full/path/to/module Optional AddModule mod_app_server_http.c WebSpherePluginConfig full/path/to/config
Then, restart the server.
Several differences exist between the migration process on Windows platforms and the migration process on UNIX or Linux platforms:
Topic | Windows platforms | UNIX platforms |
---|---|---|
Backup directory | c:\was3_backup\wasx_backup | $WAS_HOME/migration/backup |
Migration temporary directory | c:\was_migration | $WAS_HOME/migration/tmp |
Migration log file directory | c:\was_migration\logs | $WAS_HOME/migration/logs |
These differences may not be noted in the InfoCenter documentation on automated migration in article 3.4.1.
One other item as to migration: the migration program will not detect a previous port number. If you want to use a port number other than the default (900), you must enter the other port number in the field. The port number refers to the port that the administrative server monitors.
If you are migrating WebSphere from Release 3.x to Release 4.0
while running the WebSphere installation program and a severe error occurs while
saving the existing Release 3.x environment, perform the steps below
to migrate the Release 3.x configuration. Note that the steps are for Windows
based systems; for Unix based systems add .sh
to the command line.
waspreupgrade c:\backup_directory c:\current_3.x.x_WebSphere_directory wssylvester
where wssylvester is the adminNodeName. Note that in some cases the waspreupgrade command may not be totally successful. To ensure that a valid configuration has been saved, verify that the file c:\backup_directory\websphere_3x_backup.xml exists. If it does not, then enter the following command from the c:\current_3.x.x_WebSphere_directory:
xmlconfig -export c:\backup_directory\websphere_3x_backup.xml -adminNodeName wssylvester
WASPostUpgrade c:\backup-directory -adminNodeName wssylvester
If you are migrating from WebSphere Release 3.02.x on Solaris, turn global security off before attempting to migrate to Release 4.0. An error may occur while doing the migration steps during installation. If this happens, then proceed with the manual steps provided, modify the passwords using the Administration Console and enable security.
A problem may occur after migrating a configuration from Release 3.x to Release 4.0 relating to the JDBC Driver configuration. The problem will show up with an error message similar to:
javax.naming.NamingException: ClassNotFoundException: COM.ibm.db2.jdbc.DB2ConnectionPoolDataSource
This can happen if the data store in use required a prerequisite upgrade and this upgrade is stored in a different directory location than the original data store version. The problem occurs because the JDBC configuration that is defined in the Release 3.x configuration uses drivers from the original data store version and its related directory names. When this configuration is exported and then imported into the Release 4.0 the original directory names are used instead of the new data store version.
To correct the problem, change the JDBC Driver Server class path entry to use the new data store directory names in the administrative console under the Resources tree.
If the following error is seen after completing migration, the server-cfg.xml file will not match up with the .ear file directories included in the installedApps directory:
Exception - No resource for object: com.ibm.ejs.models.base.config.applicationserver.impl.WebModuleRefImpl (uri: ChainTest.war) com.ibm.xmi.base.NoResourceException com.ibm.websphere.migration.exceptions.WASUpgradeInternalErrorException: MIGR0228E: Unable to save configuration files.
To correct this problem, manually delete any .ear directory found under the installedApps directory that is not listed as an installedApp in the server-cfg.xml file.
To run WASPostUpgrade more than once after migration has completed successfully and .ear files have been installed in the installedApps directory including a DefaultApplication.ear, the DefaultApplication.ear must be uninstalled before invoking WASPostUpgrade. No other .ear files must be uninstalled.
To uninstall the DefaultApplication.ear, do the following:
The term localhost might be localhost or the host name of the machine on which the product is running.
If the Administrative Console is used to create two different resources and the same name and JNDI name are assigned to both of the resources, the error will be detected and reported but the Default Server will still start successfully. However, when an application program does a lookup using the duplicate JNDI name, it may get the wrong resource and try to use it, which could cause problems.
For example, suppose a user creates a JavaMail mail session with one set of properties (Mail Transport Host = transhost1.com, Mail Store Host = storehost1.com, and so on) and with a name of "Test MailSession" and a JNDI name of "mail/DefaultMailSession". Further suppose the user then creates a second JavaMail mail session with a different set of properties (Mail Transport Host = transhost25.com, Mail Store Host = storehost25.com, and so on) and with the same name and JNDI name as the first mail session. Error messages similar to the following will be reported by the Administrative Console when the duplicate resource is created and in the default_server_stdout.log file when the server is started:
CHKW3050E: Duplicated resource factory name Test MailSession. [MailSession_3] CHKW3051E: Duplicated resource factory JNDI name mail/DefaultMailSession. [MailSession_3]
If the user runs an application affected by the duplicate name errors, transhost1.com and storehost1.com may be used when the user really wants to use transhost25.com and storehost25.com.
When you see a duplicate name message (either at resource creation time or server start-up time), change the names of one of the resources to resolve the problem. You can then start the server and run your application.
After you start the application server, the server runs as a background application with little indication of it running. However, the application server is not running as a service, so if you perform a logoff on the machine the application server will stop. Because of this, you need to have a user logged on all the time while running the application server.
To stop the application server, run the stopServer.bat or stopServer.sh file. Or use the administrative console to stop the application server.
The application server process will not start, preventing access to the Administrative Console. As a result, you cannot use the Administrative Console to correct any configuration problems that may be preventing the server from starting.
To fix this situation:
startServer -configFile ../config/admin-server-cfg.xml
http://localhost:9091/admin
Alternatively, you can attempt to manually edit the offending server configuration file. You should always make a backup before making any manual changes.
The Adding EJB Reference window does not show the Name field when it first opens. The window is accessed by clicking Add on the Adding EJB Reference window of the the Create Application Client wizard. You have to resize the window to see the field.
After installing an ear file with SEAppInstall.bat or SEAppInstall.sh, the following message is displayed:
CHKW6505W: A subject (user or group) has not been assigned for security role, DenyAllRole. The security role assignment should be made prior to running the application.
Ignore this message. It is appropriate for the DenyAllRole to not have any users or groups assigned to it.
When bringing up the administrative console, you may get the error message Additional problems have been detected. Clicking on the message displays a screen entitled "Configuration Problems" with the following description: CHKW3031E: The classpath of the resource provider reference is required. Clicking on the Validate Model push button does not cause any noticeable event.
This behavior is caused by the sample DB2 Driver (resource provider) entry supplied in the default server-cfg.xml file. WebSphere Advanced Single Server Edition does not require nor does it install DB2. Because the driver jars for DB2 are not available, the DB2 driver's classpath (see under default_node -> Installed Resource Providers) is empty, resulting in the error that appears on the problems page.
This problem can be fixed in one of two ways, or left as is (as long as DB2 is not being used):
You must use a unique context root for Web modules that are deployed on the same application server, even if the context roots are associated with different virtual hosts. If you try to reuse a context root, you will get a context root "in-use" error when you try to start the second module.
When using Microsoft Internet Explorer version 5.00, after you add a new URL Provider, JDBC Driver or JMS Provider resource, the tree view in the left pane of the administrative console may not update. To see the newly added resource, save the configuration file, exit the administrative console, stop and restart the server, and then restart the console. In the left pane, expand Resources and then the resource type for which you just created a new instance. You should be able to see the new resource instance.
The default size of the activity log (com.ibm.ws.ras.ActivityLogSize) in logging.properties is 1024 KB which yields a log size of 1 megabyte. The minimum is 8 KB and maximum is 51200 (50 MB).
The exception java.lang.ClassCastException may be thrown when you do the following:
These steps verify the .ear file, though may throw the exception.
When you do the following in the Application Assembly Tool:
You cannot drag the war file.
There is currently no panel in the administrative console that you can use to define environment variables that can be used during launching of the server process. A workaround is to edit the server-cfg.xml file in a text editor as follows:
EnvVar_x
, where x
is a unique ID for this environment varariable within the process definition.For example, to add an environment variable for computer name COMPUTERNAME=MyMachine, the relevant part of the server configuration would look like the following (see the line starting with <environment):
... <servers xmi:type="applicationserver:ApplicationServer" xmi:id="ApplicationServer_1" desiredExecutionState="START" name="Default Server" id="-1" moduleVisibility="COMPATIBILITY"> <processDefinition xmi:type="server:JavaProcessDef" xmi:id="ProcessDef_1" executableName="${JAVA_HOME}/bin/java" commandLineArguments="" workingDirectory="${WAS_ROOT}/bin" executableTargetKind="JAVA_CLASS" executableTarget="com.ibm.ws.bootstrap.WSLauncher"> <environment xmi:id="EnvVar_1" name="COMPUTERNAME" value="MyComputer"/> <executionSettings xmi:id="ProcessExecution_1" processPriority="1000" umask="777" runAsUser="root"/> <ioRedirect xmi:id="OutputRedirect_1" stdoutFilename="${LOG_ROOT}/default_server_stdout.log" stderrFilename="${LOG_ROOT}/default_server_stderr.log"/> <jvmSettings xmi:id="JavaVirtualMachine_1" classpath="${WAS_ROOT}/lib/bootstrap.jar;${WAS_ROOT}/properties" verboseModeClass="false" verboseModeGarbageCollection="false" verboseModeJNI="false" maximumHeapSize="256000000" runHProf="false" debugMode="false" genericCommandLineArgs="com.ibm.ws.runtime.StandardServer" disableJIT="false"> ... <systemProperties xmi:id="SystemProperty_1" name="server.root" value="${WAS_ROOT}"/> ... </jvmSettings> </processDefinition> ...
The next time the server is launched using either the administrative console or the command line launcher, the new environment variable will be set in the server's process.
There are limitations of some Netscape browser implementations on UNIX or Linux platforms which may cause the WebSphere Advanced Single Server Edition administrative console to operate incorrectly with respect to accessibility. The administrative console has been designed to support accessibility requirements, when viewed in an accessibility-mode capable browser. If the console is viewed within a non-accessibility mode browser implementation, tab or cursor keys may become unavailable.
The workaround is to view the administrative console using an accessibility-mode capable browser, such as Microsoft Internet Explorer 5.5 or Netscape 4.73 on Windows NT or Windows 2000.
When specifying additional classpaths (for dependent code not contained in
the module's archive file), specify the values relative to the root of the
EAR file and separate the values with spaces. Absolute values that reference
files or directories on the hard drive are ignored. To specify classes that
are not in JAR files but are in the root of the EAR file, use a period and a
forward slash (./
).
Consider the following example directory structure in which myapp.ear contains an application client JAR file named client.jar. Additional classes reside in class1.jar and class2.zip. A class named xyz.class is not packaged in a JAR file but is in the root of the EAR file.
myapp.ear/client.jar myapp.ear/class1.jar myapp.ear/class2.zip myapp.ear/xyz.class
Specify class1.jar class2.zip ./
as the value of the
Classpath field. (You only name the directory for .class files).
This information applies to the Classpath field for application client
modules and for EJB modules, and to the Additional classpath field
for Web modules.
After installing WebSphere Application Server, if you cannot start the iPlanet server, check the obj.conf file and make sure the plugin configuration information is in the correct order. The installation program may have placed the plugin configuration information into obj.conf in the incorrect order. The correct order should be:
Init fn="load-modules" funcs="as_init,as_handler,as_term" shlib="C:/WebSphere/AppServer/bin/ns41_http.dll" Init fn="as_init" bootstrap.properties="C:/WebSphere/AppServer/config/plugin-cfg.xml"
Support for cryptographic devices in the Single Server Edition is only provided at the Web server level by IBM HTTP Server 1.3.19. The following cryptographic devices are supported on the following platforms:
Cryptographic devices | Interface | Platform |
---|---|---|
Rainbow Cryptoswift | BSAFE 3.0 | Windows NT, Solaris, HP-UX |
nCipher nFast | BHAPI plug-in under BSAFE 4.0 | Windows NT, Solaris |
nCipher nForce - accelerator mode | BHAPI/BSAFE | Windows NT, Solaris |
nCipher nForce - key storage mode | PKCS11 | Windows NT, Solaris, HP-UX, AIX, Linux |
IBM4758 | PKCS11 | Windows NT, AIX |
Other cryptographic devices may also work with IBM HTTP Server on the appropriate platforms. However, they have not been specifically tested with IBM HTTP Server as of the date of this WebSphere product release.
If your .ear file uses multiple data sources with the DB2XADataSource class, when you deploy the .ear file into the application server and restart the Administrative Server, an "UnsatisfiedLink Error" may be returned on the AIX platform.
The problem is in the LD_LIBRARY_PATH and LIBPATH on AIX. After running
DB2 usejdbc2
, the LIBPATH includes $INSTHOME/sqllib/java12,
but the StartServer.sh overwrites the existing content of LIBPATH and sets
it to $WAS_HOME/bin:$LD_LIBRARY_PATH. To fix the problem, include
$INSTHOME /sqllib/java12 in the LD_LIBRARY_PATH. That is, for example,
export LD_LIBRARY_PATH to /home/test/sqllib/java12:/home/test/sqllib/lib.
Then, restart the server without errors.
If you are using connection pooling with Oracle on Sun Solaris or Linux,
it is recommended that you set the maximum number of files allowed open
per user to at least 2048. You can do this using the ulimit command. Simply
enter ulimit -n 2048
in the session where you will be running
the application server.
It is also recommended on the Linux system that the JVM initial heap
size and maximum heap size be set to 256 megabytes and 512 megabytes,
respectively. Using the administrative interface, select
Nodes -> node_name -> Application Servers ->
server_name -> Process Definition -> JVM Settings.
In the Initial Heap Size field, enter 256
and in the
Maximum Heap Size field enter 512
. Save the
configuration and restart the application server to have the settings take
effect.
DB2 databases are local and multiple connections cannot be established successfully. The solution is to catalog the DB2 databases using a TCP/IP loopback. To implement TCP/IP loopback without having to change the application to connect to the new alias and the USER and USING parameters, see step 5 below:
db2set DB2COMM
. To update the DB2COMM registry
variable to include TCP/IP, use the db2set command. For example:
db2set DB2COMM=,tcpip
db2 update dbm cfg using svcename
db2 catalog tcpip node remote 127.0.0.1 server
db2 catalog db as db2 uncatalog db db2 catalog db as at node
Restart DB2 to refresh to directory cache.
You may receive errors when creating database tables using Oracle when running the "Assembling, installing, deploying and accessing an EJB 1.1 application." To manually deploy the beans, do the following:
ejbdeploy EJB11Big3.jar tmp Ejb11Big3depl.jar -novalidate -dbvendor ORACLE_V8
During EJB deployment, the following GenerationException may be thrown:
null com.ibm.etools.codegen.api.GenerationException at com.ibm.etools.java.codegen.JavaCompilationUnitGenerator.addImport(JavaCompilationUnitGenerator.java:50) ...
To correct the situation, run deployment again.
In WebSphere Application Server Version 3.5, applications that were doing resource access in EJB methods specified to run under an "unspecified transactional context" normally got back connections with autocommit set to true. If the application set autocommit to false, the transactional work on the connection was automatically committed at the end of the method.
In Version 4.0, the default behavior in the above case is to rollback the work on the connection at the end of the method. If the application sets autocommit to false, it is required to explicitly issue commit on the connection before the method completes to avoid the rollback. However, you can restore the Version 3.5 behavior without requiring a change to the application by changing the "local transaction unresolved action" setting for the bean from its default value of rollback to commit using the Application Assembly Tool.
Use of EJB QL for defining finder methods is not supported in the version of Deployment Tool for Enterprise JavaBeans shipped with the Advanced Single Server Edition of this product. Also, there are restrictions on the use of SQL SELECT and WHERE clauses for defining finder methods.
For information on restrictions, see the documentation on the Deployment Tool for Enterprise JavaBeans.
For CMP entity beans, the Application Assembly Tool invokes the Deployment Tool for Enterprise JavaBeans to generate the SQL code (Table.ddl file) for creating database tables. For the Advanced Single Server Edition of this product, only the Table.dll file is generated. Default (top-down) mapping is used. Customized mappings are not supported.
For information on default mappings, see the documentation on the Deployment Tool for Enterprise JavaBeans.
You cannot debug JSPs in the WebSphere Application Server Advanced Single Server Edition Version 4.0 product.
When a JSP file in a Web Module relies on classes found in a JAR that is installed at the enterprise application level, you should set the Precompile JSPs option in the administrative console to No. This is because the JSP batchcompiler, which is used to precompile JSPs, is not picking up JARs at the enterprise application level.
For example, as to WAS_ROOT\InstalledApps\MyApp.ear\foo.jar, if there is a JSP file WAS_ROOT\InstalledApps\MyApp.ear\MyModule.war\MyJsp.jsp that needs classes in foo.jar, the batch compiler will fail with Class not found or Package not found errors.
The JSP compiler may fail to compile a JSP that includes a file whose name starts with a lowercase u. This only occurs when the JSP is not pre-compiled. For example, the following code may fail to compile when the JSP is first touched using a Web browser:
<html> <body> <%@ include file="u.htinc" %> </body> </html>
This problem does not occur when the JSP is compiled with the JspBatchCompiler command. To work around the problem, rename the file that is being included so that it does not start with a lowercase u or precompile the JSP using the JspBatchCompiler command.
When running the WebSphere administrative server, a server error is returned when you try to run a servlet such as the sample servlet snoop. To enable the iPlanet plugin to send the servlet to WebSphere Application Server, turn off the iPlanet servlet support:
Assigning a large number of users or groups (greater than 5000) to a role might fail (in the Security Center).
When possible, assign roles to groups. There typically are fewer groups than users. Also, this will improve performance during server startup and during the authorization check.
SSL settings are managed by the Administrative Console. Any editing changes made to the following properties in sas.server.props will be overwritten at runtime.
com.ibm.CORBA.SSLKeyRing com.ibm.CORBA.SSLKeyRingPassword com.ibm.CORBA.SSLServerKeyRing com.ibm.CORBA.SSLServerKeyRingPassword com.ibm.CORBA.SSLClientKeyRing com.ibm.CORBA.SSLClientKeyRingPassword
While receiving a CA Certificate into a new SSL key file using WebSphere JSSE iKeyman, the product may return the error message An error occurred while receiving the certificate from the given file.
The workaround is to save the SSL key file before creating a certificate request:
HTTP digest authentication is not supported as a login configuration in this product. Also, not all login configurations are supported in all of the product's global security authentication mechanisms (Local Operating System, LTPA, and custom pluggable user registry). HTTP basic authentication and form-based login authentication are the only login methods supported by the Local Operating System user registry. Because Advanced Single Server Edition uses the local operating system as the user registry for authentication, it can only support these two login methods. LTPA and the custom pluggable user registry are capable of supporting HTTP basic authentication, form-based login, and HTTPS client authentication. But LTPA and the custom pluggable user registry are available only in the Advanced Edition.
When the Object Level Trace service is enabled while you perform system administration using the administrative console, error messages may show up in the console from which the administration server was started. These error messages are harmless and may be ignored.
However, to avoid these error messages, do not do system administration
while the application server is running with the Object Level Trace service
enabled. If this is not an option for you, run two instances of the
startServer
command. To run multiple server instances simultaneously,
you must use different configuration files (for example, server-cfg.xml) for
each instance. Ensure that there are no port conflicts between the two instances.
When debugging on the HP-UX platform, there is a known HP-UX JDK defect that may cause the application server to crash.
If you are running Object Level Trace (OLT) with the viewer on a machine that is separate from the machine running WebSphere Application Server, start the WebSphere server with a command that includes the -host parameter:
startServerBasic -oltenabled -host hostname -debug
The IBM Distributed Debugger on a Windows NT Server may not attach to remote Application Server debug calls from Linux or Solaris machines.
The workaround is to install the debugger on a remote machine (Linux or Solaris) and make sure the debugger's bin directory is in Application Server's PATH variable.
The startServer support expects the OLT enable parameter to be -oltenable (no d). This parameter was previously -oltenabled and is reflected as such in the OLT documentation.
Use -oltenable when using the startServer script, otherwise use the startServerBasic script (which still supports -oltenabled).
For supported locales, see InfoCenter article 6.6.49.
On AIX and for Korean and other languages, some WebSphere Application Server pages may be corrupted. To fix the page display, uncheck the Auto-select in the View -> Encoding menu option of Microsoft Internet Explorer browsers or the View -> Character Set option of Netscape browsers.
If you plan to use a remote Oracle database with the Pet Store sample, replace "Creating and Populating the Database" with the following set of instructions. (The full set of instructions are in the "Using the Java Pet Store with Oracle" instructions in the Samples Gallery.)
Locate the ps_oracle.sql file that you obtained as part of the petstore_112.zip file. The ps_oracle.sql file creates the required tables and populates them with data.
set ORACLE_SID=oracle_sid
where ORACLE_SID is the database system identifier, usually
the instance name, such as ORCL.set ORACLE_SIDD=oracle_sid
where ORACLE_SID is the database system identifier, usually the instance name, such as ORCL.
export ORACLE_SID
@ps_oracle.sql
Note: the @ is a required part of the command.
If you start the administrative server with the debug option (startServer -debug
)
and then run a JSP sample, an exception may be thrown and an error message displayed.
The JSP samples include YourCo, Bean Scripting, StockQuote, Account EJB (JSP version), and
Transfer EJB (JSP version).
The JSP files in the Samples application are pre-compiled (without debug information).
To be able to view debug information, delete the .class and .dat files from
Samples.ear\Samples.war\WEB-INF\classes. Then, restart the server with -debug
and request a JSP such as BeanScripting_java.jsp. The JSP engine should recompile the JSP
with debug information and run as intended.
You cannot view the full samples index (including Trade and Petstore) using a Netscape or Internet Explorer browser if you have a screen resolution of 800x600 or lower.
The workaround is to set the screen resolution to 1024x768 or higher and you will be able to view the complete samples index.
In the Trade Sample Oracle Setup, invoking OracleCreateTradeDB.bat will throw an exception: no privileges on tablespace "SYSTEM" for user WSDEMO. The Trade tables are not created because the WSDEMO user does not have the privilege to create tables.
You first must manually grant connect, resource privileges to WSDEMO from a SQLPlus window.
The usage for AddressBookSample indicates that you can specify parameters that contain spaces with double quotes (for example, "John Doe"). However, if you use the provided script to invoke the service and specify a space delimited name in double quotes, the invocation will fail.
The problem is in the scripting environment. The double quotes will ultimately be stripped off before invoking the service. This causes the name to be treated as separate arguments (like John and Doe).
To use the script to test the sample, you must supply a name using the underscore character as a separator (for example, John_Doe). Alternatively, you can invoke the sample soap client java class directly.
There is a minor error in each of the UDDI samples FindBusinessExample.sh and DeleteBusinessExample.sh scripts. To use them, you must first edit the files and correct them.
$JAVA_HOME/bin/java -classpath $CP uddiSamples.FindBusinessExample
to:
$JAVA_HOME/bin/java -classpath $CP uddisamples.FindBusinessExample
$JAVA_HOME/bin/java -classpath $CP uddi_samples.DeleteBusinessExample $ARGS
to:
$JAVA_HOME/bin/java -classpath $CP uddisamples.DeleteBusinessExample $ARGS
On Solaris, you might need to change the script declaration from sh to ksh in
the samples scripts of the soapsamples.ear file. For example, if you get the error
function: not found, change #!/bin/sh
to #!/bin/ksh
.
For the latest product documentation, see the IBM WebSphere Application Server InfoCenter at http://www.ibm.com/software/webservers/appserv/infocenter.html.
The following information on cataloging the loopback node in materials on databases is erroneous:
db2 catalog tcpip node node_name remote 127 "
The information should provide the following:
Example: db2 catalog tcpip node nodename remote 127.0.0.1 server connection_service_name "
The following article did not make it into the InfoCenter:
1.2.2.6: Running administrative servers, application servers, and consoles as non-root
Any application server or administrative server can be run using a non-root ID. By default, WebSphere servers use a root ID. To run the administrative server as non-root:
product_installation_root/bin/* product_installation_root/config/* product_installation_root/etc/* product_installation_root/installedApps/* product_installation_root/logs/* product_installation_root/properties/* product_installation_root/tranlog/* product_installation_root/temp/*
Make sure that the user or group has write and execute privileges.
<orbSettings xmi:id="ORBConfig_1" enable="true" bootstrapHost="localhost" bootstrapPort="2222"
where 2222 is an example of a new port that you might use.
Changing the bootstrap port affects the clients that connect to the server.
The WebSphere Application Server InfoCenter information in article 6.6.14.5 needs to be updated regarding enabling JTA drivers on UNIX.
Bind the necessary packages to the database. From the DB2 Command Line Processor window, issue the following commands:
db2=> connect to mydb2jta db2=> bind db2home\bnd\@db2cli.lst db2=> bind db2home\bnd\@db2ubind.lst db2=> disconnect mydb2jta
If you attempt to run the client application without doing the binding steps, errors such as the following are recorded to the activity.log:
ExtendedMessage: CNTR0019E: Non-application exception occurred while processing method create: com.ibm.websphere.cpi.CPIException: COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/6000] SQL0805N Package "NULLID.SQLLC300" was not found. SQLSTATE=51002 ; nested exception is: COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/6000] SQL0805N Package "NULLID.SQLLC300" was not found. SQLSTATE=51002 COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/6000] SQL0805N Package "NULLID.SQLLC300" was not found. SQLSTATE=51002
Before starting WebSphere Application Server, you need to call $INSTHOME/sqllib/java12/usejdbc2 to use JDBC 2.0. For convenience, you might want to put this in your root user's startup script. For example, on AIX add the following to the root user's .profile:
if [ -f /usr/lpp/db2_07_01/java12/usejdbc2 ] ; then . /usr/lpp/db2_07_01/java12/usejdbc2 fi
Note that if you run usejdbc2
without the .
or
. ./
, the environment path will not be updated.
To enable JTA drivers on UNIX, follow these steps:
When you use an IBM WebSphere Application Server administrative client (such as the WebSphere Administrative Console) to configure a JDBC driver, specify the following settings:
$INSTHOME/sqllib/java12/db2java.zip
For example, for $INSTHOME = /home/test
, the path will be
/home/test/sqllib/java12/db2java.zip
.
COM.ibm.db2.jdbc.DB2XADataSource
The Log Analyzer help files, articles # 6.6.0.13.* in the InfoCenter, contain technical information that is specific to Component Broker. For example, they occasionally refer to features that can only be found in the Log Analyzer that ships with Component Broker.
Please disregard information that does not seem to apply to your IBM WebSphere Application Server Log Analyzer interface.
The instructions for disabling the prerequisite checking functionality by editing the
prereq.properties file are incorrect in installation documentation for the AIX,
Solaris, and HP-UX platforms. Instead of stating that you should
"Open the prereq.properties file in a text editor and change the line prereq_checker=1
to prereq_checker=0," they should state that you should change the key value from 1
to 0
(zero) for the specific component for which you want to
disable prerequisite checking.
For example, if you want to install IBM HTTP Server
1.3.20 when version 1.3.19 is supported, you can disable prerequisite checking
for this component by opening the prereq.properties file in a text editor,
editing the value of the ihs_check key to be 0
instead of 1
,
and saving the updated prereq.properties file. Follow the instructions for starting the
WebSphere Application Server installation program as documented.
Some WebSphere Application Server installation documents for UNIX or Linux platforms state that you should use Ctrl+C to stop the application server. That key combination does not work. Instead, run the stopServer.sh file.
The icons on IBM HTTP Server InfoCenter prodWelcome page contain broken links. The page is accessing by clicking View Documentation on the main page of your Web server. Clicking on IBM HTTP Server on the left displays the icons. Clicking any of the titles next to the icons produces an HTTP 404 error.
The article 6.6.14.0 on "Properties of JDBC drivers and data source providers" under the heading "Locating JDBC drivers on your operating system" lists the Windows DB2 JDBC driver path incorrectly. The path should be:
C:\SQLLIB\java\db2java.zip
The following are corrections and additions to the InfoCenter article "4.6.1.4: Running the JavaMail sample:"
After the install, you can invoke the servlet or JSP by using one of the following URLs: http://localhost/jmsample/servlet http://localhost/jmsample/Email.jsp
You should not use these links to bring up the JavaMail servlet and JSP. These are internal documentation links which point to tables that give the actual links that should be used to invoke the JavaMail servlet and JSP.
About every 1 in 12 Back buttons provided for navigation of InfoCenter articles does not work.
Use the other navigational features in the article to find the topic of your choice. Each Back button links to the previous peer topic (such as 1.1 for article 1.2) of the article. If no peer topic exists, it links to the article of which the current article is a sub-topic (article 1 for article 1.1). For each article, both of these links (peer and "parent" topic) are available elsewhere on the page.
The hyperlinks to DER_DBG_TAB and DER_DBG_TABGRID at the bottom of the article "Setting environment variables for the Debugger" in information in English on the Distributed Debugger incorrectly go to a Spanish page.
The article "Installing WebSphere Application Server 4.0--Custom Installation option," which describes how to install WebSphere Application Server and IBM HTTP Server on a local Solaris SPARC machine, needs to be changed as follows:
#umount /cdrom/cdrom0
, there should be a second command to eject the cdrom:
# eject cdrom