Contained Within
Find More Documentation
Featured Support Resources
| Scarica il manuale in formato PDF (731 KB)
Chapter 3 Known Issues and Limitations
This chapter describes known problems and associated workarounds for
the Sun Java System Application Server Enterprise Edition 8.1 2005Q2 software.
If a summary statement does not specify a particular platform, the problem
applies to all platforms. This information is organized into the following
sections:
Administration
This section describes known administration issues and associated solutions.
|
Bug ID
|
Summary
|
|
6171458
|
The package-appclient script does not work if domain1 is not present.
By default, there is a hard-coded value in $INSTALL/lib/package-appclient.xml for the AS_ACC_CONFIG variable for domain1 that
is pointed to by asenv.conf. If domain1 is deleted and
a new domain created, the AS_ACC_CONFIG variable is not updated
with the new domain name, which causes the package-appclient script
to fail.
Solution
Do one of the following:
-
Leave domain1 intact, and create your
other domains around it.
-
Remove domain1 and replace the hard-coded
value for domain1 in $INSTALL/lib/package-appclient.xml with the new domain name.
This will have to be done every time a new domain is created if domain1 is not present.
|
|
6196993
|
Cannot restore backed-up domain with another name.
Mirroring of a domain on the same Application Server installation cannot
be performed using the backup-domain and restore-domain commands because the domain cannot be restored using a different
name than the original, even though the asadmin restore-domain command
provides an option to rename the domain. Renaming the backed-up domain appears
to succeed, but attempts to start the renamed domain fail because the entries
in the domain configuration are not changed, and startserv and stopserv use the original domain name to set paths.
Solution
The domain name used for restore-domain must be the
same as that used for the original backup-domain command.
The backup-domain and restore-domain commands
in Application Server 8.1 work only for backing up and restoring the same
domain on the same machine.
|
|
6200011
|
Starting Application Server with additional JMX Agent is not supported.
J2SE 1.4.x, 5.0, or later can be configured on the Application Server.
An integral feature of J2SE 5.0 platform is the ability to start a JMX agent.
This is activated when you explicitly set system properties at the server
startup.
Example values include:
name="com.sun.management.jmxremote" value="true"
name="com.sun.management.jmxremote.port" value="9999"
name="com.sun.management.jmxremote.authenticate" value="false"
name="com.sun.management.jmxremote.ssl" value="false"
|
After configuring JMX properties and starting the server, a new jmx-connector server is started within the Application Server Virtual Machine.
An undesirable side-effect of this is that the administration functions are
affected adversely, and the Application Server administration Console and
command—line interface may produce unexpected results. The problem is
that there are some conflicts between the built in jmx-connector server
and the new jmx-connector server.
Solution
If using jconsole (or any other JMX-compliant client),
consider reusing the standard JMX Connector Server that is started with Application
Server startup.
When the server starts up, a line similar to the one shown below appears
in the server.log. You can connect to the JMXService URL
specified there and perform the same management/configuration operations after
successfully providing the credentials; for example:
[#|2004-11-24T17:49:08.203-0800|INFO|sun-appserver-ee8.1|javax.
enterprise.system.tools.admin|_ThreadID=10;|ADM1501: Here is
the JMXServiceURL for the JMXConnectorServer: [service:jmx:rmi:
///jndi/rmi://hostname:8686/management/rmi-jmx-connector]. This
is where the remote administrative clients should connect using
the JSR 160 JMX Connectors.|#]
|
For more information, refer to the Administration Guide.
|
|
6206176
|
On UNIX, overly restrictive execute permissions on Application Server
start and stop scripts.
If you run the asadmin restore-domain command while
logged in as user "A", the scripts will end up with permissions as 744 (rwxr--r--). If you subsequently attempt to start or stop a domain
as user "B" (even if "B" is root), it will fail because the scripts are only
executable for "A".
Solution
Change the permissions on the scripts:
chmod 755 appserv/domains/domain-name/bin/*
|
|
|
6236544, 6275436
|
Load balancer configuration file does not get created with the endpoint
URL of any web service.
When setting up the load balancer configuration with an application
that has an EJB module that exports a web service URL, the context root for
the web service isn't in the resulting loadbalancer.xml file.
Solution
-
Edit the loadbalancer.xml file to add
the missing web module as follows:
<web-module context-root="context-root-name"
disable-timeout-in-minutes="30" enabled="true"/>
|
-
Replace context-root-name value
with the context root name of the web service that was exposed as an EJB.
|
|
6288893
|
Application Server restart using sun-appserv-admin causes LoginException error.
Solution
-
Rename the existing <as_install>/bin/asant script to asant.bak.
-
Copy the asant.template file in <as_install>/lib/install/templates/ee (for SE/EE version)
to the <as_install>/bin/
directory and rename the file asant.
-
Edit the newly copied <as_install>/bin/asant script, replacing the %CONFIG_HOME% token
with <as_install>/config.
-
If there were any manual changes made to the original asant.bak file, merge them into the new asant script.
|
|
6315957
|
The .asadmintruststore file is not described in the Application Server documentation.
If this file does not exist in the server administrator's home directory,
you may experience serious bugs when upgrading certain applications hosted
on the server.
Solution
-
If possible, the asadmin start-domain domain1 command
should be run by user who installed the server.
-
If it is not run by that user, the .asadmintruststore should
be moved or copied from the home directory of installing
user to the home directory of the running user.
-
Note that if the file is moved (not copied) from the installing
user's home directory to the running user's home directory,
you might experience application upgrade problems, as described in bugs 6309079,
6310428 and 6312869, because the upgrade/install user (normally root in
Java ES) will no longer have the .asadminstruststore file
in his or her home directory.
|
|
6462903
|
Error occurs in Application Server 8.1 Admin GUI when Save button
clicked more than once.
When changing the HTTP port value on a server instance, either start
the server instance before making the port change, or click the Save button
only once if the server instance is down.
|
|
6506605
|
asadmin multimode appears to cache the master password.
The following series of operations fail with asadmin when
running in multimode:
create-domain
start-domain
stop-domain
delete-domain
create-domain
|
The final create-domain fails with the error:
Invalid database password. CLI130 Could not create domain, domain2
|
This problem is caused by a JDK limitation.
Solution
Please do not create multiple domains in a single Java VM with asadmin
multimode. You cannot use asadmin multimode to
create or start two domains with different master passwords.
|
Apache and Load Balancer Plugin
This section describes known Apache Web server and load balancer plugin
issues and associated solutions.
|
Bug ID
|
Summary
|
|
6306784
|
The High-Availability Administration Guide contains incorrect instructions
for using openssl with Apache.
Solution
When compiling and building openssl, run the following
commands:
cd openssl-0.9.7e
config
make
Also, for Apache 1.3, the directory name of the mod_ssl source
will vary depending upon the release of Apache used. For example, for Apache
1.3.33, the name is mod_ssl-2.8.22-1.3.33.
|
|
6307976
|
The High-Availability Administration Guide does not contain instructions
for using a certificate for Apache 2.0.
Solution
To run Apache security, you must use a certificate. For instructions
on obtaining a certificate from a certificate authority, see the information
on certificates in the modssl
FAQ.
|
|
6308021
|
Must start Apache Web Server as root.
Solution
On Solaris, if your Application Server was installed under root, you
must start the Apache Web Server as root. Java Enterprise System installations
are installed as root. For Apache 2.0, after starting as root, Apache switches
and runs as another user you designate. You designate that user in the /conf/httpd.conf file. To start as root, on many systems you must edit the httpd.conf file to designate the correct group. Replace the line:
Group #-1
with
Group nobody
More information on user/group use is included in the httpd.conf file.
|
|
6308043
|
Addition to instructions for using openssl with Apache
Web Server 2.0 on Solaris.
After installing Apache 2.0 and the load balancer plug-in, edit ssl.conf and sll-std.conf as follows:
Replace the line:
<VirtualHost _default_:9191>
with
<VirtualHost machine_name:9191>
Where machine_name is the name of your machine
and 9191 is a security port number.
|
|
6338687
|
Load Balancer Plugin URL/URI limit = 8K.
There is a hard-coded limit of 8K for the length of URLs/URIs that can
be parsed by the load balancer plugin in Application Server 8.1 Update 2.
Solution
Do not create URLs or URIs greater than 8K in length and then send them
to the Application Server by means of the load balancer plugin.
|
|
6406884
|
Problems using IIS6 and load balancer plugin with Application Server 8.1UR2.
Solution
To use IIS6 and the load balancer plugin with Application Server 8.1UR2,
you need to perform the following addition configuration steps:
-
Add appserver-install-location/lib to
the system path variable and then restart the machine.
-
Enable unknown Web service extensions, as described in the
Microsoft Technet article Requests for dynamic content return 404 error (IIS 6.0).
-
Give NTFS write and modify permissions to the group IIS_WPG on the file inetput/wwwroot/sun-passthrough/lb.log.
This is necessary because IIS 6.0 runs in Worker Process Isolation Mode, and
it runs the IIS server with the security privileges of the group IIS_WPG. You will need to create this file and then right click on it to
set security permissions.
If you do not see the status of the ISAPI filter going green, try sending
any http request (do not worry if it fails here) to the IIS-http-port and
then right-click on Web site and select properties and check the ISAPI filter.
|
Application Client
This section describes known application client issues and associated
solutions.
|
Bug ID
|
Summary
|
|
6193556
|
Library JAR packaged in Application Client Archive overwrites MANIFEST
file.
If you have a top level JAR file inside your client JAR (in this case,
reporter.jar), when you deploy the client JAR, the MANIFEST file for that
JAR overwrites the MANIFEST file for the client JAR.
Solution
None at this time.
|
|
6373043
|
Dynamic content technologies, such as CGI-bin and SHTML, are no longer
supported.
Solution
Use JSP and Web service technologies instead.
|
Bundled Sun JDBC Drivers
This section describes known bundled Sun JDBC driver issues and associated
solutions.
|
Bug ID
|
Summary
|
|
6165970
|
Applications using the TRANSACTION_SERIALIZABLE isolation
level with the bundled Sun driver for Microsoft SQL Server may hang when using
a prepared statement to update if two parallel transactions are running and
one of them is rolled back.
To set a desired isolation level for a connection, the corresponding
connection pool must be created at that same isolation level. See the Administration
Guide for details about configuring connection pools.
Solution
None at this time.
|
|
6170432
|
PreparedStatement Errors.
Description #1
If an application generates more than 3000 PreparedStatement objects
in one transaction, the following error may occur with DB2:
[sunm][DB2 JDBC Driver] No more available statements.Please recreate your package with a larger dynamicSections value.
Solution #1
Add following properties to the connection pool definition to get the
driver to rebind DB2 packages with a larger dynamic sections value:
createDefaultPackage=true replacePackage=true dynamicSections=1000
See the Administration Guide for details about
configuring connection pools.
Description #2
Related to the PrepardStatement error above, another
error message that may be thrown is:
[sunm][DB2 JDBC Driver][DB2]Virtual storage or database resource
is not available.
Solution #2
Increase the DB2 server configuration parameter APPLHEAPSZ.
A good value is 4096.
Description #3
Isolation level TRANSACTION_SERIALIZABLE. If
your application uses isolation level TRANSACTION_SERIALIZABLE and
uses one of the parameters suggested above, it might hang while obtaining
a connection.
Solution #3
To set desired isolation level for a connection, the corresponding connection
pool has to be created at that isolation level. See the Administration
Guide for instructions.
|
|
6189199
|
Problems setting isolation level with the bundled Sun driver for Sybase
Adaptive Server.
-
Applications using the TRANSACTION_SERIALIZABLE isolation
level with the bundled Sun driver for Sybase Adaptive Server may hang when
using a prepared statement to update if two parallel transactions are running
and one of them is rolled back. Connection rollback fails with following message,
and the rolled back connections cannot be used anymore:
java.sql.SQLException:
[sunm][Sybase JDBC Driver]Request cannot be submitted due to wire contention
-
Sybase Adaptive Server does not support the TRANSACTION_REPEATABLE_READ isolation level. However, querying DatabaseMetaData,
the bundled Sun driver returns that this isolation level is supported by the
database. Applications using the this isolation level will fail.
-
Applications using the bundled Sun driver cannot set the TRANSACTION_READ_UNCOMMITTED isolation level. The application
throws the following exception on the first DataBaseMetaData access:
java.sql.SQLException: [sunm][Sybase JDBC Driver][Sybase]The
optimizer could not find a unique index which it could use to perform an isolation
level 0 scan on table 'sybsystemprocs.dbo.spt_server_info'.
Solution
None at this time.
|
|
6247468
|
On Solaris 10 and Enterprise Linux 3.0, the Sun bundled Oracle JDBC
driver does not allow the creation of a connection.
Solution
Set the following property on the JDBC connection pool when using the
SUN JDBC oracle datasource (com.sun.sql.jdbcx.oracle.OracleDataSource):
<property name="serverType" value="dedicated"/>
The value of the property depends upon the way the Oracle server's listener
is configured. If it is configured in the "shared" mode, the above value needs
to change to "dedicated".
|
Connectors
This section describes known J2EE connector architecture issues and
associated solutions.
|
Bug ID
|
Summary
|
|
6188343
|
After restarting a DAS instance, undeploying the connector module fails
when cascade is set to false.
In this scenario, a standalone or embedded connector module is deployed
in DAS and connector connection pools, and resources are created for the deployed
module. After restarting the DAS instance, undeploying the connector module
fails when cascade is set to false with the following exception:
[#|2004-10-31T19:52:23.049-0800|INFO|sun-appserver-ee8.1|javax.enterprise.system
.core|_ThreadID=14;|CORE5023: Error while unloading application [foo]|#]
Solution
Use cascaded undeploy (set the cascade option to true) for undeploying
standalone and embedded connectors after restart of the DAS instance.
|
|
6412132
|
Using JDBC getConnection() for pooling connections.
If you get a Connection from an Application Server JDBC connection pool,
create a Statement object, and then use the Statement.getConnection method,
the statement returns the physical connection instead of the wrapped connection.
When you close this physical connection, you break the connection pool logic.
To avoid this problem, set the following JVM property in the domain.xml file:
<jvm-options>-Dcom.sun.appserv.jdbc.wrapJdbcObjects=truejvm-options>-Dcom.sun.appserv.jdbc.wrapJdbcObjects=true>
|
|
|
6412148
|
ORBCommunicationsRetryTimeout error.
The ORBCommunicationsRetryTimeout property specifies
the number of seconds the ORB client will try to establish a connection to
an unreachable ORB backend. The default value is 60 seconds.
With this default setting, you may see a large number of CORBA exceptions
in the logs, as well as high network usage if the ORB backend is not reachable.
Solution
Set the ORBCommunicationsRetryTimeout to a lower
value.
|
Documentation
This section describes known documentation issues and associated solutions.
|
Bug ID
|
Summary
|
|
Various IDs
|
Javadoc Inconsistencies.
The Javadoc for several AMX interfaces and methods is either missing
or incorrect:
-
Getter methods for NumConnAcquired and NumConnReleased statistics are missing from ConnectorConnectionPoolStats and AltJDBCConnectionPoolStats. These
getter methods will be added in a future release as getNumConnAcquired() and getNumConnReleased().
-
Calling the following methods in EJBCacheStats will
throw an exception: getPassivationSuccesses(), getExpiredSessionsRemoved(), getPassivationErrors(), getPassivations(). This will be fixed in a future release.
-
The AMX MBeans may require several seconds after server startup
before they are all registered and available for use. A future release will
make it possible to determine when the AMX MBeans are fully loaded.
-
The constant XTypes.CONNNECTOR_CONNECTION_POOL_MONITOR is misspelled ("NNN"). This will be corrected
in a future release.
|
|
6219689
|
Error in ConnectionPoolStats API documentation.
The API documentation in install_dir/docs/api states:
public CountStatistic getNumConnFree()
|
This entry should read:
public RangeStatistic getNumConnFree()
|
|
|
6265624
|
Bundled ANT throws java.lang.NoClassDefFoundError.
The following exception is thrown in thread main: java.lang.NoClassDefFoundError: org/apache/tools/ant/launch/Launcher.
Solution
Using the bundled ANT for activities outside the Application Server is not
recommended.
|
|
6482223
|
Differences in default values in creating new JMS connection factory
for online help and documentation.
When creating a new JMS connection factory, the online help and the Administration Guide differ in the list of default values for
the connection factory. Specifically, the online help lists the following:
=======================================
ReconnectAttempts : 6
UserName : guest
ReconnectInterval : 30000
ReconnectEnabled : false
Password : guest
ClientId :
AddressListBehavior : PRIORITY
AddressListIterations : -1
AddressList : 7676
=======================================
|
The Administration Guide lists the following:
=======================================
ReconnectAttempts : 3
UserName : guest
ReconnectInterval : 30000
ReconnectEnabled : true
Password : guest
ClientId :
AddressListBehavior : RANDOM
AddressListIterations : 3
AddressList : 7676
=======================================
|
Solution
The information in the Administration Guide is
correct.
|
|
6486123
|
Documentation on getting a physical Connection from a wrapped Connection
is no longer correct.
As a result of other defects (possibly 6295215) the code provided in
the Obtaining a Physical Connection from a Wrapped Connection in Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Developer’s Guidesection of Chapter 11, Using the JDBC API for Database Access, in Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Developer’s Guide is not correct. Specifically, the line:
Connection drivercon = ds.getConnection(con);
|
should now read:
Connection drivercon = ((com.sun.gjc.spi.DataSource)ds).getConnection(con);
|
|
|
6511489
|
Additional information needed to explain KeepAliveFlushes and KeepAliveRefusals.
The Application Server Tuning Guide should contain
the following additional information about KeepAliveFlushes and KeepAliveRefusals.
In the current version of Application Server, the server does not close existing
connections when the KeepAliveCount exceeds the MaxKeepAliveConnections. Instead, new keep-alive connections are refused and the KeepAliveResusals count is incremented.
|
High Availability
This section describes known high availability database (HADB) issues
and associated solutions.
|
Bug ID
|
Summary
|
|
no ID
|
HADB Configuration with Double Networks.
HADB configured with double networks on two subnets works properly on
Solaris SPARC. However, due to problems in the operating system or network
drivers on some hardware platforms, it has been observed that Solaris x86
and Linux platforms do not always handle double networks properly. This causes
the following problems with HADB:
-
On Linux, some of the HADB processes are blocked when sending
messages. This causes HADB node restarts and network partitioning.
-
On Solaris x86, some problems may arise after a network failure
that prevent switching to the other network interface. This does not happen
all the time, so it is still better to have two networks than one. These problems
are partially solved in Solaris 10.
-
Trunking is not supported.
-
HADB does not support double networks on Windows 2003 (ID
5103186).
|
|
no ID
|
HADB Database Creation Fails.
Creating a new database may fail with the following error, stating that
too few shared memory segments are available:
HADB-E-21054: System resource is unavailable: HADB-S-05512:
Attaching shared memory segment with key "xxxxx" failed, OS status=24 OS error
message: Too many open files.
Solution
Verify that shared memory is configured and the configuration is working.
In particular, on Solaris 8, inspect the file /etc/system,
and check that the value of the variable shmsys:shminfo_shmseg is
at least six times the number of nodes per host.
|
|
5091280
|
hadbm set does not check resource availability (disk
and memory space).
When increasing device or buffer sizes using hadbm set, the
management system checks resource availability when creating databases or
adding nodes, but does not check if there are sufficient resources available
when device or main-memory buffer sizes are changed.
Solution
Verify that there is enough free disk/memory space on all hosts before
increasing any of the devicesize or buffersize configuration
attributes.
|
|
5091349
|
Heterogeneous paths for packagepath not supported.
It is not possible to register the same software package with the same
name with different locations at different hosts; for example:
hadbm registerpackage test --packagepath=/var/install1 --hosts europa11
Package successfully registered.
hadbm registerpackage test --packagepath=/var/install2 --hosts europa12
hadbm:Error 22171: A software package has already been registered with
the package name test.
|
Solution
HADB does not support heterogeneous paths across nodes in a database
cluster. Make sure that the HADB server installation directory (--packagepath) is the same across all participating hosts.
|
|
6173886, 6253132
|
createdomain may fail.
If running the management agent on a host with multiple netwrok interfaces,
the createdomain command may fail if not all network interfaces are on the
same subnet:
hadbm:Error 22020: The management agents could not establish a domain,
please check that the hosts can communicate with UDP multicast.
|
The management agents will (if not configured otherwise) use the "first"
interface for UDP multicasts ("first" as defined by the result from java.net.NetworkInterface.getNetworkInterfaces()).
Solution
The best solution is to tell the management agent which subnet to use
(set ma.server.mainternal.interfaces in the configuration
file, e.g., ma.server.mainternal.interfaces=10.11.100.0).
Alternatively one may configure the router between the subnets to route multicast
packets (the management agent uses multicast address 228.8.8.8).
Before retrying with a new configuration of the management agents, you
may have to clean up the management agent repository. Stop all agents in the
domain, and delete all files and directories in the repository directory (identified
by repository.dr.path in the management agent configuration
file). This must be done on all hosts before restarting the agents with a
new configuration file.
|
|
6230792, 6230415
|
Starting, stopping, and reconfiguring HADB may fail or hang.
On Solaris 10 Opteron, starting, stopping or reconfiguring HADB using
the hadbm command may fail or hang with one of the following
errors:
hadbm:Error 22009: The command issued had no progress in the last 300
seconds.
HADB-E-21070: The operation did not complete within the time limit, but
has not been cancelled and may complete at a later time.
|
This may happen if there are inconsistencies reading/writing to a file
(nomandevice) which the clu_noman_srv process
uses. This problem can be detected by looking for the following messages in
the HADB history files:
n:3 NSUP INF 2005-02-11 18:00:33.844 p:731 Child process noman3 733 does
not respond.
n:3 NSUP INF 2005-02-11 18:00:33.844 p:731 Have not heard from it in
104.537454 sec.
n:3 NSUP INF 2005-02-11 18:00:33.844 p:731 Child process noman3 733 did
not start.
|
Solution
The following workaround is unverified, as the problem has not been
reproduced manually. However, running this command for the affected node should
solve the problem.
hadbm restartnode --level=clear nodeno dbname
|
Note that all devices for the node will be reinitialized. You may have
to stop the node before reinitializing it.
|
|
6232140
|
The management agent terminates with the exception "IPV6_MULTICAST_IF
failed"
When starting on a host running Solaris 8 with several NIC cards installed,
if there is a mixture of cards with IPv6 and IPv4 enabled, the management
agent may terminate with the exception "IPV6_MULTICAST_IF failed."
Solution
Set the environment variable JAVA_OPTIONS to -Djava.net.preferIPv4Stack=true; for example:
export JAVA_OPTIONS="-Djava.net.preferIPv4Stack=true"
|
Alternatively, use Solaris 9 or later, which do not exhibit this problem.
|
|
6249685
|
clu_trans_srv cannot be interrupted.
There is a bug in the 64-bit version of Red Hat Enterprise Linux 3.0
that makes the clu_trans_srv process end up in an uninterruptible
mode when performing asynchronous I/O. This means that kill -9 does not work
and the operating system must be rebooted.
Solution
Use a 32-bit version of Red Hat Enterprise Linux 3.0.
|
|
6262824
|
hadbm does not support passwords containing capital
letters.
Capital letters in passwords are converted to lowercase when the password
is stored in hadb.
Solution
Do not use passwords containing capital letters.
|
|
6265419
|
Downgrading from HADB Version 4.4.2.5 to HADB Version 4.4.1.7 causes
ma to fail with different error codes.
When downgrading to a previous HADB version, the management agent may
fail with different error codes.
Solution
It is possible to downgrade the HADB database, however the management
agent cannot be downgraded if there changes have been made in the repository
objects. After a downgrade, you must keep use the management agent from the
latest HADB version.
|
|
6271063
|
Install/removal and symlink preservation.
Regarding install/removal of HADB c package (Solaris: SUNWhadbc,
Linux: sun-hadb-c) version <m.n.u-p>, the symlink
/opt/SUNWhadb/<m> is never touched once it exists. Thus, it
is possible that an orphaned symlink will exist.
Solution
Delete the symlink before install or after uninstall
unless in use.
|
|
6273681
|
Management agents in global and local zones may interfere.
On Solaris 10, stopping a management agent by using the ma-initd script
in a global zone stops the management agent in the local zone as well.
Solution
Do not install the management agent both in the global and local zone.
|
|
6275103
|
hadbm/ma should give a better error message when
a session object has timed out and deleted at MA.
Sometimes, a resource contention problem on the server may cause a management
client to become disconnected, When reconnecting, a misleading error message "hadbm:Error 22184: A password is required to connect to the management agent" may
be returned.
Solution
Check if there is a resource problem on the server, take proper action
(e.g., add more resources), and retry the operation.
|
|
6275319
|
Non-root users cannot manage HADB.
Installing with Java Enterprise System (as root) does not permit non-root
users to manage HADB.
Solution
Always login as root to manage HADB.
|
|
6293912
|
The Management Agent should not use special-use interfaces.
Special use interfaces with IP addresses like 0.0.0.0 should
not be registered as valid interfaces to be used for HADB nodes in the Management
Agent. Registering such interfaces may cause problems if HADB nodes are set
up on these interfaces by means of a user issuing a hadbm create command
using host names instead of IP addresses. The nodes will then be unable to
communicate, causing the create command to hang.
Solution
When using hadbm create on hosts with multiple interfaces,
always specify the IP addresses explicitly using DDN notation.
|
|
6291562
|
Reassembly failures on Windows.
On the Windows platform, with certain configurations and loads, there
may be a large number of reassembly failures in the operating system. The
problem has been seen with configurations of more than twenty nodes when running
several table scans (select *) in parallel. The symptoms
may be that transactions abort frequently, repair or recovery may take a long
time to complete, and there may be frequent timeouts in various parts of the
system.
Solution
To fix the problem, the Windows registry variable HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters can be set to a value higher than the default 100.
It is recommended that you increase this value to 0x1000 (4096). For more information, see. article 811003 from the Microsoft support pages.
|
|
6453946
|
Load balancer
plugin healthcheck generates a large number of connection/disconnection at
the background (load).
For health check purposes, a runDaemonMonitor thread performs connect/disconnect for every Application
Server listener. This can lead to connection saturation on Application Server.
Solution
A new attribute, monitor-interval-in-seconds, has been developed for the loadbalancer.xml file.
This attribute can be used to insert a pause between connect/disconnect events
in the case where hundreds of listeners are configure for the load balancer
plugin. Default pause value is 0.
|
Installation
This section describes known installation issues and associated solutions.
|
Bug ID
|
Summary
|
|
5009728
|
Installation shutdown hanging on some Linux systems after clicking the
"Finish" button.
This problem has been observed on several Linux systems. It is most
common on Java Desktop System 2 but has also been observed on Linux Red Hat
distributions.
After clicking the "Finish" button on the last installer screen, the
installer fails to launch a browser window containing the product About page
or product registration page, and hangs indefinitely, not returning the command
prompt.
Solution
Exit the installer by pressing Ctrl+C in the terminal
window in which the installer was started. After doing this, browser window
containing product About page or registration page will sometimes be launched,
but if it does not show up, start the browser and enter following URL in order
to review About page:
file://install_dir/docs-ee/about.html
|
If you also selected the installation option to register the product,
follow the link to registration page available on product About page.
|
|
6199697
|
On Windows, the imq directory needs to be created
during installation.
On Windows, immediately after installing Application Server Enterprise
Edition, the Message Queue broker fails on startup with a message saying the
directory drive:\as\domains\domain1\imq does not exist.
Note that if the broker is started after starting domain1,
the directory will be created by the Application Server and the problem will
not occur.
Solution
-
Create the var_home_dir_location before
creating the broker:
$imqbrokerd -varhome var_home_dir_location
|
For example:
$imqbrokerd -varhome D:\as\domains\domain1\imq
|
|
|
6297837
|
The Application Server installer shows the wrong product release date in
the product name, “Sun Java(TM) System Application Server Enterprise
Edition 8.1 2005Q4.”
Solution
The correct product name/date should read “Sun Java(TM) System
Application Server Enterprise Edition 8.1 2005Q2.”
|
|
6395605
|
In Application Server 8.1 Update 2 Patch-8(JES4), the patchadd and patchrm commands fail to add patch correctly in Solaris SPARC 10
(3/05 s10_74L2a).
Solution
Install Solaris SPARC 10 (1/06 s10s_u1wos_19) Update
1.
|
|
6396045
|
This version of Application Server does not support Network File System
(NFS).
|
|
6401383
|
When installing Application Server Enterprise Edition 8.1 Update 2 on Windows
using the Windows MSI installer, you cannot select an alternative installation
directory or alternative admin, HTTP, or HTTPS ports. For installation directory,
you can only choose the drive and three-letter directory name.
Solution
You cannot change the installation directory, but you can choose alternative
admin, HTTP, and/or HTTPS ports. To do this:
-
Install the Application Server with the Typical->Automatic
Config option.
This creates the default domain.
-
Stop all Application Server processes, and then delete the default
domain.
-
Recreate the domain using asadmin create-domain and ASConfigure.bat to enable the desired parameters.
|
|
6403477
|
After an incremental installation of Application Server, uninstallation fails.
Solution
Kill all Application Server processes and reboot the system, then run the
uninstallation script again.
|
J2EE Tutorial
To run the J2EE 1.4 Tutorial on the Sun Java System Application Server Enterprise Edition 8.1 2005Q2 perform
these tasks:
-
When you edit the file examples/common/build.properties as
described in the “About the Examples” section of the “About
this Tutorial” chapter, also change port 4848 to 4849.
-
When using Deploytool, add the server localhost:4849 before
deploying an example.
-
When using the Administration Console to create any resource,
use the Targets tab to specify the server as the target. If you use the command
line or an asant target, the server is the default target,
no further action is required.
Lifecycle Management
This section describes known lifecycle management issues and associated
solutions.
|
Bug ID
|
Summary
|
|
6193449
|
After setting the ejb-timer-service property
minimum-delivery-interval to 9000, an attempt to set the ejb-timer-service property redelivery-interval-in-mills to
7000 causes the set command to fail with the following error:
[echo] Doing admin task set
[exec] [Attribute(id=redelivery-interval-internal-in-millis) :
Redelivery-Interval (7,000) should be greater than or equal to
Minimum-delivery-interval-in-millis (9,000)]
[exec] CLI137 Command set failed.
|
-
minimum-delivery-interval is the minimal
interval duration between deliveries of the same periodic timer.
-
redelivery-interval-in-mills is the
time the timer service will wait after a failed ejbTimeout before
attempting redelivery.
The problem is that the logic that relates the redelivery interval property
to the minimum delivery property is incorrect and prevents you from using
the GUI or the CLI to set any value where the minimum delivery interval is
greater than redelivery interval.
The minimum-delivery-interval-in-millis must
always be set equal to or higher than ejb-timer-service property redelivery-interval-in-millis. The problem is that there is an
erroneous validation check in the Application Server to verify that the value
for redelivery-interval-in-millis is greater than the
value for minimum-delivery-interval-in-millis.
Solution
Use the default values for these properties, as follows:
minimum-delivery-interval(default)=7000
redelivery-interval-in-millis(default)=5000
|
Values other than these defaults will generate an error.
|
Logging
This section describes known logging issues and solutions.
|
Bug ID
|
Summary
|
|
6180095
|
Setting debug statement for access,failure causes
hanging in Application Server startup.
Setting the java.security.debug option for the JVM
will cause the server instance startup to freeze with a deadlock; for example,
setting the following in domain.xml causes the problem:
<jvm-options>-Djava.security.debug=access,failure</jvm-options>
|
None at this time. Please avoid setting this flag.
|
Message Queue
This section describes known Java message queue issues and associated
solutions.
|
Bug ID
|
Summary
|
|
6173308, 6189645, 6198481, 6199510, 6208728
|
JMS reconnection does not successfully complete in certain cases that
are timing dependent.
Failures to reconnect in timing-dependent scenarios can be caused by
several problems.
Solution
You can work around these problems by:
|
|
6198465
|
Asynchronous message listener behavior changed in appclient from
8.0 to 8.1 Update 2.
Due to a recent change, when an asynchronous message listener is the
only live thread in the app-client container, the remaining appclient virtual machine exists as a daemon. This behavior is
a regression for past applications that perform asynchronous receives in ACC.
This problem affects application clients that set a JMS message listener and
exit the main thread.
Solution
Do not exit the main thread. Wait for the message listener to notify
the main thread before terminating the main thread.
|
Monitoring
This section describes known monitoring issues and associated solutions.
|
Bug ID
|
Summary
|
|
6174518
|
Some of the HTTP Service monitoring statistics do not present useful
information and should be ignored.
When viewing the monitoring statistics of some elements of the HTTP
Service, some values presented do not correspond to current values or are
always 0. Specifically, the following HTTP Service statistics do not present
information applicable to the Application Server, and should be ignored:
Solution
These monitors will be removed in future releases and replaced with
more appropriate information.
|
|
6191092
|
Monitoring MBean for an undeployed EJB module is not removed, even though
all statistics under that monitoring name are moved.
For example:
EJBModuleMonitorMap().size() = 1 eventhough ejb module is undeployed
EJBModuleMonitor().getName() = sqe_ejb_s1_01
|
This true for both EJB modules and applications. Both programmatically
(through MBean API) and through asadmin list/get, an empty
monitoring MBean still exists.
Diagnostics
asadmin list -m "server.applications" shows the following output:
server.applications.MEjbApp
server.applications.__ejb_container_timer_app
server.applications.adminapp
server.applications.admingui
server.applications.com_sun_web_ui
server.applications._export_install_nov-11_domains_domain1_applications
_j2ee-modules_sqe_ejb_s1_01
|
You can look at statistics:
bin/asadmin list -m "server.applications._export_install_nov-11_
domains_domain1_applications_j2ee-modules_sqe_ejb_s1_01"
server.applications._export_install_nov-11_domains_domain1_
applications_j2ee-modules_sqe_ejb_s1_01.SQEMessageserver.
applications._export_install_nov-11_domains_domain1_applications_
j2ee-modules_sqe_ejb_s1_01.TheGreeter
|
Once you undeploy:
_export_install_nov-11_domains_domain1_applications_j2ee-modules_
sqe_ejb_s1_01
|
If you do a list command, you still see the application:
asadmin list -m "server.applications"
server.applications.MEjbApp
server.applications.__ejb_container_timer_app
server.applications._export_install_nov-11_domains_domain1_
applications_j2ee-modules_sqe_ejb_s1_01
server.applications.adminapp
server.applications.admingui
server.applications.com_sun_web_ui
|
but it does not contain any monitoring statistics:
asadmin list -m "server.applications._expo
rt_install_nov-11_domains_domain1_applications_j2ee-modules_
sqe_ejb_s1_01"
Nothing to list at server.applications.-export-install-nov-
11-domains-domain1-applications-j2ee-modules-sqe-ejb-s1-01.
|
To get the valid names beginning with a string, use the wildcard (`*') character. For example, to list the names of all the
monitorable entities that begin with server, use list "server.*".
Solution
This is harmless. Module can be safely redeployed with out any problems.
The root monitoring Mbean is not removed, but it is empty.
|
PointBase
This section describes known and associated solutions related to PointBase.
|
Bug ID
|
Summary
|
|
6184797
|
Setting the isolation levels on a connection pool for an application
causes exceptions in PointBase.
For a JDBC connection pool pointing to a PointBase database installation,
setting the transaction-isolation-level pool attribute to any value other
than the default (Connection.TRANSACTION_READ_COMMITTED)
causes an exception. However, setting this same parameter to non-default values
for pools pointing to other databases does not throw an exception.
Solution
For a JDBC connection pool pointing to a PointBase database installation,
do not attempt to set the transaction-isolation-level.
|
|
6204925
|
PointBase throws an exception if a network server and embedded drivers
are used together.
The bundled PointBase sometimes throws an exception if the network server
driver and the embedded driver are simultaneously used.
Solution
Use either the embedded driver or the network server driver, but not
both.
|
|
6264969, 6275448
|
Upgrade problem where the default PointBase database is overwritten.
When upgrading to Application Server Enterprise Edition 8.1 2005Q2 Update 2,
the Update release patch overwrites the Pointbase default database.
Solution
Recreate or re-enter any scheme or data that existed prior to the upgrade.
If you deployed applications with CMP beans with the generate table option,
you must undeploy or redeploy the application to have the tables regenerated.
|
Samples
This section describes known and associated solutions related to the
sample code included with the Application Server 8.1 product.
|
Bug ID
|
Summary
|
|
6195092
|
On Windows, setup-one-machine-cluster hangs but works on Solaris; mqfailover requires Ctrl+C to cancel
and then must be re-run.
From install_dir\samples\ee-samples\failover\apps\mqfailover\docs\index.html, if you run the following commands:
-
Console 1
cd install_dir\samples\ee-samples asant start-mq-master-broker1
|
-
Console 2
cd install_dir\samples\ee-samples asant start-mq-cluster-broker1
|
-
Console 3
cd install_dir\samples\ee-samples asant start-mq-cluster-broker2
|
-
Console 4
cd install_dir\samples\ee-samples asadmin start-domain domain1
|
If you have already executed asant setup-one-machine-cluster-without-ha or asant setup-one-machine-cluster-with-ha for
any other Enterprise Edition sample, then execute asant configure-mq otherwise
execute asant setup-one-machine-cluster-and-configure-mq.
In this case, the command appears to succeed:
start_nodeagent: [echo] Start the node agent cluster1-nodeagent
[exec] Command start-node-agent executed successfully.
|
But then the system hangs indefinitely.
Solution
None at this time. This problem similarly affects all Enterprise Edition
samples that use this ant target on Windows. A workaround is to Ctrl+C out of the hung process and then rerun it.
|
|
6198003
|
Documentation does not explicitly state that you need to create JMS
resources before running the MQ Failover Sample Application following the asadmin deploy instructions.
The error thrown is as follows:
/opt/SUNWappserver/domains/domain1/config/sun-acc.xml -name
MQFailoverTestClient -textauth -user j2ee -password j2ee
Nov 18, 2004 10:50:17 PM com.sun.enterprise.naming.NamingManagerImpl
bindObjects
SEVERE: NAM0006: JMS Destination object not found: jms/durable/TopicA
Nov 18, 2004 10:50:18 PM com.sun.enterprise.naming.NamingManagerImpl
bindObjects
SEVERE: javax.naming.NameNotFoundException
javax.naming.NameNotFoundException
|
The documentation does not explicitly state that JMS resources must
be manually created if manual deployment is done using asadmin deploy commands,
and that the provided ant targets to deploy the sample application should
be used.
Solution
Use the asant deploy target for the build.xml script,
which creates the required JMS resources to run the application.
|
|
6198239
|
On Linux, a runtime error is displayed during certificate creation in
web services/security samples.
When deploying the install_dir/samples/webservices/security sample (basicSSl) on Linux, the
certificate is not created and an error similar to the following is thrown:
generate_certs: [echo] ***Exporting certificate from NSS database
[exec] Result: 1 [echo] ***Generating Java Keystore from generated
certificate
[exec] keytool error: java.lang.Exception: Input not an X.509
certificate [exec] Result: 1 [echo] ***Generating Java trust store
from generated certificate
[exec] keytool error: java.lang.Exception: Input not an X.509 certificate
[exec] Result: 1
.
.
.
generate_certs: [echo] ***Exporting server certificate from NSS database
to a PKCS12 certificate file
[exec] /opt/sun/appserver/lib/pk12util: /usr/lib/libnss3.so: version
`NSS_3.9' not found (required by /opt/sun/appserver/lib/pk12util)
[exec] /opt/sun/appserver/lib/pk12util: /usr/lib/libnss3.so: version
`NSS_3.6' not found (required by /opt/sun/appserver/lib/pk12util)
[exec] /opt/sun/appserver/lib/pk12util: /usr/lib/libnss3.so: version
`NSS_3.7' not found (required by /opt/sun/appserver/lib/pk12util)
[exec] Result: 1
|
The problem is that NSS libraries are in different locations on Linux
installations than on Solaris installations. You need to make sure that the LD_LIBRARY_PATH points to the proper NSS libraries when deploying
on Linux. Either set LD_LIBRARY_PATH in your environment,
or set it in the install_dir/bin/asant shell
wrapper script.
Solution
Do one of the following:
|
Security
This section describes known issues and associated solutions related
to Application Server and web application security and certificates.
|
Bug ID
|
Summary
|
|
6183318
|
Cannot run WebServiceSecurity applications
on Enterprise Edition with J2SE 5.0.
WebServiceSecurity applications cannot run with J2SE
5.0 because:
The J2SE team has filed "CR 6190389: Add support for the RSA-PKCS1 and
RSA-OAEP wrap/unwrap mechanisms" for this bug.
Solution
Use J2SE 1.4.2 with any other JCE provider (not the one included by
default). Note that hardware accelerator support will not be present in this
configuration.
|
|
6269102
|
SSL termination is not working; when Load Balancer (Hardware) is configured
for SSL termination, the Application Server changes the protocol from https to http during redirection.
Solution
Add a software load balancer between the hardware load balancer and
the Application Server.
|
Upgrade Utility
This section describes known Upgrade utility issues and associated solutions.
|
Bug ID
|
Summary
|
|
6165528
|
Domains created in custom-path other than install_dir/domains directory are not upgraded directly while
upgrading from Application Server Enterprise Edition 8 to Application Server
Enterprise Edition 8.1.
When running the Upgrade Utility and identifying the install_dir as the source installation directory,
the upgrade process upgrades only those domains that are created under install_dir/domains directory. Domains created in
other locations are not upgraded.
Solution
Before starting the upgrade process, copy all the domain directories
from their different locations to the install_dir/domains directory.
|
|
6207337
|
On some Linux systems, the installer running "Upgrade in place" fails
to start upgrade tool after clicking on the "Start Upgrade Wizard" button.
This problem has been observed on several Linux systems, it is most
common on Java Desktop System 2 but has also been observed on Red Hat distributions.
After clicking the "Start Upgrade Tool" button on the final installer
screen, the installer fails to launch the upgrade tool to complete the upgrade
process, and hangs indefinitely, not returning the command prompt.
Solution
This issue is not encountered if command line installation mode is used
to run upgrade in place.
-
If you ran upgrade in place in GUI mode and encountered this
problem, exit the installer by pressing Ctrl+C in the terminal window in which
the installer was started.
-
Start upgrade tool from the terminal window, using following
command:
install_dir/bin/asupgrade --source install_dir/domains --target
install_dir --adminuser adminuser --adminpassword adminpassword
--masterpassword changeit
|
adminuser and adminpassword should
match the values used for the installation you are upgrading.
-
When the upgrade tool completes the upgrade process you can
also start the browser and enter following URL in order to review About page:
file://install_dir/docs-ee/about.html
|
If you also selected the installation option to register the product,
follow the link to registration page available on product About page.
|
|
6296105
|
Self-signed certificate is not trusted during and after upgrade from
8.0 Platform Edition (PE) to 8.1 Enterprise Edition (EE) UR2.
Solution
Remove the following entries from the target domain.xml (after
the upgrade) and restart the server:
<jvm-options>-Djavax.net.ssl.keyStore=${com.sun.aas.instanceRoot}
/config/keystore.jks</jvm-options>-
<jvm-options>Djavax.net.ssl.trustStore=${com.sun.aas.instanceRoot}
/config/cacerts.jks</jvm-options>
|
|
6331685
|
Document externalizing Domain, Agent directory as workaround for file-based
installer full reinstall.
For every file-base install patch, it is often necessary to reconfigure
and redo or redeploy all applications. This is a time-consuming and error-prone
procedure.
Solution
Externalize the DAS, NodeAgent, HADB, and MQ instance from the subdirectory
or path of the AS8.1 installation to avoid having to perform a full reinstall.
For example, to externalize the DAS domain to /work/jnditest:
./asadmin create-domain --domaindir /work \
--adminport 7878 --adminuser admin --instanceport 7870 jnditest
|
To externalize the Node Agent to /work/nagent:
./asadmin create-node-agent --agentdir=/work \
--port 7878 --host $dashost --user admin nagent
|
Finally, to start the externalized DAS:
./asadmin start-domain --domaindir /work -u admin jnditest
|
|
|
6436590
|
Uninstalling AS7.x that is coexisting with JES causes JES appserver
to fail.
Uninstalling Application Server 7.x causes all components
installed with it to be removed. Subsequently upgrading to Application Server 8.x causes that installation to fail because some of the components
on which it depends are missing.
Solution 1
Do not uninstall Application Server 7.x before installing
8.x.
Solution 2
Use pkgrm SUNWas* to manually uninstall packages belonging to Application Server 7.x. For example:
8 - system SUNWasaco Sun Java System Application Server Admin Client, unbundled
10 - system SUNWascmlo Sun Java System Application Server Shared Libraries, unbundled
13 - system SUNWascmo Sun Java System Application Server unbundled (common)
17 - system SUNWasdmo Sun Java System Application Server Sample Applications, unbundled
18 - system SUNWashaco Sun Java System Application Server Admin Client Extension,
unbundled
20 - system SUNWashdmo Sun Java System Application Server HA Sample Applications,
unbundled
21 - system SUNWashmano Sun Java System Application Server Extension Manual Pages
22 - system SUNWasho Sun Java System Application Server HA Extension, unbundled
26 - system SUNWasmano Sun Java System Application Server Standard Manual Pages
27 - system SUNWaso Sun Java System Application Server, unbundled (opt)
28 - system SUNWasro Sun Java System Application Server, unbundled (root)
|
Note that if you use this method, you may need to use prodreg
unregister to cleanup stale entries in productregistry.
|
Web Container
This section describes known web container issues and associated solutions.
|
Bug ID
|
Summary
|
|
5004315
|
On Windows, deploying an application using --precompilejsp=true can
lock JAR files in the application, causing later undeployment or redeployment
to fail.
If you request precompilation of JSPs when you deploy an application
on Windows, later attempts to undeploy that application or to redeploy it
(or any application with the same module ID) will not work as expected. The
problem is that JSP precompilation opens JAR files in your application but
does not close them, and Windows prevents the undeployment from deleting those
files or the redeployment from overwriting them.
Note that undeployment succeeds to a point, in that the application
is logically removed from the Application Server. Also note that no error
message is returned by the asadmin utility, but the application's
directory and the locked jar files remain on the server. The server's log
file will contain messages describing the failure to delete the files and
the application's directory.
Attempts to redeploy the application after undeploying fail because
the server tries to remove the existing files and directory, and these attempts
also fail. This can happen if you try to deploy any application that uses
the same module ID as the originally deployed application, because the server
uses the module ID in choosing a directory name to hold the application's
files.
Attempts to redeploy the application without undeploying it first will
fail for the same reasons.
Diagnostics
If you attempt to redeploy the application or deploy it after undeploying
it, the asadmin utility returns an error similar to the one below.
An exception occurred while running the command. The exception message is:
CLI171 Command deploy failed : Deploying application in domain failed;
Cannot deploy. Module directory is locked and can't be deleted.
|
Solution
If you specify --precompilejsps=false (the default setting)
when you deploy an application, then this problem will not occur. Be aware
that the first use of the application will trigger the JSP compilation, so
the response time to the first request will be longer than for later requests.
Note also that if you do precompile, you should stop and restart the
server before undeploying or redeploying the application. The shutdown frees
the locked JAR files so the undeployment or redeployment after the restart
can succeed.
|
|
6172006
|
Unable to deploy WAR with Servlet 2.4-based web.xml that
contains an empty <load-on-startup> element.
The optional load-on-startup servlet element in a web.xml indicates
that the associated servlet is to be loaded and initialized as part of the
startup of the web application that declares it.
The optional content of this element is an integer indicating the order
in which the servlet is to be loaded and initialized with respect to the web
application's other servlets. An empty <load-on-startup> indicates
that the order is irrelevant, as long as the servlet is loaded and initialized
during the startup of its containing web application.
The Servlet 2.4 schema for web.xml no longer supports
an empty <load-on-startup>, meaning that an integer
must be specified when using a Servlet 2.4 based web.xml.
If specifying an empty <load-on-startup>, as in <load-on-startup/>, the web.xml will fail
validation against the Servlet 2.4 schema for web.xml,
causing deployment of the web application to fail.
Backwards compatibility issue. Specifying an empty <load-on-startup>
still works with Servlet 2.3 based web.xml.
Solution
Specify <load-on-startup>0</load-on-startup> when
using a Servlet 2.4 based web.xml to indicate that servlet
load order does not matter.
|
|
6184122
|
Unable to compile JSP page on resource constrained servers.
The JSP page is accessed but fails to compile, and the server log contains
the error message "Unable to execute command" with the following stack trace:
at org.apache.tools.ant.taskdefs.Execute$Java13CommandLauncher.exec
(Execute.java:655) at org.apache.tools.ant.taskdefs.Execute.launch
(Execute.java:416) at org.apache.tools.ant.taskdefs.Execute.execute
(Execute.java:427) at org.apache.tools.ant.taskdefs.compilers.
DefaultCompilerAdapter.executeExternalCompile(DefaultCompilerAdapter.
java:448) at org.apache.tools.ant.taskdefs.compilers.JavacExternal.
execute(JavacExternal.java:81) at org.apache.tools.ant.taskdefs.
Javac.compile(Javac.java:842) at org.apache.tools.ant.taskdefs.Javac.
execute(Javac.java:682) at org.apache.jasper.compiler.Compiler.
generateClass(Compiler.java:396)
|
Solution
Set the JSP compilation switch "fork" to "false."
This can be done either of two ways:
-
Globally, by setting the fork init parameter of the JspServlet
in ${S1AS_HOME}/domains/domain1/config/default-web.xml to
false:
<servlet> <servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
.... <init-param>
<param-name>fork</param-name> <param-value>false</param-value>
</init-param> .... </servlet>
|
-
On a per-web application basis, by setting the fork JSP configuration
property in sun-web.xml to false:
<sun-web-app> <jsp-config> <property name="fork" value="false" />
</jsp-config> </sun-web-app>
|
Either setting will prevent ant from spawning a new process for javac compilation.
|
|
6188932
|
Application Server does not support auth-passthrough Web
Server 6.1 Add-On.
The Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Update 2 adds
support for the functionality provided by the auth-passthrough plugin
function available with Sun Java System Application Server Enterprise Edition 7.1. However,
in Application Server Enterprise Edition 8.1 2005Q2 Update 2, the auth-passthrough plugin feature is configured differently.
The auth-passthrough plugin function in Application Server Enterprise Edition 7.1
has been useful in two-tier deployment scenarios, where:
In such network architectures, a client connects to a front-end web
server, which has been configured with the service-passthrough plugin
function and forwards HTTP requests to the proxied Application Server instance
for processing. The Application Server instance can only receive requests
from the web server proxy, but never directly from any client hosts. As a
result of this, any applications deployed on the proxied Application Server
instance that query for client information, such as the client's IP address,
will receive the proxy host IP, since that is the actual originating host
of the relayed request.
In Application Server Enterprise Edition 7.1, the auth-passthrough plugin
function could be configured on the proxied Application Server instance in
order to make the remote client's information directly available to any applications
deployed on it; as if the proxied Application Server instance had received
the request directly, instead of via an intermediate web server running the service-passthrough plugin.
In Application Server Enterprise Edition 8.1 2005Q2 Update 2, the auth-passthrough feature may be enabled by setting the authPassthroughEnabled property
of the <http-service> element in domain.xml to
TRUE, as follows:
<property name="authPassthroughEnabled" value="true"/>
|
The same security considerations of the auth-passthrough plugin
function in Application Server Enterprise Edition 7.1 also apply to the authPassthroughEnabled property in Application Server Enterprise Edition 8.1 2005Q2 Update 2.
Since authPassthroughEnabled makes it possible to override
information that may be used for authentication purposes (such as the IP address
from which the request originated, or the SSL client certificate), it is essential
that only trusted clients or servers be allowed to connect to an Application Server Enterprise Edition 8.1 2005Q2 Update 2 instance
with authPassthroughEnabled set to TRUE. As a precautionary
measure, it is recommended that only servers behind the corporate firewall
should be configured with authPassthroughEnabled set to
TRUE. A server that is accessible through the Internet must never be configured
with authPassthroughEnabled set to TRUE.
Notice that in the scenario where a proxy web server has been configured
with the service-passthrough plugin and forwards requests
to an Application Server 8.1 Update 2 instance with authPassthroughEnabled set to TRUE, SSL client authentication may be enabled on the web
server proxy, and disabled on the proxied Application Server 8.1 Update 2
instance. In this case, the proxied Application Server 8.1 Update 2 instance
will still treat the request as though it was authenticated via SSL, and provide
the client's SSL certificate to any deployed applications requesting it.
|
|
6332486
|
Developers Guide References NetBeans 3.6 for Debugging with IDE, should
be upgraded to 4.1 or later scenario.
The Using an IDE in Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Developer’s Guide section of the Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Developer’s Guide describes using the NetBeans 3.6
IDE for debugging, but it should instead provide instructions for NetBeans
4.1 or later. For instructions on using a later version than NetBeans 3.6,
see the Using an IDE in Sun Java System Application Server Enterprise Edition 8.2 Developer’s Guide section
of the Sun Java System Application Server Enterprise Edition 8.2 Developer’s Guide.
|
|