Resolved CRs for WLS 5.1.0

Service Pack 1
Service Pack 2
Service Pack 3
Service Pack 4
Service Pack 5
Service Pack 6
Service Pack 7
Service Pack 8
Service Pack 9
Service Pack 10
Service Pack 11
Service Pack 12
Service Pack 13

Service Pack 1

CR 9488/9459/9512:
Fixed a problem with clients not registering sockets correctly. The problem arose with Solaris' native muxer. When a connection was initiated, the side doing the initiating never registered the socket performing this task with the socket readers. The problem originated in a logic flaw in the determination of whether or not the socket is closed. This is done in the JVMSocketT3 class before the socket is registered.

CR 9665:

CR 9731:
Fixed an IOException in SSL. The problem was located in the native RSA's implementation of the RSA algorithm. A NullPointerException was being thrown while trying to benchmark SSL performance. This exception occurred when SSL was configured to native.

CR 9737 & 10117:
Fixed a problem with Verisign's global server id. Global Server ID needed testing to be done and changes to be made accordingly. This was an integration issue.

CR 9879:
Fixed a problem with NoSuchObjectException being thrown under concurrent entity access. When one client had access to pk-1 and was thrown an exception, NoSuchObjectException was thrown to any client waiting on the lock for access to pk-1. Essentially the bean was being removed from the container, and therefore not available to the next client on the lock.

CR 9902:
Fixed a problem with EJBC and spaces in the classpath. The problem occurred because, in EJBC, space characters were appearing in classpaths. Some string operations were placing these unwanted characters in the classpaths.

CR 9936:
Fixed a problem with debug messages being printed by default in servlets and socket communications. A SocketException was thrown while holding the refresh button on a browser. Exceptions were being thrown by default in MuxableSocketHTTP and ListenThread.

CR 9999:
Fixed a post-compilation problem with postStoreGeneration. Since some vendors postprocess the byte codes generated from compilation, compilation must occur before the call of postStoreGen. For information on applying this fix, follow this link to additional details.

CR 10032:
Fixed a problem with immediately rolling back transactions which have been marked for rollback. These rollbacks were being held for an extra 60 seconds if the transactions were not in the active state. If a bean was marked rollbackOnly, the rollback call returned immediately, but the actual rollback took 60 seconds to occur.

CR 10132:
Fixed an IOException exception that was being raised in FileServlet when serving multiple requests

CR 10138:
Fixed a problem with some broken casts in the JDBC20 jts driver. The jts connection class was being used to cast dbms connections, rather than giving itself as the argument to the cast call.

CR 10149:
Fixed a problem where debuggers were not notified of dynamic class loads. Debugging from different platforms into the WebLogic Server required forcing the loading of the class before setting a breakpoint that will be hit, and cycling the server every time a class is changed. Essentially, tools needed access to an alert that warns of classes being dynamically loaded.

CR 10159:
Fixed the rewriting of empty tags and namespaces which caused problems for XSL in combination with JSP

