Frequently asked questions (FAQ) about NAS 4.0 are available at http://help.netscape.com/faqs/appsvr4x.html
The following table lists native drivers certified to run on NAS 4.0, SP6.
Database Server | Database Client (Solaris 2.6, 2.8) |
Oracle 8.0.6 | Oracle 8.0.6 client in compatibly mode
using OCI 7.x
(SQL3 blobs and CLOB calls are not supported) |
Sybase 11.9.2 | Sybase Open/Client System 11.1.1 |
Informix 9.2 (+7.3) | Informix Client SDK 2.40 |
SQL Server 6.5 | ODBC 3.5.2 and 3.60 |
DB2 7.1 | DB2 Client 6.1, 7.1 |
Interface | Web Server |
NSAPI | iPlanet Web Server, 4.1 SP7 |
ISAPI | Microsoft Internet Information Server 4.0 (NT only) |
Apache | Equivalent to Apache Web Server 1.3.9
(Solaris 8 ONLY Apache Webserver version 11.8 on Solaris)
Note: Apache support files are included on the CD but not integrated into the installation |
To locate these guides, use the following iPlanet web site: http://docs.iplanet.com/docs/manuals/nas.html
Adobe Acrobat 4.0 and PostScript printer with PS level 2 fonts are required to print the PDF version.
For previous product documentation please visit the iPlanet web site above.
The NAS Transaction Manger can run either global or local Container Managed Transactions (CMT). The NAS Transaction Manager cannot run both global and local CMT's in the same NAS instance. If the NAS instance is set for global CMT's then only datasources that have a resource manager will be managed by the container. If the NAS instance is set for local CMT's then all datasources can be managed by the container.
Programmer's Guide (Java) The Programmer's Guide (Java) contains a couple of documentation errors, as follows:For example, the following JSP scriptlet
generates an IllegalStateException because the JSP contained the scriptlet
:
<% RequestDispatcher dispatcher
= getServletContext().getRequestDispatcher("/ResourceStream/Simple2.jsp");
dispatcher.forward(request, response);
%>
The compiled code for the "service" method is:
public void service (HttpServletRequest
request,HttpServletResponse response)
throws ServletException, IOException
{
PrintWriter out = response.getWriter
();
BufferedReader in = request.getReader();
Throwable exception = (Throwable)request.getAttribute("exceptionBean");
out.write(_buf,0,143);
// file: ResourceStream/Simple1.jsp
line: 3
RequestDispatcher dispatcher =
getServletContext().getRequestDispatcher("Simple2.jsp");
dispatcher.forward(request, response);
out.write(_buf,281,20);
out.flush();
}
Tthe output stream is obtained in the line:
PrintWriter out = response.getWriter ();
This line is required for the current JSP to print its output to the browser and is also required by the JSP .092, 1.0 and 1.1 specs.
Also, the following code in a servlet method
generates the same exception:
PrintWriter out = res.getWriter();
out.println(" Making a Call
to Second servlet ");
RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/ResourceStream/Simple2.jsp");
dispatcher.forward(req,res);
out.println(" back in first servlet
");
Resolve the problem in one of two ways:
1) Use "include" instead of "forward". This is actually widely recommended for the problem described above.
2) Instead of placing the code (scriptlet) in the JSP, place it in a servlet method which does the forwarding. In this case, avoid using "getOutputStream" or "getWriter" because again it generates the IllegalStateException.
Example:
public void defaultAction(HttpServletRequest
req, HttpServletResponse res)
throws ServletException,
IOException
{
res.setContentType("text/html");
RequestDispatcher dispatcher =
getServletContext().getRequestDispatcher("/ResourceStream/Simple2.jsp");
dispatcher.forward(req,res);
}
Note that with all important global transactions,
there can be different vendor databases each with a different default transaction
isolation level. Therefore, this call has no meaning to global transactions
and iPlanet has no choice but to return TRANSACTION_NONE. JDBC knows nothing
about local and global connections. Also note, that whatever your database
default txn isolation level is, that is the one the iPlanet Application
Server uses for its JDBC connections unless you change it with an explicit
call to setTransactionIsolationLevel(). This means the MSDTC-MSSQl
server combination cannot handle the crucial execute query statement without
an explicit READ_COMMITTED. ORACLE does not need this additional help.
ID | Summary |
387913 | NAS Plugin has problems with Custom Headers being passed. |
390608 | warning: EVENT-004: no bits left to use for this thread. |
393560 | A cookie disabled:<href> was getting appended with the session id. |
396355 | While under load, Sybase database not returning all rows. |
398283 | Added support of Informix client 2.40 |
513070 | java.sql.ResultSet.beforeFirst() result incorrect output after returning 400th row. |
513368 | Memory leak fix with com.kivasoft.data2.JDBCResultSetMetaData |
513515 | The servlet 2.2 specs, getParameterValues() returns an array of String objects containing all the parameter values associated with ONE parameter name. For example a parameter named HTTP_TEST1, can have zero, one or more values which would be returned by getParameterValues("HTTP_TEST1") |
515997 | kxs coring while trying to lock a GXDSyncNode |
516475 | Rollback with Container Managed Local Transactions |
517048 |
Added an optional parameter called 'CacheOption' for Servlet ntv files. This is for the timeout based on the creation time functionality. CacheOption will have the following values:
|
517341 | Allow the installer to install NAS 40 SP5 with iWS 4.1 |
518581 | After LDAP failover, if kjs core dump occurs, kjs cannot wake up. |
518877 | Encryption between the WebConnector and the KXS does not work. 1. Manually register the crypt128.gxr file ( kreg -q crypt128.gxr ) This file would be in [NAS_INSTALL]/nas/registry on Solaris and [NAS_INSTALL]/nas/bin/ on WinNT 2. Set CCS0\\SECURITY\\EnableEncryption=D ( for Domestic 128 bit) 3. Create CCS0\\SECURITY\\LogEncryption=1 4. Createthe key CCS0\\EXTENSIONS\\CRYPTEXT\\CRYPTSVC\\ENGINES\\0 5. Set "encrypt" Str "y", in nsFortune.ntv file and do a servletreg on the appInfo.ntv file. You will notice that the registry entry under \\CLASSDEF\\Servlet-GUID\\SecurityFlags=1 6. Restart NAS and restart the webserverthe encrypt/decrypt messages will appear in the kxs log when running nsFortune |
519445 | LOADB-040 - warning is misleading - |
520160 | URL rewriting patch for WML does not rewrite WML HREF's correctly. |
520242 | Plug in with webconnector logs was recording messages twice. |
520583 | Kxs Engine Crashing in cluster. |
521228 | moveTo method in IResultSet interface fixed. |
523237 | Kxs Engine Crashing in cluster with Oracle as database. |
523709 | Applogic Multi Select Box input delimiter changed from ; to ^~^ |
523760 | Log rotation out of synch from output generated with system.out.println. |
524901 | Update JSP classloader. |
526395 | Segmentation fault with database access. |
527474 | NAS40Sp5 corrupts target page URL's by prepending string GXHC_gx_session_id_blahblah=fffffffffff. |
527922 | Session data getting truncated from array. |
529822 | IAppEnent Interface problem |
532419 |
|
532591 | Using Oracle806 client, executeUpdate does not return update count (JDBC executeUpdate) correctly with datatype having LONG. |
533245 | Oracle client crashing client rather then throwing exception. |
533493 |
PreparedStatement cannot bind LONG datatype. |
533245 | Oracle client crashing client rather then throwing exception. |
533494 |
getString() for LONG datatype returns Garbage or NULL |
Known Problems
NAS 4.0 SP6:
This section describes the known problems for NAS 4.0 SP6.
[386016] Mixing client side JavaScript tags and JSP tags in the same page is not recommended. JSP compilation exceptions may be thrown.
[529734] Installation instructions for Apache Plugin.
Apache Webserver bundled with Solaris 2.8:
Admin Server Not Coming Up After Registering Servlet
Registration problems occurs when defining servlets in ntv file without some parameters. These optional fields are not really optional, and cause the NAS admin server to hang. To workaround this problem provide a complete definition of ntv file:
"descr" Str "Test servlet",
"group" StrArr [ "TestServlet" ],
"guid" Str "{91dfbcba-8b13-11d3-b9f5-00108334167f}",
"acl" StrArr [ ]
},
"ServletRunnerInfo" NTV {
"ServletClassPath" Str "TestServlet.Test"
},
"ServletData" NTV {
"defaultTemplate" Str "TestServlet/TestServletJSP.jsp"
}
This problem is occasionally seen under
certain conditions while debugging applications with Visual Cafe along
with
Application builder. It only occurs when
trying to debug or set a break point on an EJB code during development
(not
production) with Visual Cafe in certain
systems.
Hot Deploy
Under high load the output of JSP execution
may be corrupted when a modified version of the same JSP is deployed.
Do not hot deploy in production systems.
Restart the server after a new version of the application components is
rolled
into production. This problem occurs rarely
and will be corrected in a future release.
JSP Compilation Exceptions
Mixing client side JavaScript tags and
JSP tags in the same page is not recommended. JSP compilation exceptions
may be thrown.
LDAP Failover
This has been fixed in NAS 4.0 SP4, however the failover may take 3-5 minutes.
Multiple Result Sets Are Not Supported
Netscape Application Server Does Not Appear in the Console
This problem is occasionally seen when
the domain name is not properly registered, or the NAS installer fails
to find the
domain name. To prevent this, set the
domainname variable in the shell before the product is installed.
Online Bank 4.0 Sample Application Does Not Work
LDAP may not have initialized with the
Bank user information during installation. This behavior has been noticed
in some cases, and
user gets an authentication error while
executing the application. To workaround, manually load this information
from the
BankUser.ldif file using the ldapmodify
command. Make sure that this file is edited properly with the correct domain
information.
Problem Inserting Rows
NAS has problems inserting rows when running
in international mode with the Oracle client configured with Legacy and
the
database server configured to with UTF-8.
Workaround: configure both the Oracle client and the database server
with either
Legacy or UTF-8.
ResultSet Returned by DatabaseMetaData.getColumns( ) Sometimes Not Fully Populated
This occurs on very large database tables
containing more than 300 columns when used with NAS default database driver.
To
work around this problem, use Oracle Native
drivers (jdbc thin drivers - type 4). The steps for making Oracle JDBC
drivers work with NAS 4.0
are listed below in the section Using
Oracle Thin Drivers.
Using Oracle Thin Drivers
To work around this problem, try using setbytes.
setEvent Does Not Work As Expected
After enabling events in particular sequence of disabling, enabling, and setting of events. Do not work with events in this sequence.
SQL3 Blobs and CLOB Calls Are Not Supported with NAS 4.0
If you have problems with Netscape Application Server, contact iPlanet customer support using one of the following mechanisms:
So that we can best assist you in resolving problems, please have the following information available when you contact support:
Useful iPlanet information can be found at the following Internet locations:
Use of Netscape Application Server is subject to the terms described in the license agreement accompanying it.
Copyright © 2001 Sun Microsystems, Inc. Some preexisting portions Copyright © 2001 Netscape Communications Corp. All rights reserved.
Last Updated May 14, 2001