CR 10170:
Fixed a problem with WebApp formauth. The authorization checking for webapps requires credentials for everything that has a <login-config> tag. Authorization checking should only require credentials for those with <security-constraint>s containing something of the form <url-pattern>/.../*</url-pattern>.

CR 10173:
Fixed a problem with server-side stub clustering. Server-side stubs were not being recognized as clusterable by the replica-aware stub framework. EJBs that are deployed using call-by-value rather than call-by-reference could not be clustered. In the case where call-by-value EJBs were used, ConflictHandler messages were logged.

CR 10175:
Fixed a problem where an entire JSP file within a tag extension caused the compilation to fail

CR 10186:
Fixed a problem with runtime evaluated attributes failing to compile when %lt;%=%%gt; is used instead of <%=%> for XML compliance

CR 10194:
Allowed for isolation to be set in Session and Bean Managed Entity Beans. With a change in the spec, EJB isolation level moved to cmp specific files. This posed the problem of setting isolation for bmp EJBs. Another side-effect of this change was that the setting of the isolation level was changed from that of a per method basis to that of a per bean basis.

CR 10214:
Fixed a problem with encoding when dealing with post data that is a form. The problem was with WAP. The server was not taking encoding into account when checking to see whether post data is a form.

CR 10340:
Fixed a rebuild problem with taglib/jsp. Customers using "old style" tags were having problems because 5.1.0 did not support these tags.

Service Pack 2

CR 8463:
Fixed a problem where ejbc silently accepted the lack of a weblogic-ejb-jar.xml file. The pertinent code did not throw an exception when the search for a file was unsuccessful. This caused additional problems in that, if the weblogic-ejb-jar.xml file was not found, the system would set all properties to defaults without alerting the user.

CR 9282:
Fixed a problem with EJB deployer element detail view not tracking the selected element correctly. The problem was in the JDK used, which was throwing bad exceptions.

CR 9665:
Fixed session ID length problem so that it may be modified by session.sessionIDLengthURL. WAP dependent devices were having difficulty accessing some URLs due to increased URL length after rewriting. A particular problem was the session id, which is lengthy and often appended in the rewrite of the URL.

CR 9692:
Fixed a problem with getting a java.lang.ArrayIndexOutOfBoundsException when deploying EJB. This stemmed from an error existing in exception handling.

CR 9945:
Fixed a problem in the console after peer gone encountered by a cluster member. The server gets into a loop trying to re-establish connection with gone peer while bad connection still exists. The server connects, and then drops the connection due to the existence of a matching connection on the server.

CR 9997:
Fixed a problem with EJB Wizard throwing an exception when loading a jar file.

CR 10027:
Fixed EJB1.1 compliance check to allow transient Context in Entity Beans. The restriction of transient EJBContexts in session beans ended up being enforced with entity beans as well. However, entity beans should have no restrictions placed on whether or not they are transient.

CR 10054:
Provide row locking for finders to simlulate pessimistic locking. "Can't serialize error" could appear with multi-client use of Oracle because row level locking did not work together with the isolation level TRANSACTION_SERIALIZABLE.

CR 10071:
Fixed a problem with hot deploying a servlet in the Console. If the servlet was registered in the properties file, the servlet was deployed. However, that fact was not displayed in the console, and attempting to load the servlet in the console resulted in an error message "Property change error for property 'Load'. Unable to load servlet." Contrary to this error, the browser was able to load the servlet, and after that, the console does show that the servlet was deployed. In attempting to hot deploy the servlet from the console(i.e. the servlet is not registered in the properties file), the console reported the error "Property change error for property 'RegisterNewServlet'. Servlet could not be loaded or instantiated." when the user attempted to register the servlet into the register servlet dialog box.

CR 10110:
Fixed a problem with allowing access to EJBC compiler options. Tools run internally by EJBC(like the java compiler) have access to flags controlling EJBC compiler options. The problem was that tools coded seperately by WebLogic users were not given a way to gain access to these EJBC compiler options.

CR 10120:
Fixed a problem with ambiguous homes not doing user selections. When loading EJBs via the deployer tool, the error "weblogic.ejb.ui.jarbuilder.AmbiguousException: Ambiguous home for bean..." was reported. When there existed more than one possible bean home, the deployer had no way to determine the correct home.

CR 10121:
Fixed a problem with incorrect path to javac in the deployer tool. Windows filepaths, such as that of javac, when stored in java.util.Properties files, cause a problem because the ":" in the path is seen as a special character to the properties file.

CR 10143:
Fixed a problem with jhtml. JHTML requests were being overwritten. 404 errors were thrown when the incorrectly requested jhtml page was not found.

CR 10172:
Changed session-timeout from web.xml to minutes(converts to seconds). This property was set in seconds, but the specification requires it to be set in minutes.

CR 10189:
Fixed a problem with the console assuming the identity of the default port erroneously. The code assumed that the protocols were being reported in order. This was incorrect. The protocols were being reported in the order in which their listen threads finished. So, upon the start of a server, the first listening thread of this protocol to complete was assumed to be reporting the default port.

CR 10190:
Fixed a problem with missing remote interface class not being properly reported. This was an exception handling problem. When the user does not provide a remote class needed by a bean correctly, a ClassNotFoundException is caught. However, this exception does not get to the point where it is outputted to the user.

CR 10245:
Fixed registering of weblogic.servlet.utils.ServletStartup failing to recognize the servlet alias name. The method getServlet() was deprecated, and made to return NULL. However, the method had not been changed in the servlet registration code.

CR 10257:
Fixed a problem with JMS ObjectMessage.getObject returning null, rather than the object payload sent by the user, when called from server side code. This is due to the fact that messages were not going through serialization.

CR 10258:
Fixed a problem with StreamMessage throwing a MessageNotReadableException on read when used in an EJB or servlet. A transient variable that indicates the state of the stream data was being serialized, and therefore being reset. The payload was then seen as NULL, causing the MessageNotReadableException.

CR 10262:
Fixed an ArrayIndexOutOfBoundsException which was occurring during deployment. While deploying an Entity Bean with bean managed persistence, the bean went through EJBC, but logged the error in deployment.

CR 10264:
Fixed a problem with tx isolation level not having corresponding xml writing classes. This problem only arose if the tag specifying tx isolation level was not already in the weblogic-ejb-jar.xml. In this case, both the converter and the deployer tool need a way to write tx isolation level.

CR 10279:
Fixed a problem with an assertion error being thrown when certain files are added to the jar. The drive letters were sometimes entered into the file path as lowercase. This difference in case prevented the path from being recognized.

CR 10283:
Fixed a problem with timing out of read-only beans. Once the cache timed out, ejbLoad only called on one bean, even when the load attempt involved a number of read-only bean instances.

CR 10294:
DDConverter should just do the simple thing when mapping roles to principals. In order to simplify the mapping of roles to principals, it is not always necessary to do the mapping manually.

CR 10323:
Improved documentation for LogOutputStream (replacement for LogServicesDef). Class is deprecated and documents are updated.

CR 10331:
Fixed a problem with descriptors not being created early enough in the Provider project. Container managed persistence was superceding the DeploymentUnit objects which encapsulate it. This creates a circular need for .xml to exist in order to describe what belongs in the .xml.

CR 10334:
Fixed a problem with setSessionContext not being called if initial-beans-in-free-pool is set to some value greater than 0. This was discovered when the server was unable to create bean instances upon start-up.

CR 10348:
Fixed a problem with MM:EndLock not being generated for useBean tag.

CR 10360:
Fixed a problem with RDBMS Deployer UI not holding container managed field mappings. This created problems maintaining data within beans, and compiling and deploying beans at the same time.

CR 10368:
Fixed a problem with the POSIX socket muxer losing threads. This was an exception handling error. When threads were lost, the operation didn't always have the means to catch an exception.

CR 10381:
Fixed a problem with messed up headers to the browser from NSAPI plug-in causing problems with IE5. A related problem was that, when dealing with NES and the plug-in, connection status would be set twice. This was also problematic for IE5.

CR 10384:
Fixed a problem with the CMP finders which return Collections not working correctly. The CMP finders were dependent on a flag that was being set incorrectly.

CR 10385:
NFS is no longer required for EJBs to work in a clustered environment. In the cluster, servers were attempting to gain access to beans they already had through another server's directory. This became problematic when the servers were not on a shared filesystem because one server would not be allowed to access another server's beans.

CR 10417:
Fixed problem with EJB Deployer and the save menu item. The only button appearing active after initial project save was the SaveAs button. When users selected this button, they received a warning that their file would be overwritten. The Save button should be active after the initial projects save.

CR 10546:

Service Pack 3

CR 5352:
Fixed a problem with the DOCTYPE flag in weblogic.html.FrameSet. The row and column attributes were being interpreted as element attributes rather than the type requiring quotations.

CR 6756:
Fixed a problem with servlet sessions timing out in 3600 seconds although getMaxInactiveTimeInterval method returns -1. The session is timing out according to weblogic.properties. However, with getMaxInactiveInterval returning -1, the session should not time out. It is apparent with this value that the user has tried to override the weblogic.properties file in terms of timing out. The user should be able to specify timing out properties via the setMaxInactiveInterval method.

CR 7462:
Fixed a problem with large number of jms topic subscribers causing problems with the server. The server can run out of execute threads when the number of subscribers surpasses the number of execute threads. In addition, it does not occur if neither auto-acknowledge nor onMessage are being used.

CR 8547:
Fixed problem with EJBJarLoader unable to export EJBObject's parameters to server classloader. The EJBObject is being loaded by the classloader, so its parameters should be exported to the classloader as well.

CR 9765:
Removed BETA message from JDBC Solaris OCI and NT.

CR 9864:
Fixed problem with Dynamic classloader not loading exception classes of parent of Remote Interface. Essentially, though a parent interface method would throw an exception, the inherited interface methods didn't necessarily throw that exception.

CR 9994:
Fixed problem of Message.setJMSDeliveryMode(DeliveryMode.PERSISTENT) not persisting the message.

CR 10073:
Fixed a problem with JSP java file naming convention. With some characters in the names of jsp files, the compiler was reading them as ASCII values, rather than as characters.

CR 10077:
Fixed a problem with the JTS driver assuming JDBC 1.0 when deferring to the pool driver weblogic/jdbcbase/jts/Driver.class \. This occurs even if the request is made to a different version of the JTS driver.

CR 10144:
Fixed problem with EJB classloader not loading user defined utility classes. This is similar to CR 8547. The arguments to the home and remote interface were not being exported to the ServerClassLoader.

CR 10147:
Fixed a problem with using multiple threads to send queue messages. Messages would get crossed across queues in JMS in 5.1. Also, after sending messages to a queue, upon receiving those messages, the client will receive more messages than are in the queue. For instance, after all messages are sent from the queue, the message count in the queue could be a negative number.

CR 10154:
Fixed a race condition in JMSMessageConsumer.receive. Essentially, two methods are competing for shared resources. When a client calls receive, the server is called with a request for a message. The client-side code is then supposed to wait for the server's response. In some cases, the response appeared to be received by the client before the client began its wait.

CR 10235:
Fixed a problem with pages that don't require auth in a webapp returning null for a logged in user. The data of logged-in users was not used in a way that would provide them access to both restricted and unrestricted web resources consistently throughout a session.

CR 10248:
Fixed some connection problems. The server would break T3 connection after 5-7 minutes with a PeerGoneException. Aside from the lack of a T3 connection the server would run fine. This stemmed from problems resetting the flag that determines when heartbeats are sent out.

CR 10268:
Fixed a problem using POST with form based authentication in servlet 2.2. Neither GET nor POST methods allow for a secure log-on that will allow user access to protected pages.

CR 10308:
Fixed a problem with receiving assertion errors from MBuf.getHeader in ConnectionManagerLocal. An AssertionError is logged when server tries to connect. This is caused by a method that is called before getting the source ID.

CR 10320:
Fixed a problem with case sensitivity and tagexts. The way in which case conversion of attributes was done was causing problems.

CR 10327:
Fixed the NoClassDefFoundError problem when deploying EJB. This problem was found while attempting to deploy the ShoppingClientController EJB. A necessary interface could not be accessed from its jar file.

CR 10431:
Fixed a problem with compliance check complaining if you have a no-arg constructor and another constuctor. The compliance should only complain if there is not a no-arg constructor in the bean class. There should be no problems with constructors in addition to the no-arg constructor.

CR 10524:
Fixed problem with JSP's unable to load resource bundles. The server is logging a MissingResourceException. This problem also extended to inner classes.

CR 10529:
Fixed a problem with ejbRemove not running correctly in a transaction. An error was present between connection pool users.

CR 10546:
Fixed a problem with finding taglibs if the home is different from current dir.

CR 10550:
Fixed a problem where deploying a WAR file was masking servlet calls with a call to the file servlet. The path was not formatted in a way that would allow for access into subdirectories.

CR 10563:
Fixed a problem with stateless instances not being returned to freepool after app exception. The stateless session beans weren't being marked for ROLLBACK upon completion.

CR 10594:
Extended weblogic.servlet.security.ServletAuthentication to use sessions to store AuthUser. This extension allowed for the inclusion of examples.security.formauth.

CR 10608:
Fixed a problem with the deployer tool filtering out methods from Home and Remote super-interfaces. The methods defined by the super-interfaces of a bean's home and remote interfaces are not displayed when attempting to set Method-transactions or Method-permissions.

CR 10610:
Fixed a problem with with the plugin having the ability to disable failover with "connection reset". While doing transactions, the NSAPI plug-in could get a connection-reset from the server and duplicate a request. Failover was only being done for connection refuse, not connection reset.

CR 10664:
Fixed the problem of RequestDispatcher.forward() breaking on hitting the browser back button. After forwarding a request through main.jsp to template.jsp, clicking the back in browser button will result in a junk previous page.

CR 10678:
Fixed a problem with ServletRequest.getServerPort returning 7001 if no port is specified, when it should be returning 80. The scheme (http/https) was not set in weblogic.servlet.internal.ServletContextManager before dependent methods were called.

CR 10680:
Fixed a problem with the Apache plugin. If attempting to set multiple cookies, only the first one was being set. The setting of multiple cookies worked fine without the Apache plugin.

CR 10730:
Fixed problem with Form based authentication returning the login page whenever an attempt is made to access a secured resource. However, the browser does not recognize that it has received the wrong content and the superdirectory in the URL is that of the requested page, not that of the login page. This means a lot of broken images and links.

CR 10741:
Made compliance checker message clearer. This was an update in program documentation.

CR 10758:
Fixed a problem with the ACL's on Windows NT. There exist different issues of case-sensitivity on this platform.

CR 10762:
Fixed a problem with stateless beans created on server startup not having the jndi environment set. The server logs a NoInitialContextException, and cannot initialize the bean.

CR 10786:
Fixed the security problem with RequestDispatcher.forward(request, response). The method call can get past security restraints set in the deployment descriptor.

CR 10794:
Fixed problems with FileServlet unable to handle EBCDIC pages on USS390 and Error Pages, like 404 not being encoded properly on USS390. UTF8 encoding must also be set prior to the generation of an error page.

CR 10826:
Fixed a problem with *.abc mapping correctly in URLHelper. If an extension mapping was included in a url pattern, a 404 error was returned.

CR 10885:
Fixed a problem with apache plugin, the 401 Error code was not being propegated back to the client. If the client calls a servlet, on which an ACL is set, through apache, there will not be a prompt for username and password, but rather "No credentials supplied".

CR 10895:
Fixed finder code for ejbLoad so that it is only generated when needed.

CR 10897:
Fixed a problem with finder code generation.

Service Pack 4

CR 9029:
Fixed problem that use weblogic.system.DNSname with Weblogic Server acting as proxy of Weblogic cluster. A NumberFormatException error was logged. This made it impossible to use a WebLogic proxy in front of the firewall.

CR 9161:
Fixed problems with logging in Http and also preventing JVMID.toString doing a reverse DNS Lookup. A property needs to be included that would allow for reverse DNS lookups to be enabled or disabled.

CR 9213:
Dynamic load-balancing algorithm in WL cluster proxy may be broken. In the WL proxy, an application benchmark was heavily "favoring" one server over two other servers in the cluster.

CR 9341:
JSP engine will now include and check version information in compiled JSP's. Previously, in order to upgrade, previously compiled JSPs had to be manually deleted and recompiled.

CR 9536:
Fixed problem with NSAPI Failing to load balance with load balancer and fire-wall. The servers in the cluster, except for the primary server, were not receiving the DNSNames of the other servers, so they were returning local IP addresses instead.

CR 10228:
Certified Apache with Covalent's Raven(SSL Module for Apache 1.3.19). Extension of support to cover Raven was requested.(additional details)

CR 10368:
Fixed the problem with POSIX socket muxer losing threads. The problem was in that not all of processSockets was protected by a try/catch block, essentially a mistake in exception handling. Exceptions or errors could by caught eventually, but would not necessarily be indicative of what is actually causing the problem.

CR 10399:
Rebuilt Apache plugin with the EAPI patch to support Raven(SSL). To use shared memory functionality, a patch containing a portable library must be received and applied.(additional details)

CR 10428:
Certified C-2.net stronghold 1.3.12 with Apache plugin. This was the most recent available version.(additional details)

CR 10465:
Fixed problem with HttpClusterServlet failover has problems with primary/secondary servers situation. A default list of servers should be used once the updated list is empty.

CR 10546:
Fixed a problem with finding taglibs if the home is different from current dir.

CR 10642:
Fixed problem with HttpClusterServlet going into an infinite loop and tying up a thread. IOException is thrown and the service method continues its attempts to connect to a dead server.

CR 10659:
Retired T3 JDBC Driver that is causing sessions to time out after one second. The invalidator is running every second, rather than at its set intervals.

CR 10679:
Fixed a problem with a cookie never being set if setCookie is issued, and a res.sendRedirect is issued after. With the apache plugin, the redirect is sent before the cookie is set in the header.

CR 10787:
Fixed problem with WAP and UTF-8 support not working with 5.1 with and without SP1. Weblogic misreads headers and doesn't decode into UNICODE 16bit format from UTF-8.

CR 10807:
Fixed problem with ASSERTION FAILED getServlet() returning null. Servlet init() method was throwing an exception. The exception caused the server to bail out of the createInstances() method and the synchronized block before the servlet instance and the servletPool could be initialized.

CR 10893:
Updated JSP code to use new session get/set API to prevent deprecated method calls. Previously, two deprecated methods were being generated by WebLogic.

CR 10894:
Fixed a problem with an incorrect reference to a *.jsp causing Netscape/Internet Explorer to popup file download. The dialog associated with this download box reports an error that the text/jsp MIME type is not recognized. However, a 404 error should be reported.

CR 10927:
Fixed setMaxInactiveInterval() NPE when ReplicatedSession is used. An unitialized variable was being used in this method, so setMaxInactiveInterval() did not have all the data it needed.

CR 10961:
Modified server's timing as heart beats are not being processed in time. This is because the server was not processing heart beats in the same thread.

CR 10986:
Certified Apache plugin with Raven 1.4.3/Apache 1.3.12. Previous version of Covalent Raven SSL used Apache 1.3.9, but is no longer available.(additional details)

CR 11017:
Fixed problem with plugins returning double Content-Type headers for JSP pages for 510SP3. This problem appears differently on different browsers. Something in the plugin is inserting Content-type=text/jsp into the header, when it should be text/html. This bug is in the proxy.

CR 11019:
Fixed problem with Home interfaces not being inherited. In searching for bean homes, those which inherit from another home interface are discarded. This is due to the method used to check for the existence of particular methods in those interfaces.

CR 25483:
Fixed an error relating to multi object finders and complex primary keys in RDBMS CMP code generation. The finder code needs to allocate a new primary key object for each bean that is found in the database, instead of reusing a single object.

CR 30881:
Fixed problem with jsp precompiler not accepting certain formats of attributes.

CR 31317:
Fixed the problem with Apache plugin not working properly using VirtualHosts. Apache has the ability to perform different functions depending on the host it is using. However, our plugin does not utilize the functionality.

CR 31397:
Fixed problem with NSAPI plugin sending two host headers to WebLogic. In addition, with the ServletRequestImpl, if https and the host header came in without a port, another host header was added rather than setting the port.

CR 31491:
Fixed the problem with looking for session ID in parameters if weblogic.httpd.session.URLRewriting.enable=false. The server should not look for a session ID if the parameter ...URLRewriting.enable-false. There was a problem with processing WL-Proxy-SSL. The server should not add another Host: header while in this state.

CR 31492:
Fixed the problem with Jolt session pool not providing a mechanism to set RECVTIMEOUT. In slow systems, this causes a problem because RECVTIMEOUT is often exceeded and administrators are unable to tailor the setting.(additional details)

CR 31500:
Fixed the problem with the compliance checker by prohibiting declaration of methods that return com.sun.java.util.collections.Collection. EJBC has problems with its own generated code if this is returned. It should, however, allow for a return of java.util.Collection.

CR 31503:
Fixed the problem with read-only entity beans refreshing when dbIsShared is set to true.

CR 31532:
Implement features that are available in NSAPI/ISAPI plugin in HttpClusterServlet. Added new functionality to HttpClusterSevlet such as pathtrim, trim extension, connection timeouts, and various other changes for better performance.

CR 31557:
Fixed the ClassCastException obtained by using JAXP with EJB. The bug is in the parser used with JAXP.

CR 31575:
Cluster containing many EJBs will cause multicast problems. Symptomatic of this was a lack of JNDI replication and trouble with load balancing. Properties needed to be changed to make administration and management easier. The multicast properties "weblogic.cluster.multicastDelayMillis" and "weblogic.cluster.mutlicastMaxDelayIncrements" that handle the buffer overflow properties have been replaced by a single property "weblogic.cluster.multicastS

Service Pack 5

CR 22854:
See CR 32184

CR 28929:
Added the ability to have Debug flags with NSAPI/ISAPI/ASAPI plug-ins. Now Debug flags can be turned on in the configuration file of the plug-in.

CR 29726:
Home methods obey transaction attributes and ACL settings for create and remove. (Not find)

CR 30334:
If, while executing in a servlet, a transaction times out and is rolled back, the thread it was working on maintains the transaction ID. This results in a TransactionRolledbackException when a new transaction is attempted because the container thinks that there is already an active transaction. Hence, the container will not start a new transaction. In order to remedy this problem, a more thorough transaction status check was done before throwing a TransactionRolledbackException.

CR 30406:
Altered JSP Java File convention. We have reverted to prepending an underscore to generated file names.

CR 30410:
In JDBC Store, remove driver manager calls to avoid deadlocks. When there was no transaction underway, the jts driver was creating and returning a vanilla pool driver connection (weblogic.jdbc.pool.Driver), even if the request is made to the jdbc20 version of the jts driver.

CR 30464:
Fixed a bug in the handling of the If-Modified-Since field in the HTTP header which was causing an IOException.

CR 30527:
Fixed weblogic.rmi.NoSuchObjectException: RemoteInvokable while using JMS.

CR 30542:
Invoking an HTML file which had only two links, an error was being generated on the server side.

CR 30674:
Fixed directory listings not working in WebLogic Server 5.1.0 for sub-directories below the doc-root.

CR 30768:
Fixed a problem with NTRealm not authenticating if Primary Domain Controller is different other than "." . (see additional details)

CR 30911:
Fixed a problem with transaction and security attributes on EJBHomes.

CR 30924:
Enhanced timeout in ClusterManager and fixed a problem with servers not shutting down. The problem exists on MulticastSocket.receive() and MulticastSocket.close(). The method receive() will block until datagram is received if receive() is in one thread and close() is in the other thread. The problem was on the HP platform, when close(), hanged and no exception was thrown so shutdown can not be completed.

CR 30944:
Fixed a problem with the setObject method passing an object reference instead of object copy.

CR 30986:
The invalidation trigger is now scheduled, based on the weblogic.httpd.session.invalidationIntervalSecs property

CR 31034:
Apache plug-in is now available for HP platforms.

CR 31213:
If Header is not formed correctly a 400 error code is now sent. For example, if you set your headers accordingly, but at the end of setting them, you accidentally send a /r/r/n instead of a /r/n, a 400 error code is now sent.

CR 31315:
WebLogic now supports proxying by path for IIS.

CR 31317:
A per-server-config in mod_weblogic.c has been added to support virtualhosting with the Apache plug-in.

CR 31322:
Fixed a problem where a Rolledback Transaction would cause the EJB container to rollback subsequent EJB method calls.

CR 31335:
Fixed a bug in NTRealm authentication where the system user from the NTRealm is not authenticated. (see additional details)

CR 31360:
Now, during one phase commit failure, rollback transaction releases locks on other entities.

CR 31523:
Fixed up cert-based authentication in webapps and the use of the CertAuthenticator interface.

CR 31551:
Fixed an issue with spaces and %20 in URL filenames. Now there can be spaces or %20's in a URL filename and the correct file is displayed

CR 31584:
Fixed a problem compiling with JSPC.

CR 31584:
During hot deployment, undeploys are now logged to the weblogic.log.

CR 31692:
Fixed NullPointerException on getting InitialContext successively from a cluster.

CR 31719:
Fixed a problem with NSAPI failing on large uploads.

CR 31724:
Customers who want to monitor what is in their EJB cache may turn on debugging on the server command line by setting the system property -Dejb.enableCacheDump=true. The contents of the cache, whether the PK is involved in a transaction, and who owns the transaction are dumped to the weblogic.log. This is true for every bean deployed. The cache is dumped everytime the sweeper runs (which is set in the property in the weblogic-ejb-jar.xml file.)

CR 31736:
Fixed a problem with doing multiple finder calls in a single transaction.

CR 31758:
Changed the RequestDispatcher and how request parameters are forwarded to other servlets/JSP's.

CR 32174:
Added locationKeys, pathTrimTable, and pathPaprendTable in ConfigInfo structure to handle more than one location tag used in virtual hosting.

CR 31775:
Extensions can now be stripped when setting the trimExt property in the INIT argument to the cluster servlet--in the WebLogic properties file.

CR 31801:
We now print a better diagnostic message if the hashCode or equals method in the primary key class is misimplemented.

CR 31822:
By adding the secureProxy to InitProperties and including the setting =on it is possible to activate the SSL between the proxy and the clusters.(additional details)

CR 31843:
Added error cheking to Durable Subscribers in JMS.

CR 31853:
There was a problem using wlconfig with JRE 1.2.2. When using wlconfig -JAVA_HOME $some_jre_dir, the response was: Java dll not found. Bad value for JAVA_HOME. The system cannot find the path specified. Now, wlconfig has been updated to solve this problem.

CR 31854:
ClassNotFoundException thrown when beanName="<%= SomeStringvalue %>" is specified in jsp.

CR 31868:
Fixed ConcurrencyModificationException.

CR 31877:
Allows for the user id and referred url to be seen from the error page. (additional details)

CR 31878:
Fixed a problem with Apache failing on large uploads.

CR 31884:
Cookie.setMaxAge(0) will set the cookie's max age to that of the server. Therefore, if the server and the client are not in sync, then the cookie may not in fact be deleted. The setMaxAge(0) should be set to something like January 1st, 1970.

CR 31915:
Welcome.jsp in a protected area can be accessed without having to enter a username/password.

CR 31943:
Fixed expression constructor so longProperty will work.

CR 31968:
The page context variable wasn't being initialized correctly and was causing a NullPointerException.

CR 32037:
This fixed a problem with "show code" vulnerability in the JSPs. We recommend to register the FileServlet under a virtual name "*.html" (instead of "file"). The fix ensures that a hacker is not able to prepend the path leading to JSP by *.html and see the code of the JSP. In other words, URLs like http://www.abc.com:7001/*.html/path/to/foo.jsp do not result in displaying the code of the JSP in a browser.

CR 32053:
Plug-in Shared library built on AIX433 for NES4.0.

CR 32054:
Improved log notification when a server is aware of other servers in the cluster. The string looks like: "Creating RemoteMemberInfo for" + configdetails. In general, when using WebLogic Server 4.0.X through 5.1.X, the message of "Joined cluster mycluster at address 224.0.0.1:7001", does not necessarily mean that there is anyone else in the cluster. In 4.5 you could tell when there was really another server in the cluster by the server to server RJVM messages when each node found the others. But, in 5.1 this became no longer possible. This change improves the log notification and solves this problem.

CR 32056:
Customers can configure the server with global server, per server and command line props. Now there is a servlet/JSP that can be used to gather the data from the log file. It can be mailed to support, when needed, or saved to a file. This is to help support/engineering ascertain a client's configuration.

CR 32060:
Plug-in Shared library built on AIX433 for NES3.6.

CR 32061:
Oracle type 2 driver-native binary shared lib build for lcuw2 (UnixWare).

CR 32063:
Oracle type 2 driver-native binary shared lib build for lcaix9 (with AIX432).

CR 32065:
In WebLogic-EJB-jar.xml a bug was fixed where the transaction-descriptor was not being outputed.

CR 32092:
If the Request-URI is greater than the buffer size (2048) the plug-in will return back 414 HTTP status code. Which means, "The server is refusing to service the request because the Request-URI is longer than the server is willing to interpret."

CR 32132:
Two files were added (mod_wl_ssl.so and mod_wl_ssl_raven.so) for Apache installations on Linux platforms. The file mod_wl_ssl.so is used for Apache + SSL/EAPI installations (Stronghold, modssl, etc). The file mod_wl_ssl_raven.so is used for Apache + Raven installations. The mod_wl_ssl_raven.so file was required because Raven applies frontage patches which make it compatible with mod_wl_ssl.so.

CR 32133:
Error page functionality for the Apache plug-in was improved.

CR 32136:
Error page functionality for the Apache plug-in was improved.

CR 32142:
The host2ior was not returning the correct IOR with WebLogic Service Pack 3. This has been fixed.

CR 32156:
Read-only entity beans with a read-timeout of 0 now have ejbLoad called only when they are brought into the cache.

CR 32158:
A problem involving the HTTPClusterServlet entering an infinite loop was solved.

CR 32174:
Added locationKeys, pathTrimTable, and pathPaprendTable in ConfigInfo structure to handle more than one location tag used in virtual hosting.

CR 32184:
Improved checkAForm state management. This allows for the user information to remain in the session after a successful authentication without an authorization. It also allows the initially requested URL to be stored in the session in the case of no authorization.

CR 32193:
Fixed a problem specific to Service Pack 4 concerning FORM based authentication when using a webapp. Service Pack 4 users were getting a username/password window, rather than the correct form.

CR 32222:
In weblogic.rmi.internal.OIDManager, when the server tried to load weblogic.cos.naming.NamingContextImpl, it was expecting a NoClassDefFound error on non-JDK 1.3 VMs. However, the VisualAge VM throws an IncompatibleClassChangeError, and the Class.forName docs say this is allowed. Since this is an Error, it goes uncaught, and the server dies. This was a problem in earlier Service Packs, but is now fixed.

CR 32253:
Fixed a problem with the transaction-descriptor not being outputted in weblogic-ejb-jar.xml.

CR 32265:
Added javadoc of weblogic.servlet.security.ServletAuthentication.

CR 32270:
Updated form-auth state management.

CR 32271:
It is no longer necessary to specifically grant access to loginpage and errorpage. Per the servlet 2.2 spec, access will now be granted.

CR 32272:
Servlet request parameters are currently being converted to EBCDIC on the USS390 Platform resulting in garbled parameters when processed by application servlet.

CR 32309:
Fixed a rare problem with the dispatch in-thread pattern resulting in a deadlock (additional details.)

CR 32806:
HTTP logging has two rotation methods. The user can specify date-based rotation or size-based rotation. If the logging operates on date-based rotation, and the initial date has already passed, HTTP logging should only set DAY_OF_WEEK if the rotation period is greater than a week. Previously, DAY_OF_WEEK would always be set when the current date was later than the initial date(additional details).

CR 32951:
This problem occurs when using WebLogic, via HttpClusterServlet, to proxy all jsp and servlet requests to a list of cluster servers. Hitting F5 in Internet Explorer, or Shift-Reload in Netscape on SimpleSession.jsp will cause the cluster servers to infinitely loop on incrementing the session counter.

CR 33036:
The expected behavior for interoperability between web applications and EJB security is that a user's ID, authenticated via form-based authentication propagates to the EJB container regardless of the security constraints imposed on the caller's location within the site.

Service Pack 6

CR 27890
With an extremely large number of active durable subscribers the server was hanging. There was a problem with the server running out of execute threads.

CR 28155
Fixed a bug in adjusting the round trip time for getting the server time from the client.

CR 29085
JDBC drivers need to workaround new synchronization in DriverManager.

CR 30351
If JMS is used indirectly through an EJB, the JMS connection will close itself down after the caller that invoked the EJB first shuts down. This is because the peer gone detection in the connection object does not know that the connection was created by the bean rather than the client who called the bean. This has been fixed for this service pack.

CR 30473
There was a problem with the jts driver doubly registering statements to close. This has been fixed.

CR 30485
Fixed a race condition in JMSMessageConsumer. There was a problem with the server hanging when sending PTP messages.

CR 30561
There was a typo in the weblogic.properties file shipped with the release.

CR 30648
Now it is possible to associate a character set to a mimetype (additional details)

CR 30839
Java mail is functioning. We now ship the files that set up its defaults. These are in the service pack jar.

CR 30857
Fixed a bug where Application Exceptions were causing the bean to be deleted. The Bean is being deleted after an AppException and subsequent calls cause a NoSuchObjectException to be thrown.

CR 30900
We now have JSP caching tags. For more information, see our
online docs

CR 31292
The relative URL's ./ and ../ were not working with jsp pages. Basically this was caused by the JspStub reinterpreting the URI->JSP filename incorrectly.

CR 31384
Using request.getSession(false) when there is no current session was creating a new session. By using <%@ page session="false" %> creating a new session can now be avoided.

CR 31389
Fixed a problem with the iisproxy.dll not finding the location of the iisproxy.ini in the registry.

CR 31490:
Fixed bug in various JDBC 2.0 calls.

CR 31735
In pre-5.1 versions of WebLogic, calls to T3Services.getT3Services() would just return null. In 5.1 (sp3) it began causisng an NPE in RJVMManager. This has been fixed.

CR 31943
Selector's with compound expressions (specifically with long values) were not working. For Example: String selector = 'DateProp >= 963464400000 AND DateProp <= 963550799999'. This has been fixed.

CR 32058
This fix re-enables reporting of servlet exceptions. The server wasn't printing out exceptions from application code - making it impossible to debug an application.

CR 32104
Debug messages have been turned off in weblogic.servlet.internal.session.ClusterSessionJDBC.

CR 32120
Some classes used in our class loaders would generate class circularity errors. This is now fixed.

CR 032133
There is a new parameter, defaultfilename, for all plug-ins. (see additional details)

CR 032157
When the startup servlet was fully initialized the invalidation trigger would start and try to invalidate the existing sessions. But at that time, the replication manager hasn't yet been initialized and as the sessions became invalidated NullPointer exceptions were generated. This has been fixed.

CR 32204
All calls to the method DriverManager.getConnection() were removed. The method that is currently used is Driver.connect(). This was done to enhance performance.

CR 032258
Fixed jsp/plugin syntax(added 1.1 syntax)plus added translation time expression capabilities for plugin applet-parameters.

CR 032313
Now users can pass non-javac specific arguments to the compiler-- if they use -J. For example: jview weblogic.jspc -compiler jvc.exe -J/w4 somejsppage.jsp" will pass "/w4" to the jvc compiler.

CR 32409
The servlet engine was losing the post parameters if the servlet was getting an input stream--even if it was reading nothing.

CR 32495
TransactionManager now implements Serializable.

CR 32558
Fixed jsp/plugin syntax(added 1.1 syntax)plus added translation time expression capabilities for plugin applet-parameters.

CR 32603
Fixed a problem with HttpSessionBindingListener not working in a cluster using in-memory replication.

CR 32634
Dealt with some minor JMS DataBase improvements to reduce an extra hit on the DataBase for every 16 messages message id's.

CR 32708
This fixes an issue where the originally requested URI was included by the FileServlet, instead of the intended include URI. For example, if a JSP included an html page, the original JSP page would be included untranslated instead of the intended HTML page.

CR 32769
Fixed a problem with req.getRemoteAddr() returning the ip address of the proxy servers when the requests are coming via proxy servers. This was occuring with plugins as well.

CR 32859
In order to make the JSP respect empty string query parameters, now add the initParameter "setEmptyStrings=true" to the JSPServlet registration.

CR 32873
When the CGI servlet was initiated in a Japanese environment (Windows NT 4.0), it was displaying corrupt strings. Fixed by Using CharArrayWriter, InputStreamReader and PrintWriter in place of ByteArrayOutputStream, DataInputStream and ServletOutputStream respectively.

CR 32935
This fixed a problem with Brazilian accented characters when the output is larger than 8k. With character encoding, response.setContentType ("text/html; charset=iso-8859-1"), using getOutputStream(), handled the Brazilian accented characters fine as long as the length of the output was less than 8K. When the output was larger than 8K, it doesn't do the character encoding. This fixed by altering a change in codeset that was happening when the buffer overflowed.

CR 32953
An error occurred when attempting to deploy the cookie war file example with WebLogic Server 5.1 using sp4 and sp5. This has been fixed.

CR 33081
This fixes a problem created by Service Packs 3 and 4. When a dependency class of the EJB has a primitive array cast, EJB deploy fails, throwing a NPE. The server was trying to load the primitive array thinking that it is a user defined one and coming up with null.

CR 33227
To prevent the JMS server from failing from unusual client behavior, we now prevent messages from being sent/published when more than 75% of the server memory is used up.

CR 33244
Messages processed by server session pools were not being acknowledged properly causing messages to reappear even though the they had already been acknowledged. This bug only affected server session pools receiving messages from queues.

CR 33258
Sun's ldap does not work with Microsoft Site Server 3.0. There is now a work-around for this problem. (additional details)

CR 33289
When the server had been running for some time, it was running out of file descriptors, due to loading a jar file an unnecessary amount of times. This has now been fixed.

CR 33320
There is now the ability to turn on/off HTTP Tunneling. The property weblogic.httpd.tunnelingenabled should be set to true to enable http tunneling. By default it is set to false.

CR 33343
Load balancing has been improved with WebLogic plug-in's support of multiple clusters. Maintaining a static variable "lastIndex" was breaking load balancing. This has been fixed.

CR 33372
Fixed bug in the compliance checker which allows primary key class of java.lang.Object to work.

CR 33633
Adding a parameter, with the same name as an existing parameter, appends it to the same internal list in the QueryParams class. A shallow clone copy of the QueryParams was made so that we could reset them after the include. A deep-clone of QueryParams was not made. Cloning the internal lists. is the bug fix that corrects and changes the parameter behavior after an include so that it correctly follows the spec. Note that this could hence affect a customer's servlets.

CR 33773
We now accept extended HTTP 1.1 methods.

CR 33775
Users were losing authentication status after their request. Now users using weblogic.serlvet.security.ServletAuthentication are valid for the length of their session. In order to preserve authenticated status when using weblogic.serlvet.security.ServletAuthentication, the status of the HttpSession is checked from the request. Since weblogic.httpd.session.URLRewriting.enable is 'true,' this causes us to consume the post data. So, if you intend to send post data to the server and you expect to be able to read the raw post data, you should set the content type to something other than the default value of application/x-www-form-urlencoded.

CR 33794
A bug allowed all TxContext objects (ie, all transactions on a particular server) to be serviced by a single static coordinator. All transactions bottleneck around one transaction coordinator. In a situation where a client needs to start multiple transactions on multiple servers (not clustered or different clusters), this wasn't safely possible because the static coordinator could be overwritten by the lookup to the second server. So, you could do a lookup of UserTransaction on server1, do a begin xact, then lookup UserTransaction on server2 and call commit, commit the transaction on server1, and not get an exception thrown. This fix now allows one coordinator per UserTransaction per server.

CR 33887
Tag library performance suffered due to incorrect specification interpretation. This has been fixed.

CR 33909
IIS users may now proxy by path. See http://www.weblogic.com/ docs51/admindocs/isapi.html#path

CR 34074
Under heavy load users were getting messages with "Expected content length 1000 bytes," when they were only reading -1 bytes messages from the WebLogic Proxy server. This has been fixed. There was a problem with the HTTPClusterServlet trying to read the POST data again after failover.

CR 34074
There was a thread synchronization problem that has been fixed. If all the stateless session bean instances in the free pool are being used, the next transaction trying to get a instance will throw a RuntimeException immediatly without waiting until timeout. This has been addressed.

CR 34212
Removed unnecessary messages printed to weblogic.log when a http resource could not be found.

CR 34255
A NullPointerException was occuring when trying a getMessage() on a message pointer cursor. This problem was only happenning when setting weblogic.jms.connectionPool to a connectionPool. It is now fixed.

CR 34307
All .class and generated .java files in .war files are protected.

CR 34627
Now we ignore case when checking secureProxy parameter in HttpClusterServlet

CR 34628
Even when invoked with the -idlNoValueTypes flag."rmic -idl" would still generate some valuetypes.

CR 34307
This modified JMS initialization. Previously, we loaded all messages at startup which would cause the startup time to be quite long if you had queues with lots of persistent messages in them.

CR 34631
This change is to make environment properties which are set up in web.xml work in init() and destroy() methods of Servlet interface.

CR 34633
Fixed compiler message parser so that non-standard messages are still returned to browser.

CR 34634
Now web.xml files should reference Web Application 2.2 in their public id (as per the spec).

CR 34635
Request dispatching between web applications now works as specified.

CR 34703
Made write method non-final to extend the functionality of ServletOutputStream, if it is overridden.

CR 34737
Added handling of the old public ID. Now we print a warning if the old public ID is found.

CR 34836
For the HTTP XML example the "Content-Type" must be set to something other than the default value. For this example it has been set to text/xml. This shall be fixed in Service Pack 7.

Service Pack 7

CR 26207
There was a problem that was causing the server to display harmless 'SocketException: Bad file number' messages. This was caused by one thread trying to close the socket while another thread was reading from it. Synchronization has been added around the read() and close() messages to avoid this.

CR 26354
When starting a client-demarcated transaction and calling a business method within that transaction, the business method throws a RuntimeException. This has been changed so that the server now marks the transaction for rollback and throws a TransactionRolledBackException to the client.

CR 28473
Fixed a bug with jms server objects getting garbage collected too soon.

CR 28881
When the server is out of execute threads, SessionState.close can deadlock as it puts a message to the messagesPublished queue.

CR 29007
Now there is optimization for BMP entity beans so that findByPrimaryKey does not go to the database if the Primary Key is already in the cache.

CR 29792
With Service Pack 6 installed and in a clustered environment, ValueUnbound was not working.

CR 30023
Setting "weblogic.jms.tableNamePrefix" in the properties file results in all destID's=0. With messages in two separate queues, when the server goes down and is restarted all messages in both queues are sent to all receivers. This is occurring because all destID's are set equal to 0. Now each message queue has a distinct destID.

CR 30298
Introduced a new property to signal which encoding to use for the input stream. The property is weblogic.httpd.inputCharset and it allows users to specify charset for the post parameter. It can be set to different values. For example:

weblogic.httpd.inputCharset./*=ASCII
weblogic.httpd.inputCharset./jap/*=Shift-JIS
weblogic.httpd.inputCharset./chn/*=Big5

In this case, any request starting with /jap will use the encoding 'Shift-JIS' in their post parameters. Any request starting with /chn will use Big5. All other requests will use ASCII as their encoding. (See the New WebLogic Properties section)

CR 30351
If JMS is used indirectly through an EJB, the JMS connection will close itself down after the caller that invoked the EJB first shuts down. This is because the peer gone detection in the connection object does not know that the connection was created by the bean rather than the client who called the bean.

CR 30649
The line, <enable-call-by-reference>False</enable-call-by-reference> in the weblogic-ejb-jar.xml was causing a ClassCastException when the server was trying to instantiate a stateless EJB in the startup class.

CR 30679
Fixed a problem where multiple calls to FindyByPrimaryKey occurring within the same transaction caused multiple calls to EJBLoad.

CR 30700
With stateless session beans, calling get EJBObject on the context was falsely returning null.

CR 30826
A new property "weblogic.system.maxExecuteThreadCount" has been added to configure the maximum number of the threads the weblogic will support. This is essentially the maximum the property "weblogic.system.executeThreadCount" will take. This property is configurable both from client and server.

CR 30841
After the transaction has rolled back and in a subsequent call, the server hangs when the client calls a stateless session bean. This happens as the server attempts to find an associated bean from the first transaction.

CR 30869
Added weblogic.jsp.windows.caseSensitive property. If set to true, jspc and JspServlet do not change to lower-case the name of the generated file. The default is false.(See the New WebLogic Properties section)

CR 30895
Now the compliance checker gives an error message if the primary key class doesn't implements Serializable.

CR 30908
When there was more than one war file per directory, one would overwrite another. Added name of the context to the created temp directory name in order to avert this problem.

CR 30926
Fixed a problem ldap and UrlAcl not finding groups.

CR 31202
A "-user" option has been added for weblogic.deploy tool. This was added because of a problem with Hot Deploy not working if weblogic.system.user was used to change the system user. See, www.weblogic.com/docs51/classdocs/API_ejb/EJB_reference.html for more information.

CR 31250
When a session servlet has timed out, it gets removed from the memory. However the corresponding row from the database was not being removed. This has been fixed.

CR 31261
Fixed a problem with WebGain's ClassLoaded callback not working for CMP beans

CR 31324
JSP's that had their own propietary classloaders now will be able to notify debuggers of a servlet load.

CR 31598
The name of a deployed unit was being reserved for the lifetime of the server even though it should have been free to be used once it was undeployed. Now the server removes the names of undeployed units.

CR 31699
If security-role and security-role-ref tags are specified in the ejb-jar.xml file, the server was throwing a NullPointerException. This has been fixed.

CR 31839
Fixed a problem with BigDecimal not working as a primary key type.

CR 32058
Now the server supresses certain 'Servlet failed with Exception java.net.SocketException: Connection reset by peer: socket write errors'.

CR 32109
Using groups in the policy file was not working. This has been fixed.

CR 32186
Now, the server throws an error message if the <method-param> or <finder-param> in the CMP finder description is not a fully-qualified Java name.

CR 32268
There was a problem fixed with the customized errorPage not working when it was relative to the current request URI. The server always assumed the page was relative to the docroot.Now, it prepends "/" to the errorPage if it does not start with "/"

CR 32275
From a Bean Managed Tranaction Session Bean getRollbackOnly was being called. This violates the EJB 1.1 specification and has been fixed.

CR 32357
The WebLogic log was receiving harmless error messages that are now no longer reported when not necessary. The error message was: CDT 2000:<I><DBCserver> tried to renew lease for 1 > lost reference(s).

CR 32363
Fixed a problem in JMS. After sending a message, the client may retain and modify it without affecting the message that has been sent. This is the correct behavior, per the spec, and was not being followed. Now this is fixed to match the spec.

CR 32633
Fixed ClassNotFoundException. The path to 'weblogic.security.acl.DefaultRealmImpl' was incorrect.

CR 32674
In the weblogic-cmp-rdbms-jar.xml file, <finder-list> and <options> are now optional tags and no longer generate errors if they are absent.

CR 32764
Fixed a problem with JSP 1.1 setProperty and array values.

CR 32806
Fixed a minor problem with the date based log rotation beginning time. Now the server only honors DAY_OF_WEEK in setting future date for rotation, when the date is already past.

CR 32952
Fixed a potential deadlock while deserializing the transaction context.

CR 33162
After invoking the servlet from a browser the HTTP responseheader was showing a garbled expiration date when users had set their regional settings to a Japanese (multibyte) environment. Now we use the right Locale for the DateFormat.

CR 33207
While executing a stored procedure from a BMP Bean, ClassCastExceptions were occurring when casting the output of prepareCall method of Connection object with weblogic.jdbc.common.OracleCallableStatement

CR 33227
Added a new property: weblogic.jms.ignoreMemExhaustCheck=[true|false]. If set to true, the memory check is ignored and messages can be sent when 75% or more sent and published when 75% or more of the server memory is used up. When this property is set to false, the memory check is NOT ignored.(See the New WebLogic Properties section)

CR 33424
Fixed a problem deploying a containerManaged sample EJB on OS/390. Users weren't able to deploy an EJB built on an ASCII platform.

CR 33616
Fixed a problem with EJB's when using Security.verify on the client, where no realm structure exists.

CR 33624
If cookies are turned off URL's are being rewritten, it is possible to track someone's session. But if the session is not yet authenticated, and the user tries to hit a secure page in a web application, the web application security bounces them back to the login page. This bounce is in the form of a sendRedirect. But, the redirect does not encode the url to the login page and the user's session is lost. This has been fixed.

CR 33642
Running a WebLogic client inside the java plug-in, it is not possible to get through to a proxy when the property "http.proxyHost" is not defined (this may happens with an applet running in the plugin) This is a problem with the Sun plug-in and has been documented by Sun as Sun Bug 4149667. This fix is a workaround that added a check to the protocol handler. If it detects that it is running inside an signed-applet javaplugin environment, it does not override the standard HttpProtocolHandler.

CR 33657
Invalid deployment of a Web Application was causing a NullPointerException and was also making the server crash. Now we load the general servlet context instead of doing System.exit(1), preventing crashes.

CR 33658
Fixed a problem with the <jsp:plugin> tag not functioning as expected. The plug-in was not starting, and instead displaying the fallback message and sending the <jsp:> source to the client.

CR 33669
Any mimeTypes defined in the weblogic.properties file were set in the defaultServletContext, even if it is a Web Application or the original style context defined from the weblogic properties file. The default web-application was ignoring the mime/type settings of the main enviroment (specified in weblogic.properties). This has been fixed.

CR 33781
The error, Duplicate method declaration: java.lang.String getServletInfo(), was occurring when the page info tag was set above the content type tag in a JSP page.

CR 33786
Now the compliance checker gives an error message when both primary-key-class and primary-key-field are set.

CR 33792
The contents of the ntrealm.properties file has been moved into the weblogic.properties file. The following property is now used: weblogic.security.ntrealm.domains=hostname1,hostname2. This property can be set to a string list of hostnames of all the trusted domains.(See the New WebLogic Properties section).

CR 33866
Now we report the reasons for peergone messages better.

CR 33914
If you change the WebLogicSession cookie to some invalid value, such as 1, a NullPointerException was being thrown. Now the server checks the validity of the session cookie before using it, doing a minimal check for the primary ID.

CR 34016
Fixed a problem where users were unable to deploy EJB's with external XML parsers.

CR 34044
The existing behavior of the errorPage directive has been enhanced.

CR 34067
Enhanced the performance of LDAP realms. When the number of principals was growing, the performance of the LDAP realm was suffering significantly. Fixed this problem and generally improved the use of LDAP realms. More information is provided in the HTML file 510sp7/relnotes.html that is included with this service pack.

CR 34108
Fixed http tunneling to work in a WLS cluster. Ensured that tunneled requests always return to initial cluster node.

CR 34121
The wrong error message was being thrown in some instances when a CMP container managed Bean was starting a create operation within a session bean transaction. This was not allowing the transaction to be rolled back. Now the correct exception (system) is thrown and the transaction is rolled back.

CR 34224
If a user was accessing one web application, then another, the original session is lost. For example: access WebApp1 and increment the count to 10 by hitting reload. Then access WebApp2 and increment its count to 5 by hitting reload. When you return to the original WebApp1 the count begins at 1 rather than 11 and a new session is created. This has been fixed.

CR 34306
When a servlet has a load-on-startup tag the server now instantiates the servlet on startup in the order given by the sequence number.

CR 34351
When running WebLogic Server as a Windows service, the HotSpot option of the JVM had to be turned off. This is now fixed.

CR 34389
Escaping Quotes was not working in the value tag for JSP params; The JSP spec says that quotations (") are to be escaped with \" . Fixed quoting problems for double and single quotes.

CR 34415
The PageContextImpl class now fills in the attributes for: OUT, REQUEST, RESPONSE, PAGE, CONFIG, PAGECONTEXT, and APPLICATION. The pageContext.getAttribute(pageContext.REQUEST) was not working correctly with JSP 1.0; it was returning null. Now it returns the HttpServletRequest as it should.

CR 34478
In a cluster requiring two way ssl the cluster servlet does not propogate the certs. This has been fixed.

CR 34538
In Windows 2000 enabling native io and starting the server using JDK 1.3. The following messages were being generated in the logs: Could not initialize POSIX Performance Pack and Unable to load performance pack using Java I/O. This problem has been fixed.

CR 34540
Now we throw a FileNotFoundException if the called jsp is not in the docroot.

CR 34648
Jview doesn't compile correctly a JSP with a directive to set the character encoding. This has been fixed.

CR 34651
The correct error message is now sent when CMP bean fields are private.

CR 34694
Fixed a problem with Solaris where lots of servlet calls on the cluster side were occurring using the HttpClusterServlet proxy.

CR 34859
Fixed a problem with HTTP Tunnelling causing the server to generate error messages.

CR 34899
Fixed a problem with applet clients making t3s connections to the server. At high client loads some of the Clients just hang in getInitialContext call.

CR 34907
Fixed error in routing logic when delivering exceptions.

CR 35012
The build date/time is shown for the native socket muxer libraries if weblogic.system.nativeIO.enable=true.

CR 35161
HttpSessionBindingListener was not being called in a clustered webapp

CR 35169
In a web app with form auth set up to protect a given resourceNow, entering the URL for the specified <form-login-page> itself, j_security_check will return this message to the browser: Form based authentication failed. Could not find session. This problem has been fixed

CR 35231
Fixed a bug whereby a session bean could not be removed if its caller was involved in a transaction.

CR 35328
Fixed a problem when there were more servlet requests than the number of execute threads. All the requests were waiting for a message in the response queue which never arrived because there were no threads left to process the message from the JMS client.

CR 35396
Doing a System.exit(0) in a jsp page was killing the server. This has been fixed.

CR 35440
Fixed a problemn in JMS. The state of QueueSessions was corrupted when more than one QueueReceiver was used. The result was lost acknowledgements. This change fixes some race conditions which lead to message acknowledgements being lost.

CR 35589
Fixed a problem retrieving mime-type. Added new property, weblogic.httpd.unknownMimeTypeIsDefault=[true|false]. The J2EE spec says that getMimeType() takes a filename for input as a String, and should return a NULL value if the MIME type is not known. By setting this new parameter to true, the default mime type is disabled to allow null.(See the New WebLogic Properties section)

CR 35953
Fixed a deadlock problem in the server. The deadlock was due to synchronization of two threads, one of which was waiting for the lock that the other was not releasing.

CR 36076
Fixed a problem getting thread dumps using Solaris with the JDK 1.2.1_04. Users were getting the following output in the dump file instead of a thread dump: Problem loading native lib. Can't dump threads. These changes are reflected in these two files:

bin/stackdump.dll
lib/solaris/libstackdump.so
This was previously addressed in Service Pack 7.

CR 36076
Fixed a problem generating a magic thread dump on Solaris and NT.

CR 36840
Added an option called superclass to the JSPServlet method of compiling JSPs. This was previously available in the JSPC command line version, but now is also available in the JSPServlet init parameters.

CR 368474
The ACL weblogic.allow.reserve will now work with non-default Realm groups such as LDAPRealm-based Groups or RDBMSRealm-based Groups. This problem was also addressed in Service Pack 9.

CR 36077
Added new abstract class, weblogic.servlet.security.AuthFilter, which when implemented by an HttpServlet, has several methods which are called just before and just after the authentication/authorization calls for all webapps. See the example, examples.servlets.AuthFilterImpl icluded with this service pack. This fixes a problem with declarative security used to authenicate users when it is necessary to do post-authentication processing before the HTTP request is sent off to the requested targeted page.

CR 36136
There was a problem with the setBinaryStream implementation in the RMI and T3 drivers. This has been fixed.

CR 36196
Fixed a problem with the JMS connection pool when using setLong or setObject methods on a callable statement and passing in a Long object.

CR 36269
Fixed a problem in JDBC with BigDecimals. Now we fully implement a getBigDecimal jdbc2.0 call.

CR 36462
The CMP EJB code was hardwiring JDBC 1.0 connections. This has been fixed.

CR 36499
The method getCreationTime() now throws a java.lang.IllegalStateException if the method is called on an invalidated session. This follows the servlet 2.2 spec.

CR 36563
The buffer gets flushed after a RequestDispatcher include, even if it is not full. This doesn't happen with small, simple text includes, but happens with larger files. The same behaviour was occurring using both PrintWriter and ServletOutputStream. This has been fixed.

CR 36668
Fixed a problem with the weblogic.security.acl.CertAuthenticator working under the RDBMSRealm.

CR 36671
Fixed a problem with WLS 5.1 Service Pack 6's EJB compiler. The compiler was not dealing properly with char attributes in a container managed entity bean. Problems were occurring due to a char(1) field defined in Oracle, which maps to a variable defined as a char on the java side. The server's generated code was failing to compile, because it was trying to cast the result set of a query to a String, before placing it into the character field.

CR 36769
Overrided the method getURLFile for HttpsClient, which was missing and causing the message: "Using 2 way authentication with a proxyHost, URL's were being truncated while going through the proxy".

CR 36827
Added a new property weblogic.httpd.session.neverReadPostData=[true|false] This prevents the server reading the post data in search of a SessionId. Anyone experiencing problems with missing POST data should try setting the the property to true. (See the New WebLogic Properties section)

CR 36851
With Service Packs 2-6, ejbLoad gets called twice on a call to findByPK with CMP read only entity EJB's. It is now only called once.

CR 36865
JSPs are recompiled even when JSPs have been externally recompiled using weblogic.jspc. When compiling using weblogic.jspc and then requesting the same page from the browser, the server will recompile the .jsp. This has been fixed.

CR 36978
Fixed a problem with the jsp:setProperty parameter when set to an empty string. This was a problem with jspc generating non-conforning code.

CR 36994
If the connection to the socket fails the server used to try to reconnect irregardless. Now the server throws an exception and terminates unnecessary initialization.

CR 37008
WebLogic Server was using a relative path in the "Location" HTTP response header. Now we convert the relative URL to an absolute URL before sending the response to the client.

CR 37035
Using NES Plugin with WebLogic Service Pack 5 and 6, NES was crasing on NT or starting a Core Dump on Solaris when doing an SSI Include. This has been fixed

CR 37070
HttpClusterServlet goes into infinite loop when failing over to secondary server. This has been fixed.

CR 37172
There was a problem when the RequestURI length was more than 2k for an apache plugin. Now the server supports up to 4k (in accordance to the Sun specification).

CR 37173
The DDConverter was failing to convert the "persistentDirectoryRoot" property to "stateful-session-persistent-store-dir"

CR 37291
When the java weblogic.jspc command was used with -encoding UTF8, it generates a .java file in which the code is different from the generated java file in the same JSP, when this JSP is run in the WebLogic Server. This has been fixed.

CR 37429
Transactions were not being rolledback when a system exception like RemoteException or EJBException is thrown. This was resulting in resouces not being freed at the end of tx commit or rollback and has been fixed.

CR 37698
Fixed a problem in JDBC where the java command utils.schema needed it's arguments set in an exact order. When changing the order, nothing was being recognized other than the verbose flag. Now the arguments can be placed in any order.

CR 37746
An error occurred when a Cascading Style Sheet (.css file) was requested that doesn't exist. When the 404 error occurs, it causes a socket write error, and users were seeing their jsp pages being invoked twice.

CR 37781
This fixed a problem for users who wanted to use WebLogic Server clustering in a WAP environment and utilize HTTP Get or Post method by HTML FORMs to pass the JSessionId. Previously, users had to shorten their URL's extremely because of the WAP device's limitation in this regard.

CR 37782
Stateful Session beans can access their JNDI environment through java:/comp/env. The JNDI environment lookups were not working in the beforeCompletion and afterCompletion callbacks when the session bean was running in the caller's transaction.

CR 37785
Fixed a problem on Alpha Tru64 5.0; now we provide a libweblogicunix1.so that can be run on port 80.

CR 37804
The implementation of form-based authentication for declarative security was not preserving the current HTTP session when cookies were disabled and all URLs were encoded.

CR 37837
The Apache plugin now has the ability to proxy to different WebLogic Servers or WebLogic clusters based on Mime-Type. Documentation on this will be posted at www.weblogic.com/admindocs/apache_bridge.html in the near future.

CR 37873
The WebLogic plug-in wasn't fetching the client certificate from Apache servers when service pack 6 was installed on the WebLogic Server.

CR 37901
Fixed a problem with seesion timeouts and javax.servlet.http.HttpSession.setMaxInactiveInterval(0)

CR 37951
PathPrepend in <Files> tags did not work in Apache when using Virtual Hosting.

CR 37992
Removed the limit on setting the HungServerRecoverSeconds parameter for NSAPI and ISAPI.

CR 38018
Fixed a problem with Apache bridge on Solaris 2.7. The ErrorPage directive was causing the Apache server to close the connection and return nothing.

CR 38050
Soft disconnect timeout RMI error messages are now more comprehensible.

CR 38062
Fixed a recent problem with the native performance pack for HPUX-11.

CR 38118
Fixed a problem with the ErrorPage tag where user's could not get their own error page. This problem was only occurring with the mod_wl_ssl.so for Apache that was included with ServicePack 6.

CR 38376
Added weblogic.httpd.WAPEnabled=[true|false] property. The plugin did not recognize sticky sessions when WebLogic Server was not clustered. If the server is WAP enabled (weblogic.httpd.WAPEnabled=true) we will not send the server info (JVMID) in non-clustered cases (See the New WebLogic Properties section)

CR 38377
Fixed a problem with weblogic.security.acl.CertAuthenticator and RDBMSRealm.

CR 38592
When bound to the jndi tree, non-serializable objects such as javax.mail.MailSession should not get replicated to other servers in a cluster. This was occurring and causing an exception. The server no longer does the replication and this problem has been fixed.

CR 38730
With the Apache plug-in, the query string was sometimes being lost when using ap_internal_redirect. This has been fixed.

CR 38832
Rebuilt the NSAPI plug-in for compatibility with Tru64.

CR 38833
Along with CR 34067, this CR fixed problems and enhances performance with LDAP realms and authenticating users in groups. More information is provided in the HTML file 510sp7/relnotes.html that is included with this service pack.

CR 38840
Now we use fully qualified URL's instead of relative URI's when redirecting to a login page. This fixes a problem with WAP gateways that do not accept partial URL's or URI's.

CR 38881
In cases where a directory structure is created for a session and no file is created in that directory, the invalidation trigger was not cleaning up the directory structure. This occurs when creating a session, putting nothing in it and invalidating it.

CR 38995
Fixed a problem with requests getting routed to the wrong cluster. This was an issue with the Apache plug-in when using Virtual Hosts, multiple clusters, and applications deployed on the clusters that use the same cookie name.

CR 39177
A new parameter has been introduced for the Apache plug-in, DisableCookie2Server=[ON|OFF]" (default is OFF). If set to ON, the plug-in will not use the server information in cookies. This fixes a problem with WAP devices that have a limitation using cookies.

CR 39233
Fixed a problem in JTS with maximum timeouts. The maximum size of the timeout parameter for setTransactionTimeout() was not taking MAX_INT.

CR 39238
Fixed a problem in JDBC where pools were hoarding broken connections. Pools which failed to test or regenerate broken connections were sometimes not releasing the connections back to the pool.

CR 39341
Modified the behavior of buffering and rendering JSP's while using the Apache plug-in. Now we flush the buffer once data is recieved from the server.

CR 39411
Fixed a problem that was causing the NSAPI plug-in to crash.

CR 39426
Fixed a problem when Oracle's thin driver returns a non-JDBC standard -8 value for TYPE with a ROWID column, causing DbKona to fail. DbKona couldn't interpret Oracle's thin driver non-standard TYPE value for ROWID columns.

CR 39673
When the header size is large the plug-ins were not properly handling the headers. When the total header size becomes large the plugin can't read everything in a single chunk. So it reads some of the headers partially; this was leading to garbled headers and has been fixed.

CR 39839
Some entries were missing from the third field in the access.log file. This was making it difficult for the log analysis tools. This was a problem with WebLogic Server 5.1 with service pack 6 while being accessed via IIS proxy.

CR 40002
WebGain needs a notification following the linking of a class so that its debugger can set breakpoints. Their own VM does this in native code. The other VMs used to get calls to classLoadNotify.classDefined when GenericClassLoader resolved a class explicitly. Many classes, however, are resolved lazily right from native code in the VM. The fix for this CR resolves classes eagerly when classLoadNotify is non-null and the VM vendor is WebGain or Symantec.

CR 40026
When we threw protocol exceptions we did not also include the URI so there was no way to know what had possibly caused the exception. This has been fixed.

Service Pack 8

CR 40416
Using https from a web browser is causing a BadMACException. This has been fixed.

Service Pack 9

CR 28253
The AppletArchiver now supports the Java Plug-in--for both IE, and Navigator.

CR 28431
Fixed a problem in clustering with multiple, comma-separated, host names. For example, using a java client to access EJBs (e.g. the stateless EJB example includeed with the Server) on a WebLogic cluster the following syntax was not working:
    java examples.ejb.basic.statelessSession.Client t3://host1,host2:7001 
Now, such syntax works correctly.

CR 29007
A BMP findByPrimaryKey call now always checks the EJB container's cache before making a database round-trip.

CR 29639
Now we log the appropriate error message when the Server is started without a clustering license.

CR 30164
Now you can set the isolation level with finders.

CR 31072
Read-Only entity beans weren't failing over to another server under clustered environments.

CR 31148
Fixed some problems in EJB when finder methods for CMP beans were overloaded.

CR 31269
Added two properties to define a maximum size for POST and PUT requests which can be used as a mechanism to defeat denial of service attacks. The two new properties are weblogic.httpd.maxPostSize and weblogic.httpd.maxPostTimeSecs.

The default value of both properties is -1 (unlimited). If the maxPostSize or maxPostTime is exceeded, WebLogic sends an error message (a PostTimeoutException) back to the browser and breaks the connection. When the POST size is greater than the maxPostSize we return a response with status code HttpServletResponse.SC_REQUEST_ENTITY_TOO_LARGE and the connection is broken

Note: If the client has not finished sending the POST data it doesn't receive an error message from WebLogic. Instead it gets a Connection Aborted error. Plugins will be able to handle this broken pipe and send an appropriate message to the browser.

Default values for both properties are -1. This means the maxPostSize and maxPostTime are unlimited.

CR 31604
Fixed a bug where EJBs with large Primary Keys caused OutOfMemoryErrors.

CR 31686
Fixed some problems in clustering when using Windowns NT and instate memory replication.

CR 31786
Added a new property for the weblogic.properties file: weblogic.login.logAllReadTimeouts. By default this property is set to true. If you set it to false, the server won't log a message when a read on login times out.

CR 31968
Now, when a protocol exception is thrown, we include the URI to help discover what had possibly caused the exception.

CR 32364
Fixed some performance issues with failover in RMI Objects in a cluster.

CR 32605
Now it is possible to do JSSE with WebLogic Server 5.1. An example has been provided with this Service Pack.

CR 33013
Fixed a problem with the JSP FORWARD tag when using a symbolic link.

CR 33423
There were dbKona problems with QueryDataSet and the OCI805_8 driver. This has been fixed on Windows NT, but is still a problem on HPUX and Solaris.

CR 33935
There was a problem with the weblogic.httpd.enableEvents property. It has been fixed.

CR 34041
You can now rotate your jdbc log. We only allow you to do this based on date. You can specify how often we should rotate the log file and when we should begin that rotation. (See additional information)

CR 34242
Fixed a problem when getting a LONG RAW column with ResultSet.getBinaryStream(), the OCI driver GeneralProtectionFaults's when using Oracle 8.1.6 client libraries.

CR 34303
There were problems encountered in running some JSP examples from Sun. For example, the tutorial at: http://java.sun.com/products/jsp/tutorial/TagLibraries15.html#62465. The problem is that JSP Tag Libraries without package names are not honoured by Weblogic Server. There is a work-around, see additional information.

CR 34351
We have added a utility (beasvc.exe) to install and remove WebLogic instances as NT services. (See additional information)

CR 34389
Escaping Quotes were not working in the value tag for JSP parameters; the server now functions per the spec-where quotations are to be escaped with \".

CR 35071
Now we conform to the Extended Log Format when logging String and Text data formats by ensuring the value is in quotes.

CR 31331
There were problems enabling OS authentication and using Oracle 8.1.6/oci8 with the jDriver. This has been fixed on NT and HP-UX, but still is an issue on Solaris. We have added an error message that reports this problem: OS level authentication is not currently supported due to a defect in OCI 8 libraries.

CR 36008
Fixed a problem with WebLogic and JDK 1.1.7. EJBs passing an array of a user defined object were causing errors only when used with this particular JDK.

CR 36671
With a char(1) field defined in Oracle, which maps to a variable defined as a char on the java side, Weblogic fails to compile. We were casting the result set of a query to a String, before placing it into the character field.

CR 36867
Now the server can reload JSP pages if its associated .class file has been modified. To do this you must have pre-compiled your JSP's using the new -neverStale flag in JSPC. The JSP was not being updated if it was requested before the pageCheckSecs timeout expired. This was preventing JSP's from being updated where the pageCheckSecs was set to a longer time than the average frequency of requests to that page.

CR 36874
CachingRealm was only resetting ACLs with the delegate realm's information, but it was also necessary for it to do it with the Group memberships as well.

CR 36945
Security roles were not effective for an EJB's Home interface methods. To fix this problem, install the WebLogic_RDBMS.jar file from Service Pack 9 or higher.

CR 37097
Added ZAC support when using JDK 1.2 and 1.3 on Solaris.(See additional information)

CR 37398
Fixed a JDBC problem with OutOfMemoryErrors when deleting data from tables.

CR 37427
The Oracle 8.1.6 JDBC driver caused cluster's booting to be extremely slow.

CR 37693
There are no longer problems with the Oracle driver and ROWID selects when running examples.dbkona.rowid.

CR 37893
Fixed getBytes() to return null instead of a zero-length byte array with Oracle LONG RAW columns.

CR 38229
The jDriver for Oracle 8.1.6 caused managed servers to run out of memory.

CR 38016
A request for a JSP whose source file no longer exists undeploys the JSP and returns a 404. The server was not undeploying JSPs that were deleted from the file system.

CR 38245
Fixed a problem in EJB. Array data type method parameters were not handled properly. For example, a transaction invoked by a session bean was null with container managed transactions if <method-param> was set to byte[].

CR 38354
If there is no errorPage attribute specified inside the JSP, the server will use an error page specified by the <error page> tag in web.xml.

CR 38623
A new parameter, compileOptions, can now be used in the weblogic.properties file under the JSP initial arguments (JSPServlet.initArgs) or in web.xml as a <context-param>. Use this parameter to specify your compiler options.

For example:
weblogic.httpd.initArgs.*.jsp=\
       pageCheckSeconds=1,\
       compileCommand=/usr/local/jdk1.2.2_05/bin/javac -O,\
       compileOptions=-g -O
	   workingDir=/home/weblogic/ivarServer/classfiles,\
       verbose=true,\
       keepgenerated=true


CR 38661
Compiling a JSP that contains an include directive with a relative URI was not resulting in the file's path being parsed correctly.

CR 38986
Fixed a deadlock occurring in JMS under heavy load.

CR 39025
Fixed a problem with JDBCStore not recognizing the MS-SQL driver when it was modified by an ISV.

CR 39124
We now support SSL between a proxy server and a WebLogic Cluster

CR 39203
If there are multiple headers with the same name in a request, the getHeader method returns the first header contained in the request. Previously getHeader was returning the last header.

CR 39254
There was the wrong information in the SNMP Trap Agent field. The actual agent host's IP address was not appearing; it was always being set as the localhost. This has been fixed.

CR 39285
A <cache-type> tag has been added to the <caching-descriptor> in the weblogic-ejb-jar.dtd. The <cache-type> tag can be set to "NRU" or "LRU", and it is default to NRU. If the LRU option is chosen, WebLogic Server passivates a stateful session bean after its idle-timeout has expired. When set to NRU, the bean is not passivated after its idele-timeout has expired.

CR 39309
Fixed multiple problems with the UnixRealm. If you are using Solaris and are having problems make sure you are at the correct PAM patch level.

CR 39314
Now we undeploy Stateless Seesion Beans on Server shutdown.

CR 39458
Fixed a problem including a .jar file in the servlet classpath in the weblogic.properites file. After hot deploying the servlet using the WebLogic console, and then modifying the servlet class and rebuilding the Jar, when reloading the servlet in a browser there were no changes in the servlet output. This has been fixed.

CR 39503
Improved performance with CGI requests.

CR 39768
When using the NSAPI plug-in, we now allow the JSP size to be viewed through the NES log, when those files have been served by WebLogic through NES.

CR 39816
The server was throwing out of memory exceptions when a high number or requests per second were made for session EJBs. This has been fixed.

CR 39825
A new property "weblogic.jolt.connectionPool" has been added. If this property is defined in the weblogic.proeprties file, then the Jolt session pool will be started before EJBs get deployed. The following is an example of how to set this property:
weblogic.jolt.connectionPool.demojoltpool=\
    appaddrlist=//bavaria.bea.com:27000,\
    failoverlist=//bavaria.bea.com:28000,\
    minpoolsize=1,\
    maxpoolsize=3


CR 39882
Fixed some recent problems loading performance packs on AIX and Linux.

CR 39887
There was an issue with preparedStatement.setCharacterStream and the type 2 driver. This has been fixed.

CR 39904
In WebLogic Server 5.1 with CMP entity beans, finders-call-ejbload is set to true by default. So, during any finder query, ejbLoad gets called. When this is followed by a business method invocation, ejbLoad method is called again. This happens even when both the finder query and the business method are running in the same transaction. When the lock to the bean is already obtained and the bean is also loaded, ejbLoad need not be called again during business method invocation. This was happening and resulting in twice the number of database reads.

CR 40077
Using SHTML and server side includes, parameters specified in the PARAM tag were not working. This has been fixed.

CR 40106
When running the server as an NT Service with JDK 1.3, the server was shutting down when the user logged off the machine.

CR 40107
There were problems with nested (tags inside of tags) custom tags in JSPs. This has been fixed.

CR 40147
Enabled logging of ResetExceptions if weblogic.debug.httpd=true

CR 40402
Fixed a problem with RMI, occuring after hundreds of succesful calls to remote objects. The client was exiting with a PeerGoneException.

CR 40249
We now support the use of single sign-on for Web Applications.

CR 40258
There were problems with user's losing their credentials--using JMS Persistence when disableGuest=true.

CR 40418
Some java.net.SocketException: JVM_recv in socket input stream read (code=10053) errors were unnecessarily sent to the log.

CR 40481
Added a utility that allows Jolt pools to be reset. The following example files included in this service pack demonstrate the use of this utility: examples/jolt/servlet/jadmin/examples.jolt.servlet.jadmin.BounceJoltServlet.html, examples/jolt/servlet/jadmin/BounceJoltServlet.java, examples/jolt/servlet/jadmin/index.html, and examples/jolt/servlet/jadmin/joltadmin.html.

CR 40305
Fixed NPE when trying to get pool connection.

CR 40509
Fixed a small problem with Solaris 2.6 and the jdriver.

CR 40511
The ejbc compliance checker was giving the wrong error message if the super-interface implemented Serializable.

CR 40526
On HPUX-11.0, native IO was not working with when using WebLogic 5.1 with Service Pack 7/8. this has been fixed.

CR 40544
Fixed some problems with JMS queries and MS SQL Server.

CR 40598
Fixed some recent problems (as of Service Pack 6) with the type 2 JDBC Driver on Tru64-UNIX.

CR 40659
When specifying getParameter()--for example, <%= new String(request.getParameter(itemQ[i]).getBytes ("iso-8859-1"), "SJIS") %> --encoding as iso-8859-1, the POST method was not working properly.

CR 40660
Fixed problems with the HTTPClusterServlet when using Solaris Servers in a cluster. There were issues with the post data being read twice.

CR 40681
Now you can set the time to live when using the MulticastTest utility (utils.MulticastTest).

CR 40683
There was a problem with the performance pack not loading on AIX 4.3.3

CR 40686
The correct IllegalStateException is now thrown if a session is invalidated more than once.

CR 40776
The JSP tags <jsp:include> and <jsp:forward> were not taking into account query strings done in different encoding.

CR 40826
Now we attempt to show the username and password that were entered when a user submitted the wrong credentials in a form auth. User credentials are forwarded to the error page specified in WebAppSecurity as long as this response has not been flushed. Where the response has been flushed, the server has no choice but to send a redirect to the error page--without the form-auth user parameters.

CR 40829
Fixed a problem in EJB when a second bean (a Stateless, TX_NOT_SUPPORTED bean) throws an error and the transaction started by first bean is incorrectly rolled back.

CR 40836
Network disconnects can cause WLEC connections to be used up. If certain kinds of network disturbances occur, WLEC connections will get stuck in active use forever. This problem has been fixed.

CR 40851
We increased our internal cursor buffer to prevent errors like the following: java.sql.SQLException: Parameter cursor pool exhausted - make sure you call Statement.close().

CR 40856
Added ZAC support for AIX, Solaris, HP-UX, and Linux on JDK 1.2 and 1.3. Also added ZAC support for JDK 1.2 and 1.3 on the Tru64unix platform.(See additional information)

CR 40872
When a startup class took a long period of time to complete (~2 minutes), and the session timeout parameter is relatively short (1 minute), the session invalidation trigger was firing only once. This means that sessions are never automatically invalidated. Now this has been changed so that it is possible for the trigger to be rescheduled to run once an exception is thrown.

CR 40878
Using the Apache plug-in, query strings were being trunctated when they included blank spaces. This was only happening with redirects.

CR 40903
We now have an EAPI version of the mod_wl_ssl.so for Apache SSL with Raven on HP-UX 11.0.

CR 40928
Fixed an operation READ failed error on HP-UX 11.0 that was related to only partial pages showing up in a browser.

CR 40977
Fixed a problem with the WebLogic plug-ins when there are multiple cookies coming from the browser and the total length exceeds 1024 characters.

CR 41024
There was a problem with Service Packs 7 and 8 with Netscape and pages getting redirected to port:80.

CR 41029
Now the weblogic classpath can be read from a file. If -Dweblogic.class.path property starts with a @ character, then the server will read the classpath from the file that is specified next. It should be set, for example, like this: -Dweblogic.class.path=@foo\cp.txt;

The class path should start with @ and end with ; characters. You should only specify one file to be used. If the class path file is not available, or not specified correctly, an appropriate FileNotFound exception will be thrown.

CR 41062
We now support multiple entries in WlForwardPath when using the ISAPI plug-in.

CR 41093
Added a new property: weblogic.httpd.compileJspEnabled. The default is set to TRUE. Adding weblogic.httpd.compileJspEnabled=false to the weblogic.properties file will disable compiling jsp's entirely-- please do not use this property unless you are sure that it is appropriate for your uses.

CR 41173
We have addded i-net as a known driver that can be recognized by JMS.

CR 41206
The plug now will add the missing "/" to the obj.conf if a user has forgot to place it in front of a filename specified by DefaultFilename.

CR 41237
Fixed some problems in the HTTPClusterServlet when the connection header is set to close. Connection: Keep Alive headers kept occurring and werer getting transferred to the client.

CR 41242
We have updated the JSP Cache tag. This fixes problems with JSP requests after the server has been restarted, and when clients try to reload their browsers.

CR 41243
Fixed a problem in plug-ins with PathTrim and the <Files> tag using virtual hosts.

CR 41259
Fixed a problem with the <stateful-session-persistent-store-dir> tag when using Stateful Session Beans.

CR 41297
When, under load, the Server creates an instance of an entity bean and invokes a business method without calling either ejbFindByPrimaryKey or ejbLoad. The result is a NullPointerException. this behaviour appears to occur under load.

CR 41312
Now, when we throw a TransactionRolledBackException, we include an embedded exception so that it is easier to figure out why the transaction rolled back.

CR 41320
Fixed some problems with headers (X-Forwarded-For) used by caching proxy engines.

CR 41335
Fixed some problems occurring in a non-clustered environment, when modifying attributes saved in the HttpSession.

CR 41339
Fixed a problem in JMS with the IBM type 2 JDBC driver not being correctly identified.

CR 41343
Jolt Session pools were slowing WebLogic Server down when a TUX node/network failure occurred.

CR 41351
Previously, Oracle's driver couldn't set the DBMS's transaction isolation level, so WebLogic intercepted that call and did it via SQL. Now Oracle's drivers can set the DBMS transaction isolation level, and in some cases where getTransaction- Isolation() is called, the driver returns the wrong value because WebLogic was setting it without the driver knowing. Now we leave this task to the driver and the server no longer interferes.

CR 41352
Added a performance enhancement to JDBC connection pools, especially useful for CMP JDBC, which creates many PreparedStatements, and only uses them once before closing the connection--caching PreparedStatements to JDBC connection pools.

CR 41387
If you called getUsers or getGroups with an NTRealm, the server's performance was very poor. This has been improved.

CR 41497
Fixed a problem with non-secure protocols and the use of JNDI from applets.

CR 41552
Fixed a problem with JSP compilation when using jsp:use bean and type is set to an interface implemented by the class specified.

CR 41661
When HttpRequest.isUserInRole() is called on a servlet with an ACL and after the user has been successfully logged in, a null pointer exception was thrown when using WebLogic Server 5.1 with Service Pack 7 or 8. This has been fixed.

CR 41686
The file servlet was serving up files correctly through an open directory Web Application, but not through a .war file Web Application.

CR 41687
The CGI servlet works now for Web Applications in a .war file, as well as in open directory Web Applications.

CR 41755
When there were multiple, simultaneous requests for a JSP page using jsp:useBean tags, sometimes the bean was getting instantiated too many times. CR 41769
Fixed a problem connecting to a URL through HTTPS when using an applet archiver.

CR 41777
The HttpClusterServlet dynamically maintained a list of backend cluseter servers. If any node goes down or comes back up, the HttpClusterServlet will update its dynamic server lists accordingly. If somehow, the dynamic list is corrupted, the HttpClusterServlet now has the ability to use the static server list instead. The static list of servers is provided by the initial argument "defaultServers" of the HttpClusterServlet.

CR 41804
Cleaned up some unnecessary error messages with transactions with no resources or synchronizations.

CR 41888
Fixed a recent problem in Service Pack 7-8. When an HTTPS Servlet/JSP request came into a WebLogic Proxy and then was forwarded to the Server the Servlet/JSP was not executed, the browser received nothing and the request timed out.

CR 41900
Fixed some problems in JMS due to a change in Object Messages that was incorporated into Service Packs 7-8. If you had any ObjectMessages that were in persistent queues with a pre-Service Pack 6 WebLogic Server, these messages were unable to be read with a WebLogic Server with Service Pack 8. These problems have been fixed.

CR 41924
When calling a business method on a Stateless Session Bean with Bean-managed transactions that throws a non-appException, the container was not correctly--per the spec--throwing a RemoteException back to the client.

CR 41950
Fixed a bug in JSP when calling the findAttribute method of page context.

CR 41973
Now, the only time when the lastAccessedTime of a session is updated is at the end of a request related to that session--or when the session is created. This fixes a problem with HttpSession.getLastAccessedTime() always returning the current time, for example, when using a tag like the following: <%=new Date(session.getLastAccessedTime())%>.

CR 41977
When a Web Application creates an HttpSession and then forwards a user's request to another Web Application, the second Web Application calling Request.getSession() obtains access to the first session and all of its data--this second Web Application should have just created its own new session. This has been fixed.

CR 42019
Using the mod_usertrack module from Apache, when the WebLogic Apache Bridge is enabled, the configuration of the apache session tracking was being ignored. The the mod_usertrack module was not finding the expected cookie.

CR 42022
: Fixed problem with the WebLogic jDriver and AIX 4.3.3.

CR 42028
WebLogic's implementation of getColumnDisplaySize() was quadrupling the character size of nchar and nvarchar data types by taking the field size returned by MSSQLServer in bytes and then doubling it. This has been fixed.

CR 42044
Some EJB logging messages were not being sent correctly. When the trans-attribute in the weblogic-ejb-jar.xml file was set to Required, an application exception was correctly thrown and not logged. However, when it was set to Supports (or any other setting) a correct logging message should have been generated. The correct message is now sent.

CR 42054
Fixed problems with the RMI driver and JDBC 2.0 calls.

CR 42055
The weblogic.httpd.inputCharset property was working using GET, but not using POST.

CR 42067
Fixed some problems in EJB doing "where 1=0" queries with CMP beans.

CR 42081
The weblogic.httpd.session.persistence property no longer functions, use weblogic.httpd.session.persistentStoreType. You can set the StoreType to memory, file, jdbc, or replicated. It will default to memory.

CR 42089
Using Service Pack 7-8, a Web Application could not have the name 'app'. This has been fixed.

CR 42145
Using a multi-byte enabled browser, with WebLogic Server and Service Pack 8 (this means having set weblogic.httpd.inputCharset./*=UTF-8 in the weblogic.properties file). The multi-byte characters are not displayed properly by a JSP page.

CR 42161
The CGI servlet was having problems extracting scripts from .war files. This has been fixed.

CR 42175
Fixed problems with getBigDecimal and using MS-SQL Server.

CR 42204
When a broken CGI script cannot execute, the browser was showing a blank page rather than an error page. When this occurs, now we send a 500- INTERNAL SERVER ERROR.

CR 41935
Fixed problems invoking an overloaded public method when connecting to an EJB as an RMI-IIOP client.

CR 42228
Now, according to the spec, CGI will recognize headers of scripts starting with -nph and will not parse them.

CR 42277
Fixed some problems with the ISAPI plug-in when Debug=ON in the iisproxy.ini file.

CR 42295
Fixed extraneous NullPointerExceptions clogging up the logs in response to uncommon URL requests.

CR 42326
Fixed a problem with the ISAPI plug-in failing to find the existing session id, and unnecessarily failing over to the secondary server--creating a new request and causing lost sessions.

CR 42430
The RemoteException detail field was not being set correctly sometimes. If a first EJB calls a second EJB and the second throws a RemoteException with the detail field set, the detail field is null when A rec