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 receives it. When the client is in a different VM, however, the detail field of the RemoteException was set correctly. Now the RemoteException detail field is set correctly.

CR 42360
Fixed some problems in JSPs with getCharacterEncoding returning the incorrect character set.

CR 42451
Fixed a problem in Servlets/JSP, with using setLocale(), as in the following example:

<%@ page import = "java.util.Locale" %>
<%
    Locale locale = new Locale("ru","");
    pageContext.getResponse().setLocale(locale);
    System.out.println("locale = " + locale);
    System.out.println("charset = " +
pageContext.getResponse().getCharacterEncoding());
%> 


CR 42518
Added a new property called weblogic.cluster.interfaceAddress. If you are using NT and wish to direct your multicast traffic to a different Network Interface Card, setting this property is an option. Set this to the appropriate ip address: weblogic.cluster.interfaceAddress=<ip address>

CR 42564
Fixed some problems with the HttpClusterServlet throwing a Broken Pipe Exception during a socket write operation. The HttpClusterServlet was recycling sockets that WebLogic had closed.

CR 42605
Fixed a problem using the HTTP_REFERER environment variable with the CGIServlet.

CR 42724
When there was a problem, javax.jts.RollbackException was not correctly putting the exception thrown in its detail field.

CR 42808
Fixed some potential problems with Service PAck 7-8 and uploads with the NSAPI plug-in.

CR 42951
When a JSP file has an included JSP, which is a JSP-tag extension, then, if an error occurred, weblogic.jspc was not specifying which JSP file had the error. This made it difficult to determine which tag-extension-jsp was causing problems.

CR 43059
A UDFDataFormatException was being raised when a Jolt client received a message from Tuxedo service containing a STRING buffer type and the STRING contained extended ASCII characters.

CR 43068
When a PathPrepend parameter in the IPlanet obj.conf file is set to prepend the path information on requests to JSP's on WebLogic, the path is prepended twice when a redirect is issued to the browser.

CR 43200
When setting the plug-in property 'idempotent: OFF', the server was failing over to the secondary server in the cluster without sending an error back to the browser.Now if idempotent=off and the primary server is down, an error page with status=500 is correctly returned and there is no fail-over to the secondary server.

CR 43322
An application exception thrown from a bean method with bean managed transaction demarcation was not being properly propagated to the client. The client was incorrectly getting a TransactionRolledbackException. We now conform to the spec, and re-throw the application exception to the client, as well as not rollback the transaction.

CR 43371
HttpServletRequest.getRemoteAddr() was not returning the actual client IP address when WebLogic was used as a proxy. It returned the proxy's address.

CR 43547
Fixed a problem involving the update of router information in a client-to-client RMI configuration that uses WebLogic as the JNDI provider and that acts as the router between the clients.

CR 44031
Fixed a problem with JSP pages calling bean classes. For example:
<jsp:useBean id="mySessionBean" scope="session" class="weblogic.FooBean">
</jsp:useBean>

<jsp:getProperty name="mySessionBean" property="title" />
In this case, a ClassNotFoundException was being thrown. This has been fixed.

Service Pack 10

CR 28976
Fixed a problem in EJB when CMP (Container Manager Persistence) finders were not running in transactions.

CR 29322
Fixed a problem with the JTS connection and the setAutoCommit parameter. Now, if setAutoCommit(true) is called on a JTS connection that is involved in a Distributed Transaction, an SQLExecption is thrown. If setAutoCommit(false) is called on a JTS connection that is involved in a Distributed Transaction, the call is ignored.

CR 30735
Fixed a problem with the EJB container and the setRollbackOnly call. The spec says that if setRollbackOnly is called in an EJB method, but the method does not throw an exception and returns a value, the value should be returned to the client. The container was throwing an exception.

CR 30995
Fixed a problem with not being able to delete the JAR file even after undeploying an EJB.

CR 31000
Fixed a problem with the Apache plug-in failing to do load balancing.

CR 31575
Fixed a problem with deploying many EJBs in a cluster causing a huge amount of multicast traffic as a result of JNDI naming tree replication. This was also addressed in Service Pack 4. The multicast properties "weblogic.cluster.multicastDelayMillis" and "weblogic.cluster.mutlicastMaxDelayIncrements" that handle the buffer overflow properties have been replaced by the properties "weblogic.cluster.multicastSendDelay" which has a range of 0-100 with a default of 15 and "weblogic.cluster.maxMulticastSendDelayMilliSeconds" which is the maximum delay between fragments and defaults to 250 ms.

CR 33541
The WebLogic type 2 jDriver for Oracle was making two SQL executions to the database for every query. Now, it only makes one.

CR 33877
Fixed a problem with a ciphersuite in the default ciphers that was nonexportable. The SSL_RSA_WITH_DES_CBC_SHA ciphersuite is now exportable.

CR 35349
Fixed a problem when using WebLogic JDBC2.0 drivers to get a resultset from an Oracle stored procedure that contained a blob. This was causing the server to crash.

CR 35585
When using RBDMS realms (custom realms) and Oracle type 2 (oci) drivers as the database, the server was crashing when being shut down. This has been fixed.

CR 36076
There were problems generating thread dumps with JDK 1.2. These problems have been fixed.

CR 37514
The JDBC Type 4 jDriver for Microsoft SQL Server 7.0 was returning 01000, an incorrect value for SQLSTATE, when a database deadlock resulted in an SQLException. This has been fixed.

CR 37884
Fixed a problem with the HomeHandle interface communicating with the server when the server was across a firewall and HTTP protocol was being used. The interface was using the T3 protocol instead of the protocol used when the home handle was obtained from the server during the initial lookup.

CR 38212
Added support for JDBC 2.0 connection pool drivers in JMS and EJB. JMS only allowed JDBC 1.x connection pool drivers and now allows the use of any driver specified in the configuration.

CR 38235
Fixed an inconsistency in the Oracle jDriver double data type. Oracle 7, a double data type allowed a minimum value of 1.0E-130d, and Oracle 8 was only allowing a minimum of 1.0E-127d.

CR 39083
After the JSP/Servlet forward returned, any or all writes made to the outputStream were being neglected. This has been fixed.

CR 39171
Fixed a potential erronous exception for MaxMessageSizeExceeded when interpreting surplus post data as header data.

CR 39358
When trying to shutdown a WebLogic server connected to an LDAP server on an HP-UX11 machine, the java process was not exiting. All the ExecuteThreads were stopped except one. This has been fixed.

CR 39782
Fixed a problem with a checked exception when using RMI-IIOP. The exception was erroneously being wrapped in org.omg.CORBA.UNKNOWN and sent to the client.

CR 39810
Upgraded the Oracle jDriver with the 8.1.6 libraries.

CR 39959
Fixed a problem when monitoring JMS with the console. Even when a JMS Session was closed its status remained open on the console.

CR 40132
Fixed a problem with temporary queue names in the database that backs JMS. Using a client that creates temporary queues when closing the connection, the console was not showing any queues, but the queue names were still appearing in the database. However, when restarting WebLogic, the queues reappeared in the console in the JMSDestination table. The temporary queues were removed when the connection was closed so that they would not re-appear when WebLogic was restarted.

CR 40230
The MS jDriver was not able to handle huge column names (i.e. 250 characters). Some DatabaseMetaData calls require preprocessing of DBMS output, and some of this preprocessing assumed reasonable column name sizes. This has been fixed.

CR 40404
The weblogic.httpd.charsets.Shift_JIS=SJIS method was being ignored. This has been fixed.

CR 40418
The java.net.SocketException: JVM_recv in socket input stream read (code=10053) was not caught and was thrown in the log. The exception is no longer thrown in the log. This problem was also addressed in Service Pack 9.

CR 40434
Fixed a problem with tunnelling T3Services. While running the HelloWorld example and tunnelling it through a web server, the following exception occurred:
javax.naming.CommunicationException.  Root exception is 
     weblogic.rmi.ConnectException: Failed to create socket to: 
     6194840708667149193S127.0.0.1:?,7007,7002,7002,7007,-1] using protocol t3 


CR 40585
Fixed a problem with using the framesetElement.setBorder(#) and framesetElement.setBorderColor(color) methods with Internet Explorer. For example, when using these methods, the html that was generated did not have quotes around the parameter:
border=1 bordercolor=color
Netscape displayed the appropriate border, but Internet Explorer did not.

CR 40637
Fixed a problem with JMS losing messages. When a transaction was rolled back, there were instances where some messages in the rolled back transaction would never be redelivered in a subsequent transaction.

CR 41178
Fixed a problem with the ResultSetMetaData.isAutoIncrement (int col) method not working in the MSSQL server driver. The method now returns either true or false depending on whether the column is an identity column or not.

CR 41356
Now you may test pool connections with something other than "select count(*) from <testTable>". If the pool's testTable starts with "SQL ", then we will execute the remainder as SQL.

CR 41516
When the WebLogic SP8 server was running on Solaris 2.7, running the command java weblogic.Admin t3://IP Address:PORT PING resulted in the weblogic.rjvm.PeerGoneException error message in the console window (log file). This has been fixed.

CR 41588
In SP8, if the userID, system, was defined in the LDAP server, WebLogic was throwing an exception. This has been fixed.

CR 41635
Fixed a problem with JMS making calls only to Oracle and not working with PostgreSQL and other databases.

CR 41793
In Service Packs 6, 7 and 9, the JDBC connection pool reset was failing after the database was down and started up again. This has been fixed.

CR 41866
Fixed a problem with the getCharacterStream method using the WebLogic type 2 JDBC Oracle driver. Using Service Pack 8, trying to invoke the getCharacterStream method call on a CLOB Oracle DataType that was returned from a stored procedure resulted in the following exception: java.sql.SQLException: ORA-22279: cannot perform operation with LOB buffering enabled.

CR 41903
Fixed a problem in EJB when transactions were timing out after 30 seconds and causing an error. When using the home interface and a CMP finder method to find a large set of container managed EJBs, the transaction was timing out after 30 seconds and the TxRolledbackException was being thrown.

CR 42018
Now, when using HTTPS, the browser or client creates only one new SSL connection and uses the SSL session cache to re-use that SSL connection. Therefore, performance is improved in all SSL connections due to not having to go through the entire SSL handshake during every connection.

CR 42091
The client-side SSL debug log is now dumped to standard out when using the following flags:
-Dssl.debug=true
-Dweblogic.system.enableConsole=true


CR 42219
When executing the Weblogic Time Services trigger() method, the getCurrentUser() method was returning the wrong user in some cases. This has been fixed.

CR 42423
Fixed a problem with establishing an HTTPS connection to WebLogic using an applet via the java plug-in.

CR 42464
The WebLogic jDriver for Microsoft SQL Server (MSSQLServer4 Kit Version 7 Release 510) supports multiple selects in a single execute() properly. The select queries where returning updatecounts prior to this fix.

CR 42526
Fixed a problem with the tmp_deployments directory for EJBs. If the weblogic.system.logFile was set to some other directory such as weblogic.system.logFile=logs/weblogic.log, the tmp_deployments was created in the logs directory. Now, it remains in the weblogic.system.name directory.

CR 42566
Fixed a problem with the MSSQLServer4v70 type 4 JDBC Driver. When trying to retrieve a row that contained an empty string ("&qu (""), using the type 4 MSSQLServer4v70 driver, the driver was returning NULL instead of the empty string.

CR 42598
Fixed a problem with applet reloading throwing an Assertion error. Hitting reload once or several consecutive times caused the applet to throw the following error:
weblogic.utils.AssertionError: ***** ASSERTION FAILED *****[ MBuf used after 
                      writeTo() called ]
CR 42652
Fixed a problem with accessing the LDAP server data (Netscape Directory Server) through WebLogic JNDI code.

CR 42734
Added new, more informative EJBC error messages to appear when a CMP1.1 Bean has a compile error using Service Pack 9.

CR 42771
Fixed a problem with the JDBC ConnectionPool example using Oracle jDriver. The example was generating VM exceptions and causing the server to crash.

CR 43073
The Web Application using Java ResourceBundle was getting FileNotFoundException acc. This has been fixed. A web application retrieves application properties from a properties file via the Java ResourceBundle mechanism. When deploying the web application from an unpackaged directory, everything worked fine. However, when deploying the web-app via a WAR file, a FileNotFoundException was thrown when attempting to access the properties file. The properties file was not being copied into the _tmp_war_... directory that is created at runtime.

CR 43146
Fixed a problem with transactions that involved EJBs on different hosts in a cluster. If there were two machines in a cluster and Bean1(SSB) was deployed on one host, Bean2(BMP) was deployed on the second host and a call from a servlet was made into Bean1 which was marked as TRANSACTION_REQUIRED, Bean1 made a DB call and then called into Bean2 which resided on a different host. Bean2 was also marked as TRANSACTION_REQUIRED and configured to use an identical TXDataSource as specified in the cluster level weblogic.properties file. When trying to insert data into the database from Bean2, the data was neither being inserted nor was there any error being thrown.

CR 43151
Fixed a problem with the JNDI subcontexts in a cluster. Subcontexts in the JNDI tree were being removed if the server that was started first in a cluster died. The second server in the cluster retracted its subcontext and then the subcontext was no longer available. The subcontext now remains in the cluster and only services are retracted.

CR 43154
Fixed a bug that was preventing LogAuditProvider from recording events for WebApps. Now, LogAuditProvider can record events for servlets and for any security that was defined inside web.xml for the scope of the Web Application.

CR 43203
Fixed a problem with Form Authentication in WebApp working as BASIC Authentication. After Form Authenication was successful, when clicking the Back button on the Netscape browser and re-submitting the Form Authentication, the BASIC Authentication dialog appeared. Now, this dialog does not appear.

CR 43216
Fixed a problem when connecting to WebLogic from a proxy server. The java.net.MalformedURLException was thrown. The problem occurred when using form-based authentication and SSL was disabled on the server side.

CR 43225
Fixed a problem with serializing the JMS ObjectMessage. When doing a setObject, the object was serialized and then unserialized to make a copy before getObject was called. When the object was serialized, no copy of the bytes was saved so the message had to be serialized again when it was finally sent.

CR 43316
Added the ability to setServerName via a property called defaultServerName. Now it is possible to specify the default server name for any Http request.

CR 43353
Fixed a problem with the server SHUTDOWN and the servletcontexts. The server shutdown caused only the defaultContext to be shutdown. Other contexts held by servletContext were not shutdown.

CR 43448
Fixed a problem with JMS messages being redelivered after a transaction timeout.

CR 43502
Fixed a problem when jDriver was throwing commit while resetting the connection pool. When executing RESET to the connection pool that was updating database, the data was committed even if the application called rollback.

CR 43569
Fixed an HTTPS class loading problem that existed when running a java client under JView.

CR 43582
Fixed a problem with sharing violations encountered when trying to delete a JSP. For example, if a foo.jsp file included a bar.jsp file, the bar.jsp file could not be overwritten when trying to redeploy the JSPs dynamically while the server was running using the following directive:
<%@ include file="bar.jsp" %>
This happened only when WebLogic needed to recompile foo.jsp.

CR 43745
Fixed a problem when Oracle jDriver returned OCI_SUCCESS_WITH_INFO and, for example, SQL that contained a group function (such as MAX) returned null. The jDriver was not completing the process and was returning a warning message such as ORA-24347. Now, the jDriver returns the result as well as the warning message.

CR 43766
Fixed a problem with setting the properties for the javax.jms.Message interface. If a client tried to set properties after receiving a message, the MessageNotWriteableException was being thrown because the properties were in read-only mode. Now, the clearProperties() method is called and the properties can be set.

CR 43771
Fixed a problem with deploying a large number of EJB's in a cluster.

CR 43778
Added new property called weblogic.system.priorityShutdownClass to fix a problem when trying to lookup an RMI object in a shutdown class using a machine that is part of a cluster.

CR 43809
Fixed the problems that a forwarding JSP page had in war file format. A jsp page that forwarded with the following parameters worked using an open directory deployment. For example, the forward portion of the page:
<jsp:forward page="<%=pageValue%>">
<jsp:param name="<%=favoriteTeamName%>" value="<%=favoriteTeamValue%>"/>
<jsp:param name="<%=favoritePlayerName%>" value="<%=f
value="<%=favoritePlayerValue%>"/>
</jsp:forward>
<%}%>
However, when the application was deployed in the war file format, the server gave the following error when the page was requested:
java.io.EOFException: Unexpected end of ZLIB input stream


CR 43920
If the MatchExpression parameter is used, now when two VirtualHosts are configured for Apache, both of them will proxy requests to WebLogic.

CR 43930
The buffer attribute of the page directive did not work if it was set from within an included JSP using the include directive. This has been fixed.

CR 43953
Fixed a problem with the RequestDispatcher.forward method. Now it will forward to the welcome file in the web.xml file in the web application.

CR 43956
Fixed a problem with the WebLogic jDriver for Oracle 5.1 on HP-UX 11. The jDriver was not catching the error, ORA-01843 not a valid month. Now this error code is caught in jDriver which avoids core dump and returns the ORA-01843 error code.

CR 44152
Fixed the problem with parsing POST parameters after failing over by HttpClusterServlet. After HttpClusterServlet fails over the client POST request which has parameters, the secondary server can not parse POST parameters and shows the following:
weblogic.utils.NestedRuntimeException: cannot parse POST parameters of 
                 request/foo.jsp - with nested exception:
                 [java.io.InterruptedIOException: Read timed out]


CR 44116
Fixed a problem with WebLogic incorrectly parsing cookies received from the browser when integrated with Entrust's getAccess security tool. The getAccess product was returning cookies delimited by only a semi-colon with no included spaces.

CR 44174
Added the keyword for JMSPriority in the MessageImpl class to fix a problem with JMS. When providing a message selector for either a queue createReceiver() or for a createDurableSubscription() on a topic, the receiver was not selecting any messages.

CR 44212
Added Oracle jDriver for Oracle 8.1.7 client libraries.

CR 44247
Fixed a problem with JMS in which there were cases when a transaction was rolled back but the consumed messages seemed to disappear.

CR 44282
Calling the java.net.InetAddress.toString() method caused a reverse DNS lookup. This has been fixed.

CR 44315
Environment variables that had "-" in their names were not being set and the environment variable, PATH_INFO, was not being properly decoded. This has been fixed. The CGI variable, SERVER_SOFTWARE, includes the version number as per the CGI/1.1 specification.

CR 44396
Made performance enhancement w.r.t. every JSP request resulting in the lastAccessedTime being updated on the secondary server in a cluster using in-memory-session-replication. Now, the lastAccessedTime is only updated on the secondary as part of changes to other attributes of the session. The session on the secondary does not timeout but does expire when the primary session expires. This greatly improves performance where the session is obtained on the primary but no attributes of the session are changed, which occurs implicitly in a JSP. This performance enhancement has a slight side-effect that session timeout may be compromised if the primary fails during a period of non-access where the session should expire. In this circumstance, the session will continue to live for a full expiration period on the secondary if not accessed.

CR 44433
Improved parsing of JSP custom tag extensions. WLS now only recognizes and interprets declared tag libraries. Previously WLS relied upon the format of the syntax and would parse HTML tags of the form <foo:bar a="x" b="y" c="z">. Now this syntax is treaterd as plain HTML, and any JSP expressions of scriptlets it contains are interpreted correctly.

CR 44463
Fixed a problem in the TTLCache class that was causing an ArrayIndexOutOfBoundsException when the cache was full.

CR 44542
Although the <finder-list> and <options> tags are optional, if they were omitted from the deployment descriptor file, the EJBC was failing and giving an error message. This has been fixed.

CR 44553
Fixed a problem with JSP class and package names conflicting when using JDK 1.3. When a web application was deployed on WebLogic 51 SP8 and the JSPServlet used the JDK1.3 with the following directory structure:
CUSTOMERC 
                      +---apps 
                       | +---SimpleTestApp --------------> SimpleTestApp.jsp 
                           | +---SimpleTestApp 
                              | +---jsp ----------------> SimpleTestApp.jsp 
                      +---WEB-INF
an error occurred while accessing the second JSP. The error was a compilation error thrown by the JDK 1.3 compiler and occurred because Java does not allow a package to have the same name as that of a existing class. This problem did not occur with JDK 1.2.

CR 44558
Fixed the URL encoding for the ? and the = symbols.

CR 44665
See CR 44668.

CR 44668
Applets using t3s and HTTPS for the JNDI lookup were throwing a java.lang.NullPointerException. This has been fixed.

CR 44669
See CR 44668.

CR 44677
Fixed a failover problem caused by a PeerGoneException. Now, when a PeerGoneException is thrown due to CMD_IDENTIFY_REQUEST, the RemoteHelper does a retry.

CR 44695
Fixed a problem in clustering. The dynamic server list was returning to the plug-ins a server list that did not correspond correctly to the list of servers that were actually running.

CR 44697
Squashed bogus NotFoundException when unregistering secondary session. This occurred under timing conditions where the session expired on the secondary at the same time as it expired on the primary.

CR 44712
Added a context parameter called lowercaseExtension to make the JSP file name extension case insensitive.

CR 44734
Fixed a problem with EJBContext.getRollbackOnly()/setRollbackOnly() causing IllegalStateException. On calling EJBContext.getRollbackOnly()/setRollbackOnly() when running in the caller's transaction, an IlleagalStateException was being thrown.

CR 44776
When viewing the uptime in the console for a server which had been running for more than a week, the display for number of days up was not correct. This has been fixed.

CR 44777
Fixed a Basic Authentication problem when there were multiple security constraints for a webapp. After logging in for a given secured page, it was not possible to re-login as a different user to access another resource from the same browser.

CR 44818
The secure directory is now indexed after authentication. With both Basic and Form Authentication a security constraint is mapped as "/restricted" prompting the client for authentication for a request of host:port/restricted but not host:port/restriced/somefile. However, once authenticated with the correct information, the request was not indexing the directory.

CR 44935
Fixed a problem with JMS where unacknowledged ObjectMessages could not be redelivered after a session.recover.

CR 45112
Fixed a problem with Connection:close header in HTTP/1.1. When "Connection: close" header is sent in the HTTP request, WLS no longer uses Keep-Alive, but closes the connection.

CR 45141
Activated the compilerclass option for JSPs to keep the JSP compiler from failing when long classpaths were used.

CR 45192
When using a ServerSessionPool, all messages were being redelivered even after doing a session.commit() in a JMS transacted session. This has been fixed.

CR 45213
Fixed a problem with arithmetic-overflow scaling up sessionTimeoutSecs to milliseconds for expiration invalidation check with current time.

CR 45232
Fixed a problem with using an ACL for a connection pool not working using LDAP Realm.

CR 45327
Added Character type and char type support for the CMP field.

CR 45413
Added an international version of Jolt client which is required to talk with International Tuxedo. (See additional information)

CR 45454
Fixed a problem with the ejbStore callback method and CMP. The ejbStore method was being called each time the saveData method of a stateless session bean with transaction required called the upDate method of some fields managed by CMP.

CR 45504
The beasvc.exe file now supports a path that is greater than 1024 characters. When using the beasvc.exe file to run WebLogic as a Windows NT service and specifying a cmdline registry entry with more that 1024 characters, the service was failing to start.

CR 45578
Fixed a problem with NESTED scripting variables never being declared by JSPC. The TagExtraInfo class specifies that a scripting variable should be created. If the scripting VariableInfo returned specified type VariableInfo.NESTED and the tag in question was not a body tag, JSPC was not generating a declaration for the scripting variable.

CR 45696
Fixed a problem with JMS message processing. As of Service Pack 8, two receivers use the same ExecuteThread which in turn caused a delay in messages being received by the second receiver because the second receiver had to wait until the first receiver finished processing the message. To avoid deadlocks due to this change, on the server side, set the properties in the weblogic.properties file to values between 1 and 5.

CR 45706
Fixed the problem with the startWebLogic.sh utility grabbing file descriptors incorrectly.

CR 45711
In JMS, on a topic with a durable subscriber, some permanent messages were redelivered after the receiver had been restarted. This has been fixed.

CR 45766
Fixed a problem with the WLS-ISAPI Plugin. The __WebLogicBridgeConfig was showing DefaultFileName for NSAPI on NT and ISAPI on Win2k.

CR 45822
Nested groups were not working with the properties file. This has been fixed.

CR 45866
Fixed a problem with Apache adding other query parameters when sending a request. Passing the query string from r->the_request over to WebLogic server did not work if Apache added other query paramaters before sending the request to WebLogic since r->the_request is just the request line sent by the client.

CR 45879
Added a method that logs the user out of all webapps keeping the session data intact. (See additional information)

CR 45910
Included JSPs now redirect properly. Previously, if Server A was hosting a page called SessionServlet.jsp and getting docs files from server B when pointing to server A with the URL http://ServerA/SessionServlet.jsp, the request was being redirected to the SessionServlet.jsp for the jsp:include on the WebLogic Server rather than the one specified in the include (docs/index.html). This applied to all proxies.

CR 45915
Fixed a JMS problem with messages begin left in the queue after received messages had been acknowledged. When a high volume of messages was sent to a queue and a consumer retrieved those messages and sent them to another queue, the messages were not being removed from the first queue even though they were acknowledged.

CR 45943
Fixed a problem with exception handling in EJBs. When an exception occured in callback methods such as ejbLoad, and ejbStore, it was not being embedded in a nested exception which prevented the client from seeing the original exception.

CR 46028
Fixed a problem with the ResultSet.relative() method. When the relative(int ..) method was called on the ResultSet method obtained by a Prepared statement, an error was resulting.

CR 46042
Fixed the implementation of the weblogic.login.logAllReadTimeouts property. Using this property in Service Pack 9 was producing a message about an undeclared property and time-out messages in the log file.

CR 46045
Fixed a problem when the JTS driver was not passing properties to weblogic.jdbcbase.pool.Driver.connect. When trying to use a JSP to access a connection pool with an ACL, the following exception resulted:
java.sql.SQLException: Pool connect failed: User "guest" does not have 
Permission "reserve" based on ACL "weblogic.jdbc.connectionPool.oraclePool".
at weblogic.jdbcbase.pool.Driver.connect(Driver.java:184)
at weblogic.jdbcbase.jts.Driver.connect(Driver.java:244)
Even if the properties were filled in with username and password, guest credentials were still being used to try to access the pool.

CR 46052
Fixed a problem with the default access log file location. Now if it is set, weblogic.httpd.enableLogFile=true, the default access log file will go to $(WL_HOME)/myserver/access.log, unless overwritten by weblogic.httpd.logFileName=<path + filename>.

CR 46060
Fixed a problem in request.getHeaderNames() servlet API which returned different elements when upgrading from WebLogic server 5.1 Service Pack 6 to Service Pack 8. The Cookie element was different and the custom elements WebDefenderDR and WebDefenderDRS, did not appear when upgrading to Service Pack 8.

CR 46076
Fixed a problem when trying to send persistent messages from one WebLogic server to the JMS queue on another. There was a problem sending messages to the JMS queue on the second server after the first server was brought down and restarted.

CR 46088
Fixed a problem with the Apache 1.3.14 plug-in and choosing a random starting point in a cluster. Many of the Apache processes were generating the same "random" number if they were hit at the same time. This happened typically during a load-testing process.

CR 46093
Fixed the problem when the getRemoteAddr method was returning more than one IP address. If in the HTTP header we received, for example, Proxy-Client-IP: 160.81.98.218, 60.81.138.65, the getRemoteAddr() method of the javax.servlet.ServletRequest interface returned two IP addresses. This method should have returned only one IP address.

CR 46096
Added a new option called pathTrim (case insensitive) to HttpProxyServlet. In order to use this feature, you must register HttpProxyServlet with the following in your web.xml:
<init-param>
<param-name>pathTrim</param-name>
<param-value>/foo</param-value>
</init-param>
or in your weblogic.properties file:

weblogic.httpd.initArgs.proxy=pathTrim=/foo

CR 46100
The non-fully-qualified classes that existed in generated JSP code have been changed to fully-qualified classes.

CR 46104
Fixed a problem with post data getting lost inside the HttpClusterServlet. If a browser client sent a post request with some amount of data (approximately 24K) to the server, when pausing for at least a minute or so between two post requests, the post data would get lost inside the HttpClusterServlet.

CR 46174
Fixed a problem of inconsistently handling BIGINT data type and NUMERIC data type which was resulting in an ORA-1475 error.

CR 46234
Fixed a JVM bug on Windows by first checking that the path we gave to getCanonicalPath() was less that 255 bytes. Otherwise getCanonicalPath() would crash the JVM. This was a potential problem when extremely long URL's were requested in HTTP requests as part of a Denial-Of-Service attack.

CR 46236
Fixed a problem with defaultFileName property not working in Service Pack 9.

CR 46367
Fixed a problem with the doInitBody() and doAfterBody() methods of a custom tag being called even when the doStartTag() returned SKIP_BODY. This occurred when setting the tag's bodycontent to empty and using the empty tag syntax in the JSP (i.e. <foo:bar/>).

CR 46377
In order to avoid synchronization issues and deadlocks due to inherent problems with the DriverManager.getConnection method, we have replaced all references to DriverManager.getConnection with Driver.connect in all utilites. See http://www.weblogic.com/docs51/classdocs/urls.html#structure for more information.

CR 46378
When using Service Pack 9 and a JSP performed a response.sendRedirect("mailto:hey@hey.com"), the URL that was returned to the browser was http://localhost:7001/mailto:hey@hey.com. The URL that should have been returned is: mailto:hey@hey.com. This has been fixed.

CR 46455
Fixed a problem with slow deployment of large jar files generated by TopLink. Large jar files containing many entity beans had very slow deployment especially when using TopLink CMP where many inter-relationships may be defined among EJBs that must be deployed as a single jar file.

CR 46483
Fixed a problem with memory persistent sessions losing stickiness in a clustered environment after failover because the cookie was not resent when the server went down.

CR 46551
Fixed a problem wit the HTTPSessionContext.getSession(sessionid) method not working. because the session.getID() format changed. Provided a format so that a session can be reconstructed using the session.getId() string. This fix also applies to situations in which the session comes in as a request parameter (i.e. WAP).

CR 46585
Fixed a problem when, in a cluster of two servers, one JSP page invalidated a session that another JSP page had just requested.

CR 46611
Fixed a problem when the Apache plug-in was using PathPrepend as a parameter. The Apache plug-in defaulted to r->uri="index.html" when the request uri was mapped to "/". If the request was mapped to "/" and parameter DefaultFileName was used, we set the r->uri to be the value of "DefaultFileName".

CR 46621
Fixed a problem in EJB with the SecurityException and the RemoteException. The SecurityException is now embedded with the same message inside the RemoteException.

CR 46657
Back ported Oracle 8.1.7_8 jDriver on AIX and Linux.

CR 46690
Fixed a problem caused by an object being passed by reference instead of value when enable-call-by-reference was set to false.

CR 46681
The HttpProxyServlet was not handling multiple cookies. If the client browser was going through a front-end 5.1 SP9 WebLogic server that used the HttpProxyServlet to proxy requests to a back-end 5.1 SP9 WebLogic server, the cookies that are set on the client browser by the back-end WebLogic would not get returned to it when doing "request.getCookies();". Now, the cookies can be retrieved.

CR 46848
The getBigDecimal() method is now implemented on CallableStatement for MSSqlServer using JDBC 2.0.

CR 46939
POST timed-out messages were being thrown in the NSAPI plug-in when posting large messages. This has been fixed.

CR 47084
If a charset was specified in a JSP page and that page was compiled with the -contextPath option, users were getting a No Resouce Found error. This has been fixed.

CR 47089
Fixed a problem with reader threads blocking on a static lock held by threads doing blocking read on an Http Tunneling request.

CR 47105
Fixed a problem with replicating the JNDI stubs in a cluster when deploying EJBs. It's now possible to disable replication of the JNDI stubs in a cluster by setting a system property weblogic.jndi.replicateBindings to false.

CR 47205
WebLogic was not accepting a GET request with an absolute URI such as:

GET http://206.189.223.69:7001/index.html HTTP/1.1
This has been fixed.

CR 47237
Fixed a problem with creating a JSP that had runtime includes in a war file. When creating a JSP that used an include to be processed at request-time, the managed server would not find the include file if it was specified as <jsp:include page=../dir/file.ext>. The request worked correctly if it was specified as <jsp:include page=file.ext>.

CR 47274
Resetting a pool now clears all cached PreparedStatements so that pooling does not give closed statements after a pool reset.

CR 47322
Fixed a problem with incorrect servlet mapping. WebLogic no longer registers the FileServlet implicitly to handle *.html or *.htm. It is now registered as the default servlet under the servlet-mapping "/*". This allows the default servlet mapped to "/*" to handle requests to html pages.

CR 47324
Fixed a problem with the heartbeat code causing an assertion error when a client connected to two servers with different user credentials.

CR 47453
Fixed a problem with getting jsp:getProperty to work on a bean unless the bean had been created using the jsp:useBean tag.

CR 47504
The JSP Java code generator only created declarations for NESTED variables if the custom tag implemented the BodyTag method. This has been fixed.

CR 47545
Fixed a problem in EJB when the same entity bean or session bean was being used for method calls after a RuntimeException was thrown. The EJB container no longer invokes any methods on the entity bean or session bean instance after a RuntimeException has been caught.

CR 47697
Fixed a problem with the MaxPostSize parameter for the NSAPI plug-in. The default value of the MaxPostSize parameter for the NSAPI plug-in was '-1', but when printing the plug-in configuration to the browser by using WebLogicBridgeConfig, the default value displayed was MaxPostSize:'0'.

CR 47707
Modified the mechanism for obtaining the requestStream from BootServices. Now, server A does not propogate QOS (quality of Service) to Server B when user credentials are supplied explicitly for obtaining the initial context lookup of server B from server A. Hence, server A and server B can communicate with T3, even though the client communicates with server A using the T3 protocol.

CR 47786
Added a new property called weblogic.system.sysThreadCount that specifies a separate thread pool for certain RMI calls issued by the system. If this property is not specified, these calls are executed in a thread from the default thread pool controlled by executeThreadCount. Currently, the thread pool controlled by sysThreadCount is used only by the Java Transaction Service during a Distributed Tranasaction for internal RMI calls made from one Weblogic Server to another (either a separate Weblogic Server or another server in a cluster).

CR 47878
Added a method that invalidates all sessions and kills current cookie for the current user. (See additional information)

CR 47882
Fixed a problem that occurred when two clients called the SL-EJB at the same time. Both clients were getting the same EJB intance from the pool.

CR 47942
Fixed a problem with code generation of Java files from JSP source that occurred when the encoding of the Java file did not match the encoding of the JSP page. Previously, some characters that were not representable in the encoding of the Java file were lost. Such characters are now translated to unicode escape sequences in the Java file.

CR 47960
Fixed a problem with the informix jDriver. The setObject() method on a prepared statement was incorrectly setting integer values for the values that were greater than 32767 by converting them to smallint. The integer values will not lose precision now.

CR 48029
Fixed a problem with scripts not being properly extracted in WAR files. The CGI servlet will now extract scripts properly.

CR 48089
Fixed a bug with inprocess compilation. When using inprocess compilation, the javac compiler exited after doing javac.

CR 48187
Using the <load-on-startup> tag in the web.xml file, the server was crashing with a NoClassDefFound stack trace when servlet class files were missing. This has been fixed.

CR 48253
The MaxSkips and DynamicServerList parameters are now configurable for a NSAPI plug-in as well as for an ISAPI plug-in. When using MaxSkips, set DynamicServerList=OFF and disable cookies.

CR 48322
The page returned by the Apache plug-in when the ErrorPage parameter setting is used was missing the RFC-specified blank line after the HTTP headers and before the page content. It is now fixed and looks like this:
<HTTP-header>
<HTTP-header>

<Data>


CR 48368
A client from a different JVM that failed to close a JDBC connection obtained from a DataSource was causing the server to hold the connection until the DGC cleaned up the ConnectionImpl object. This has been fixed.

CR 48518
Stopped logging spurious error messages for the genuine FileNotFoundException.

CR 48522
Fixed a JMS problem with the receiveNoWait() call for queues. In Service Packs 8 and 9, the receiveNoWait() in pub/sub was not receiving any messages.

CR 48652
Fixed a problem with doing a forward to the custom error page by setting the following property in the weblogic properties file:
weblogic.httpd.errorPage.404=someURL/fileNotFound.jsp


CR 48603
Improved WebLogic's native socket muxer by optimizing some internal code.

CR 48668
Fixed a problem with out.println(). When using <%@ page contentType=".." %> to set the charset encoding, the "out.println()" in custom tag handlers was not putting carriage returns in the output.

CR 48896
In SP9, the OS/390 failed to serve the static html pages if the page was bigger than 4k. This is now fixed.

CR 49042
The warning message, context.log.error("Warning: One of the getParameter family of methods called after reading from the ServletInputStream(), can't mix these two!"), now only prints if debug is turned on and is no longer printed erronously in the case where a servlet reads from the postInputStream then uses the RequestDispatcher to include another resource.

CR 49254
Fixed a problem with the Oracle database using JMS data. JMS JDBC store was triggering a weakness in the database when using setBytes() for JMS data larger than 2k.

CR 49310
Fixed a memory leak in the CGIServlet.

CR 49334
Using Form based authentication, if you hit a secured link or page by mistake, the authenticated user was lost and you had to login again. This has been fixed.

CR 49557
Fixed a problem with the HttpClusterServlet not failing over correctly when the physical machine was shut down. Shutting down only one instance of WebLogic did not result in a problem.

CR 49649
Fixed a problem with ResultSetMetaData using MSSQL server 7.0. When checking for the boolean values returned by ResultSetMetaData's isReadOnly(int) and isAutoIncrement(int), both methods returned false always. These methods now function correctly. For instance, for IDENTITY columns, the output will return true for both the method calls and for TIMESTAMP columns the output of the isReadOnly(int) method will be true.

CR 49699
The getUserPrincipal method was returning an incorrect user name only on the first call of SimpleCertAuthenticator. If the same page was recalled from the browser (i.e. Refresh is clicked), the correct output was given where joeuser is a sample user:
request.getUserPrincipal() = joeuser
request.isUserInRole("superusers") = true
Now, the first call is now returning the correct output.

CR 49732
Fixed a problem with form-based authentication. When a login failed, the BASIC login window was coming up before the error page.

CR 49801
Fixed a problem with the SNMP agent. Changed SNMP variable serverDateTimeLaunched from static to dynamic. Now its value will be updated if server restarted.

CR 50042
The Apache plug-in now preserves the internal redirect status code when a 404 error occurs.

CR 50137
Ensured that a router's state was checked before using it to route which avoids attempting to route using one that has been declared dead.

CR 50475
Fixed a problem with two servers in a clustered environment and the HttpSession.isNew() method. The HttpSession.isNew() method is now false when the second failover occurs.

CR 50716
Fixed a problem with JDBC persistence by invalidating the session immediately if it is invalid in the req.getSession() method. If the session had expired but the trigger had not cleaned it up, getSession() returned null because the session was invalid. The subsequent createNewSession would fail because the stale row still existed. This was happening when the invalidation interval was set to a high value as compared to the value set for sessionTimeout.

CR 51217
See CR 46611.

CR 51497
In Service Pack 9, the JSP tag, <jsp:useBean ...>, was broken when the type attribute was specified and the class attribute was not specified. This has been fixed.

CR 51715
Added a new property called ignoreHostnameVerification that turns off the hostname verification check. It provides a callback mechanism so that implementers of this interface can supply a policy for handling the case where the host being connected to and the server name from the certificate SubjectDN must match. The default implementation of this class in the WebLogic Server does only a String.equals() comparison of the urlHostname to the certHostname.

CR 51719
Added a performance option so that the jDriver can send data as VARCHAR because the DBMS query engine will "NOT USE VARCHAR-based indexes" if the query has NVARCHAR arguments. The driver will send PreparedStatement arguments as VARCHARs when the property is added to the login request:
props.put("useVarChars", "true");
This option was added because JDBC does not distinguish between NVARCHAR and VARCHAR data and the DBMS truncates 16-bit data to 8-bit ASCII if it is sent as VARCHAR. The jDriver by default sends all character parameters for PreparedStatements as NVARCHAR.

Service Pack 11

CR 29637
Deleted weblogic.jdbc.common.DblibStatement and its interfaces from JDBC.

CR 31188
The WAP session ID contained the pipe character "|" which was bad for WAP gateway.

CR 31350
The EJB compiler no longer fails to acknowledge that a correctly-coded primary key class for an entity bean has all public fields.

CR 31416
Corrected a typo in the EJB example for basic/beanManaged/index.html. Instead of saying, create table ejbAccounts (id varchar(15), bal float, type varchar(15)), the examples says create table ejbAccounts (id varchar(15), bal float).

CR 32766, CR 61650, CR 61678, CR 61663
Fixed problems with JSP in WebApps and the _tmp_war directory using weblogic.system.nonPrivUser.

CR 34282
Fixed problems with jsp:param. Passing multiple jsp:params to a page with the same name resulted in the last value only being taken. The original request object included the jsp:param parameters which was not the expected behavior.

CR 34745
The jspc now runs against a webapp, not a docroot. The jspc can be used to precompile JSPs that are in a webapp, while being able to use context information for TLDs that are defined in the web.xml file.

CR 40276
The Weblogic Server 5.1 Service Pack 6 Deployer Tool was not listing users in NTrealm and in RDBMSrealm. Now it does.

CR 40631
The start scripts for Compaq Tru64Unix have been changed to use _RLD_LIST instead of LD_LIBRARY_PATH.

CR 41247
Fixed a problem that was occurring using two-way SSL authentication and LogAuditProvider.

CR 41320
Having X-Forwarded-For in a header with multiple IPs no longer causes getRemoteAddr to fail.

CR 42486
When employing access.log in the extended log format the times at which the HTTP requests (such as .jsp) are made are now shown in GMT time rather than local time.

CR 43743
A stateful session EJB is now able to contain another EJB's handle.

CR 44676
When the HTTP HEAD request is given, a ClassCastException occured in the weblogic.servlet.internal.RequestDispatcherImpl.forward() method. This has been fixed.

CR 45141
The JSP compiler no longer fails when long classpaths are used.

CR 45714, CR 50109, CR 50092
SSL session caching is now working on both the server and the client side.

CR 45837
Fixed a problem that resulted in conflict handler errors when the file system was enabled in a cluster.

CR 45851
The getCredential method of weblogic.security.acl.User class no longer returns null when it is used to find the credential associated with the thread that is creating the context for looking up a StatelessSession EJB bean.

CR 46205
The getAclOwner method now returns system instead of ACL owner.

CR 46233
Fixed a problem with deploying the struts-example.war in Service Pack 9. The ApplicationResources.properties file was not being extracted correctly.

CR 46879
Added a property in CGIServlet called useByteStream (case sensitive) to fix a problem resulting in the CGIServlet not serving images properly. This property is set to false by default and can be turned on by setting the following in the web.xml file:
<init-param>
 <param-name>useByteStream</param-name>
 <param-value>false</param-value>
</init-param>


CR 46909
When using WebLogic Enterprise Connectivity, invoking a method by a servlet or EJB hosted by WebLogic Server was failing. This has been fixed.

CR 46939
POST timed-out messages were being thrown in the NSAPI plug-in when large messages were posted in WebLogic Server 5.1 Service Pack 9. This has been fixed.

CR 47545
The same entity bean instance was being used for method calls after a RuntimeException was thrown by the instance.

CR 47784
It is now possible to proxy from IIS by path to different instances of WebLogic Server and to set up multiple instances of iisproxy.dll and iisforward.dll, each loading its own ini file.

CR 47938
S1 <--------------------|
                            |--------------- NES proxy <--------------------- 
client
                                                 |
S2 <--------------------|
In the above configuration, if Server 2 was hanging, and then the client accessed JSPs/Servlets that create a session from the cluster, Server 1 would hang too.

CR 47953
Fixed the ServletAuthentication.logout() method in order to correctly remove the authenticated user context from the thread of execution.

CR 47971
When shutting down a server from a cluster, the server was removed from the cluster prior to disabling the HTTP listener. Therefore, it was possible to create new sessions after the server left the cluster but before the shutdown cycle completed. Any such sessions would be lost when the shutdown completed. This has been fixed.

CR 48458
When posting a JMS message from one instance of WebLogic Server, on which WebLogic process integrator was running, to another instance of WebLogic Server, the WebLogic process integrator system was being denied in weblogic realm. This has been fixed.

CR 48571
A consumer of connections from a pool no longer has to set the isolation level, but can rely on the default level. The pool sets the level before giving a connection. When a connection pool is created the connections have a default transaction isolation level specified by the underlying driver. When they are placed back in the pool after use, the connection has the isolation level that the last user set for it.

CR 48660
The response.setContentType() method was not changing encoding dynamically. This has been fixed.

CR 48701
Variables defined in TagExtraInfo were always being searched in default PAGE_SCOPE even when another scope was set. This has been fixed.

CR 48952
Added new SSL APIs, TrustManager and SSLContext to improve the performance of the WebLogic Server SSLClient and SSLClientServlet.

CR 48994
The following message was occasionally being displayed on the web browser when a request to WebLogic Server was being made via the NES proxy:

X-WebLogic-Load: 0 Connection: close

Now, this message only gets written to the wlproxy.log file.

CR 49042
Turned off the following warning message: context.log.error("Warning: One of the getParameter family of methods called after reading from the ServletInputStream(), can't mix these two!");

CR 49121
Calling InetAddress.toString() no longer does a reverse DNS lookup.

CR 49598
When the name of a JSP (for example, testForm.jsp) in a web application was the same as the name of a sub-directory (testForm) in that web application, an error message occurred. This has been fixed.

CR 49616
JMS persistence with Sybase jConnect driver is now working properly on HPUX.

CR 49777
When a JMS client program connected to the server and sent some non-persistent messages to a queue, the client program needed to open and close sessions whenever a session was required. The session.close() method wasn't doing a proper cleanup. This has been fixed.

CR 49879
Fixed a problem with the Dynamic Server List on the Apache plug-in.

CR 49902
If a java client wanted to tunnel a connection over SSL(HTTPS) and the proxy server required a username/password (Basic Authenticartion), the java client was failing to connect to the WebLogic Server. This has been fixed.

CR 50006
JMS is now correctly recovering UNSTABLE persistent messages.

CR 50035
Include files were failing when tags were broken across the included files. This has been fixed.

CR 50092, CR 45714, CR 50109
SSL session caching is now working on both the server and the client side.

CR 50109, CR 45714, CR 50092
SSL session caching is now working on both the server and the client side.

CR 50240
Added the property, weblogic.system.maxBackoffBetweenFailures=< time in milliseconds>, to enable the configuration of MAX_BACKOFF_BETWEEN_FAILURES in ListenThread in case of a listen socket failure.

CR 50264
Fixed an SSL-related memory leak in the NTSocketMuxer that was causing a server crash.

CR 50372
To figure out the meaning of the maximum heap number that the console displays, multiply the number by 1000 and then divide it by 1024 to get a number in kilobytes.

The resulting number should be less than 128 megabytes, the maximum heap size.

CR 50497
A compliance checker error message is now thrown if the bean provider declares a business method as final or static.

CR 50785
When a request was made that was handled by the Apache plug-in, the plug-in was not looking at the "If-Modified-Since" header in the request which resulted in the plug-in not fetching anything from the browser cache at all. In a scenario where static requests are being proxied to WebLogic Server, this no longer results in a larger response/download time of the static content.

CR 50975
When running WebLogic Server 5.1 as an NT service, if the system path was larger than 256 characters, it was not being shown for the java.library.path in the weblogic.log. This has been fixed.

CR 51160
The OCI preparedstatement no longer breaks after the clearParameters() method has been called.

CR 51188, CR 51328, CR 54108, CR 55001
Using ZAC resulted in an assertion error when the getInitialContext() method was called. The ZAC bootstrap is now fixed on win32.

CR 51328, CR 51188, CR 54108, CR 55001
Using ZAC resulted in an assertion error when the getInitialContext() method was called. The ZAC bootstrap is now fixed on win32.

CR 51392
In WebLogic Server 5.1 Service Pack 9, the Petstore example was throwing a java.lang.NoSuchMethodError. The cause of this error being thrown has been fixed.

CR 51457
When using WebLogic Server Service Pack 8 or higher to retrieve large files that resulted in an increased heap size, simultaneous requests to the server were causing OutOfMemory exceptions and causing the server to hang. This problem has been fixed.

CR 51968
Calling the prepared statements multiple times caused the jDriver to crash.

CR 51987
Collaborate 1.0 was throwing a NullPointerException while processing a message in JMS message in the hub against WebLogic Server 5.1 Service Pack 10. This has been fixed.

CR 52001
Enabled HttpClusterServlet to proxy more than one cluster.

CR 52166
Images with encoded filename containing "+" can now be displayed.

CR 52167
Unnecessary PeerGoneExceptions are no longer displayed in the console window.

CR 52241
JMS no longer dead-locks when messages are read in descending order.

CR 52272
Fixed a servlet problem that was resulting in a "Servlet failed with Exception" in WebLogic Server 5.1 Service Pack 10.

CR 52417
Http requests are no longer redirected to Port 80 when a load balancer sits in front of iPlanet. WebLogic Server can now determine which protocol the client uses to send the request.

CR 52466
Using WebLogic Server 5.1 Service Pack 9 when the session.invalidate() method was called in a JSP file, an HttpSession is invalid exception was being thrown. This has been fixed.

CR 52554
The <exception-type> tag in the web.xml deployment descriptor for <error-page> is now being forwarded to the specified resource in the <location< tag of WebLogic Server.

CR 52734
When the sendRedirect() method was called, the WebLogic Server was writing a header with "Connection: Close" even when the redirected URL was a relative URL. This has been fixed.

CR 52778
Changes in the jDriver fixed a performance regression that occured when invoking BMP entity beans.

CR 52887
When a JMS message was sent, retrieved using client acknowledge, the session recovered, the server shutdown, the old release server re-started and the message received, the re-delivered flag was incorrectly set to false. Now, it is set to true.

CR 52902
The web-based admin tool, AdminMain, now displays a heap number that is consistent with the heap number displayed by the console.

CR 52908
When a servlet deployed on WebLogic Server sent a huge amount of data to a java client, it resulted in OutOfMemoryErrors if the client was disconnected while the servlet was still in process. This has been fixed.

CR 53030
Fixed problems invoking the weblogic.utils.compiler.CompilerInvoker class when trying to generate an EJB using the Visual Age for Java Integration kit.

CR 53039
Using WebLogic Server 5.1 Service Packs 9 and 10, if multibyte characters were in the Request URL, a 404 was being returned. This has been fixed.

CR 53106
When a Client made an HTTP Tunneling call through a proxy then connected to a cluster of two nodes, a context could not be created with HTTP. This has been fixed.

CR 53495
Using WebLogic Server 5.1 Service Packs 9 and 10 and Linux 6.1 with Posix performance pack 1.3.0, many errors were occuring which have been fixed.

CR 53521
The column precision and nullable data returned from JDBC ResultSetMetaData (for numeric fields) is now consistent with WebLogic Server 5.1 Service Pack 10's JDriver.

CR 53570
WebLogic Server 5.1 Service Pack 10 displays System.out.println to the console every time a JSP is touched. This has been fixed.

CR 53908
When calling the java.sql.Connection.isClosed() method after closing the connection which is obtained from javax.sql.DataSource, a NullPointerException is no longer thrown.

CR 53909
Fixed a problem in WebLogic Server 5.1 Service Pack 10 that resulted in JMS throwing a NullPointerException when attempting to requeue messages.

CR 53978
Fixed a problem that was resulting in a NullPointerException being generated in JMS doRollback.

CR 54022
The NSAPI plug-in is now built on HP-UX 10.

CR 54108, CR 51188, CR 51328, CR 55001
Using ZAC resulted in an assertion error when the getInitialContext() method was called. The ZAC bootstrap is now fixed on win32.

CR 54111
Using WebLogic Server 5.1 Service Pack 10, the findByPrimaryKey() method was not throwing an ObjectNotFoundException when an invalid primary key was passed.

CR 54187
Fixed a problem using WebLogic Server jDriver for Oracle that resulted in PreparedStatement query returning an incomplete ResultSet upon multiple invocations.

CR 54212
When using PreparedStatement via weblogic.jdbc.pool.Driver, its parameters were not cleared properly and jDriver inserted conjunct data (new data and previous data of the parameter) into the Database. This has been fixed.

CR 54405
Using WebLogic Server 5.1 Service Pack 10, the following warning messages occurred when accessing an EJB jar for the first time:

Warning: Can not find last protocol used, default protocol is returned instead

This message no longer occurs.

CR 54543
WebLogic Server 5.1 Service Pack 10 no longer closes the Keep-Alive HTTP Connection which is sent from Netscape Navigator.

CR 54678
Increased the speed of a cluster of two 5.1 Service Pack 9 WebLogic Servers running on Solaris 2.6 with JDK 1.3.1.

CR 54859
Using WebLogic Server 5.1 Service Pack 10, NullPointerExceptions were occurring when enabling precompile for JSPs that were in a WAR file. This has been fixed.

CR 54877
Fixed some limitations that occurred when using weblogic.httpd.session.sessionIDLength to limit the session ID length using WebLogic Server 5.1 Service Pack 9 or 10.

CR 54985
Added a property called weblogic.httpd.jsp.reloadIfTimeStampDiffers that enables compilation of all JSPs if the time stamp of the JSP file is not the same as the time stamp of the generated class file. This property is false by default and it can be turned on by setting it to true.

CR 54986
Fixed a problem related to synchronization using WebLogic Server 5.1 Service Pack 9 that was resulting in server deadlock.

CR 55001, CR 51188, CR 51328, CR 54108
Using ZAC resulted in an assertion error when the getInitialContext() method was called. The ZAC bootstrap is now fixed on win32.

CR 55007
Added a configurable property, weblogic.system.openSockCount, that will determine the number of allowable connections to the server. (See additional information)

CR 55270
Fixed a problem that resulted in assertion errors when using the HTTPS protocol to access any page.

CR 55323
Fixed two problems encountered when running CGI scripts. The cookie value could not be retrieved by using getenv("HTTP_COOKIE"); in the CGI script and when running the CGI script the server-side was producing the following error message:

CGIServlet: Failed to exec CGI script:/simple.exe

CR 55331
It is now possible to create more than one thousand organizations without getting an error.

CR 55353
The getRequestURI() method no longer decodes encoded characters such as %2f to represent a slash, in the URI.

CR 55368
When using WebLogic OCI jDriver for Oracle 8.1.6 with WebLogic Server 5.1 Service Pack 10, a NumberFormatException is no longer being received intermittently.

CR 55562
Using bean managed persistence with WebLogic 5.1 Service Pack 10, entities are no longer left in the cache after they've been removed.

CR 55615
Weblogic Server 5.1 Service Pack 10 OCI816 jDriver now works with Solaris 2.6.

CR 55642
Fixed a problem that was resulting in the JMS Server throwing an exception when sending Object messages.

CR 55655
Fixed a problem with the JDBC driver DLL for oracle 8.1.6.

CR 55714
When employing WebLogic Server 5.1 Service Pack 10 using the Apache plug-in, the Set-Cookie headers are no longer displayed in the browser (the resulting HTML page).

CR 55826
Using WebLogic Server 5.1 Service Pack 10, if the QueuePool example was modified so that the Server SessionPool was not created until after several messages were placed on the queue, the messages placed on the Queue before the sessionpool was created appeared to be processed, but not acknowledged. Now, the messages are getting acknowledged.

CR 55835
Added case-insensitive feature for URI resolution.

CR 55928
Fixed a problem with the EJB Container with regards to the Client's View Of Runtime.

CR 55974
When using two virtual hosts in the Apache 1.3.12 web server going to two different WebLogi Server clusters running different applications, the plug-in was redirecting to the wrong cluster. Apache was running on AIX 4.3.3 and using the WebLogic Server 5.1 Service Pack 10 plug-in. This problem has been fixed.

CR 56156
Fixed a problem with the JDBC ConnectionPool that was resulting in an OutOfMemoryError.

CR 56203
Fixed a problem that occurred when using the SessionContext.getCallerPrincipal() method to access the Principal from an EJB. The Princiapl that was used for the lookup operation was returning instead of the Principal of the recently created InitialContext.

CR 56220
Now, when getPathInfo is called from a servlet accessed as the default servlet, it returns a leading /.

CR 56283
Fixed a problem running the AltClient example in the default environment (after setExamplesEnv).

CR 56414
When setting the EJB remote reference as session attribute using JDBC, NullPointeExceptions were occurring. This has been fixed.

CR 56433
Added the property, weblogic.ejb.tempDir, to specify a directory for temporary deployments.

CR 56688
Fixed a problem that resulted in server threads hanging when trying to get InitialContext to another WebLogic Server.

CR 57007
Fixed a problem with the timer service.

CR 57206
Using form based authentication and POST in WebLogic Server 5.1 Service Pack 10, the RequestDispatcherImpl.forward is no longer having problems.

CR 57357
Customer-defined HTTP 401 error pages now work with BASIC authentication.

CR 57474
When setting the weblogic.system.servletThreadCount=20, there were actually 40 of the Servlet ExecuteThreads when a thread dump was taken. Now, the number set and the actual number is the same.

CR 57831
When the client passes the username through a Java client in one of several languages to JNDI, in 16-bit equivalent unicode strings, for example, Russian Cyrillic, they no longer become truncated to 8-bit representations after being used with JNDI.

CR 57965
The MS SQLServer JDBC Driver DatabaseMetaData no longer returns the wrong type.

CR 58197
Made pure java SSL the default for applets in place of native SSL.

CR 58275
Using WebLogic Server 5.1 Service Packs 9 or 10, in a two node cluster the servlet was seting a string attribute in the session and receiving a NullPointeException.

CR 59054
The CookieParser now accepts a comma as a cookie separator, so a comma can no longer be used in the cookie name or the cookie value.

CR 59780
Fixed a problem that was causing a large post to WebLogic Server to fail when using the Apache plug-in. A post timeout message was appearing in the wlproxy.log.

CR 60017
Fixed a problem in WebLogic Server 5.1 Service Pack 10 with weblogic.jndi.Environment.setSSLxx and weblogic.jndi.Environment.getSSLxx. The weblogic.jndi.ssl.server.name is no longer missing from the output.

CR 60963
The session ID is no longer re-used when the webapp is not participating in single sign-on.

CR 61454
Fixed a problem resulting in the Resource temporarily unavailable error occurring when trying to POST large data to the NSAPI plug-in.

CR 61581
The message, <I><ConMan> Bootstrap unable to get a t3 connection to IP address, is no longer logged. When trying to make a JMS connection and failing, an exception was thrown. Before throwing the ConnectException, the weblogic.rjvm.ConnectionManager logged the <I><ConMan> Bootstrap unable to get a t3 connection to IP address message in the weblogic.log. This message is no longer logged.

CR 61595
Added the ability to interoperate with WebLogic 6.1 servers (See additional information).

CR 61650, CR 32766, CR 61678, CR 61663
Fixed problems with JSP in WebApps and the _tmp_war directory using weblogic.system.nonPrivUser.

CR 61663, CR 61650, CR 32766, CR 61678
Fixed problems with JSP in WebApps and the _tmp_war directory using weblogic.system.nonPrivUser.

CR 61678, CR 32766, CR 61650, CR 61663
Fixed problems with JSP in WebApps and the _tmp_war directory using weblogic.system.nonPrivUser.

CR 61711
Fixed some problems with stateful session bean lifecyle and environment issues. Under certain conditions, the order of method calls on a stateful session bean was incorrect. In particular, it was possible for a stateful bean to enter the passive state without having first entered the method ready state. Under certain conditions, an enterprise bean's environment (everything under "java:comp/env") was not correctly provided. JNDI access to java:comp/env is guaranteed at the time at which setSessionContext is called, but that was not always the case.

CR 62252
Instead of returning a 404 error, a 403 Forbidden error is returned when an unsafe directory listing is requested.

CR 62315
Added a new property called STATEMENT_CACHE_SIZE that enables the user to configure the size of a statement cache for a pool. The default value is 10 (hard coded), the minimum value is 300 (hard coded) and everything outside the minimum/maximum range is treated as the default value of 10. The property is defined per pool definition, through the weblogic.properties file. When using the deprecated t3 style, if the STATEMENT_CACHE_SIZE is defined, it is replaced by the zero value which means the property is turned off.

Service Pack 12

CR 32447
WebLogic Server no longer issues emergency messages during a deliberate shutdown.

CR 48245
Added a method to the interface ManageableRealm-- called weblogic.security.acl.CredentialChange--to modify a password.

CR 53656
Unsynchronized weblogic.utils.classloaders.GenericClassLoader.getResource is to improve performance under load. Was particularly a problem on a multi-CPU machine.

CR 55132
Fixed a problem in which, when tunneling T3 over HTTPS with proxy authentication, the wrong username/password caused a client to infinitely loop.

CR 56797
A two-Way Secure Socket Layer connection between an EJB client and an EJB no longer causes a ClassNotFoundException.

CR 58886
Fixed an IIS Proxy memory leak with Secure Socket Layers; When hitting HTML and JSPs through the proxy IISs, memory usage kept increasing.

CR 59529
Fixed a problem in which JMS deadlocked when a durable subscriber tried to receiveNoWait() topics.

CR 59896
Fixed a problem in which, at load time, the JMS Server was not dispatching messages to the Receiver.

CR 60325
Concurrent GET and POST requests (i.e. the GET request is sent before the response for the POST request is sent back by the proxy to the application) no longer causes the plugin to hang.

CR 60940
Fixed a problem when using JMS topics durable subscriptions; a large number of durable subscriptions no longer causes a stack overflow error in a JMS server.

CR 61331
The WLS console now displays the correct number of beans that failed to deploy.

CR 61490
Fixed a problem in which web clients connecting to a remote server's RMI objects using t3s experienced a delay in login time. The problem only occurred when web client setup included a proxy server.

CR 61643
Fixed a problem in which a weblogic.Admin RESET_POOL occasionally failed when run against a JDBC Connection Pool created with jDriver.

CR 61836
Fixed a problem with localization and JNDI. Handling security credentials for non-english locales no longer causes JNDI to fail.

CR 61864
Added a feature that lets you mark session cookies as secure. However, use of this feature is restricted to pure https networks, and by setting this property, you disable session tracking across http networks. The property, in weblogic.properties, is called weblogic.httpd.useAuthenticationCookie. Its default is false.

CR 56797
JSP's can now include perl scripts without provoking a null pointer exception.

CR 62177
There are no longer peer-to-peer connections in clustered nodes. The only peer-to-peer connection is between the primary and secondary servers.

CR 62387
Session Beans are now removed from cache when exception is thrown from a business method.

CR 62481
Add a property to weblogic-ejb-jar.xml, called "clients-on-same-server", to indicate that the EJB is colocated with the web tier. This is a performance fix, designed to reduce multicast traffic. The default is false.

CR 62487
Fixed a problem in which a cluster failed to come up due to a mutlicast storm.

CR 62542
Fixed a problem in which requesting aux.jsp / AUX.jsp / PRN.jsp / prn.jsp on a WLS server that running on a Windows box left the request in an undetermined state, neither succeeding nor failing.

CR 62708
Fixed a problem in which an idle-timeout of zero still resulted in ejbRemove being called.

CR 62752
Selecting more than 100 rows in an outer join operation no longer gives an ORA-24347 error.

CR 62756
WebLogic Server no longer hangs due to blocking of socket reads (PosixSocketMuxer with jdk1.3.1-b24).

CR 62822
Using https tunneling no longer provokes a java.io.UnsupportedEncodingException.

CR 62877
Fixed a problem in which IPlanet was core dumping when all threads were in use.

CR 63147
Fixed a problem in which applets failed during downloading of Home interface Stub in WLS 5.1 sp10 with jdk1.3.1_01 plugin.

CR 63180
Fixed a problem in which access log rotation failed when a server was started (or restarted) when >weblogic.httpd.logRotationTime was set to a value in the past.

CR 63258
Enhanced the security code to reduce the number of calls to ldaprealm, thereby improving performance.

CR 63288
Fixed a problem in which Session tracking did not work if CookiesEnabled was set to false in weblogic.xml. This occurred when there existed the same cookie as the CookieName specified in weblogic.xml.

CR 63310
Fixed a file descriptor leak that caused Servlets to fail under load. Symptoms included a failure to execute cgi scripts, followed by a SocketException saying "too many open files", followed by OutofMemoryExceptions or crashes.

CR 63687
Fixed a WebLogic 8.1.7 JDriver prepared statements problem that caused a huge performance toll.

CR 63695
Fixed a problem in which WebLogic Server running on HP failed on startup with a HP Server Bus error when connecting to an Oracle database using a connection pool.

CR 64019
Fixed a problem in which findByPrimaryKey returned a reference for a non-existent record.

CR 64140
Fixed an authentication problem in which caching realm didn't detect case sensitivity.

CR 64209
Fixed a problem with ejbc when an EJB had multiple elements in its weblogic-ejb-jar.xml.

CR 64229
Fixed a problem in which, if a durable subscriber to a topic rolled back instead of committing after receiving a message, an exception was thrown to the client.

CR 64284
Fixed a problem in which failover within a cluster failed when one of the nodes was in a SHUTDOWN condition.

CR 64352
Subclassing a Primary key class with weblogic.ejbc no longer provokes an error.

CR 64806
Fixed a problem in which calling reset() on ServletInputStream reading large POST data provoked an IOException.

CR 56797
Fixed a problem in JSP's that used page buffering failed to execute CGI scripts.

CR 64979
Fixed a break in the entity bean lifecycle (setEntityContext was not being called before ejbActivate).

CR 65068
Fixed a problem in which HttpClusterServlet failed to find a session cookie.

CR 65160
Fixed a problem in which HttpProxyServlet could not serve large pdf files from Microsoft IIS.

CR 65200
When using the 8.1.7 oracle thin driver, WebLogic Server is no longer limited to writing a maximum of 2000 bytes to the database.

CR 65334
Fixed a problem in which when using JMS Message selectors, message recovery delivered all messages to all subscribers regardless of the message selector specified.

CR 65643
Added feature allowing more client root certificate authorities (CA's). Previously, the limit was 4. Can specify the number in the weblogic.properties file via the new comma delineated string list of this form: "weblogic.security.clientRootCAs=ca.pem,ca2.der,ca1024.pem".

This new, comma delineated string list completely overrides any other of the older CA properties. Too see which CAs are loaded, turn on the -Dssl.debug flag.



CR 65697
Fixed a problem in which, when SetUID was enabled, WebLogic Server did not start.

CR 66563
Fixed a problem with session cookies that resulted in a loss of session data.

CR 67613
Fixed a problem in which Secure Socket layer sessions weren't resuming correctly because they weren't remaining cached.

CR 67633
WebLogic Server now specifies cache-control appropriately to prevent caching proxies from caching the cookie.

CR 67776
Fixed a problem that resulted in redundancy in http headers.

CR 68243
Fixed a problem in which ISAPI plugin PathPrepend path was prepended twice when using FORM authentication for a web application; this resulted in a 404 error.

CR 68570
BEA has upgraded the SNMP kit to ensure the SNMP agent is not affected by DOS attacks.

CR 68787
Fixed a problem in which WebLogic Server crashed when load was directed towards the Secure Socket layer port.

CR 69131
Implemented mechanism to prevent servlets tying up threads via repetitive IOExceptions when continuing to use PrintWriter after a socket has been closed.

CR 69249
Fixed a problem in which web.xml document root gave "failure extracting war classes" error.

CR 69809
Closed a security hole that gave unauthorized access to JSP source code.

CR 71594
A 5.1 WebLogic Server can now call a cluster of 6.1 WebLogic Servers.

CR 71597
If an EJB finder call is made from 5.1 server to a 6.1 server, the finder method no longer throws an UnMarshalException, as EJBObjectEnum class is now present in 5.1.

CR 71725
Fixed a problem in which appending a string containing a hex-encoded letter to the URL request resulted in source code being displayed. WLS now checks for files ending with CTRL chars or '.'.

CR 73149
Fixed a problem in which a 6.1 server hung while talking to a 5.1 server over IIOP.

CR 73611
Fixed a problem in which, when unpacking weblogic510sp11.zip on a Unix platform, all the lines in Unix scripts (setEnv.sh, startConsole.sh, startWebLogic.sh) ended with ctrl-M, which caused "not found" errors when launching the scripts.



Service Pack 13



CR 35101
Now an SNMP agent will be able to handle server and cluster names greater than 16 characters; up to 64 characters can be used in a server/cluster name.

CR 50897
Now we log a warning if a non-serializable object is put in a replicated session.

CR 53901 65920 69160 69083
We have added a parameter, that can be set in your web.xml for your servlets, the http cluster servlet, and web applications:

<context-param>
<param-name>weblogic.httpd.clientCertProxy</param-name>
<param-value>true</param-value>
</context-param>

You may wish to use this parameter if your web applications are set up for CLIENT-CERT authentication only, ie:

<login-config>
<auth-method>CLIENT-CERT</auth-method>
</login-config>

This parameter defaults to false where client certs are not proxied if a proper proxy is not in place, so WebLogic will ignore a 'WL-Proxy-Client-Cert' header if a client is trying to impersonate a proxy. Setting this to true negates this behavior. WebLogic now also, internally, ensures that the proxy strips the 'WL-Proxy-Client-Cert' header from incoming messages for added security.

CR 56341 62061
Now a single WebLogic transaction will no longer create multiple transactions in an Oracle database. We fixed a problem occurring when two machines are in the same cluster; if Machine 1 started a transaction and Machine 2 executed a SQL statement on the same transaction, machine 2 would recognize that the transaction had been started by machine 1 but would still create its own connection to the database and send its statement through its own connection. Now machine 2 will recognize that machine 1 started the transaction and then the statement will be routed to the connection on Machine 1.

CR 56600 and CR 87678
Ejbc now handles compiling beans with more than one 'char' field. If an entity bean contained more than one field of type 'char,' ejbc was failing as the names of the fields were not mangled properly causing duplicate declarations of the same named field.

CR 57091
Fixed problems with Internet Explorer, WebLogic Server and typically applets (though not resticted to them) where the error, 'Connection failure java.net.ProtocolException: Didn't meet stated Content-Length' was occurring. This was being caused by problems with the setContentLength() method.

CR 59097
The Statement.cancel method is now working when using Weblogic's jDriver for Oracle.

CR 61776
Now you can set the doctype used by a servlet creating HTML to 'transitional'. Using HtmlPage.setHtmlLevel (HtmlPage.HTML_4T) will now do this.

CR 61493
Now, when a URL is specified in a JSP with name and value parameters, the URL obtained from this by an included JSP is no longer truncated. This was only occurring in situations where an encoding was specified in the weblogic.properties file (ie weblogic.httpd.inputCharset).

CR 63867
We have improved the performance of our SSL implementation by not pooling the message digests.

CR 64039
By setting weblogic.system.logSystemProperties=false in your weblogic.properties file, you can now turn-off system properties logging and you will no longer see your system properties being displyed in the Server standard out. CR 64285
Fixed a problem occuring when an SSL client connected to WebLogic behind a proxy server. HostnameVerifier was throwing an error. The common name entry was being compared to the proxy servers hostname and not the original hostname string that had the correct certificate.



CR 65697
The server will now start up properly when you have set weblogic.system.enableSetUID=true. There were problems with weblogic.system.enableSetUID=true and weblogic.system.enableSetGID=true when used in conjunction with weblogic.system.nonPrivUser. Now you can set both the non-privileged user and group without problems.

CR 66331
Fixed an EJB problem as of Service Pack 10 where the EJB could not deploy when the EJB interfaces and implementation are in different packages.

CR 67647
Using java.sql.Connection.setTransactionIsolation() now sets the isolation level correctly when the connection has been obtained from the data source.

CR 68555
Fixed an occasional an intermittent error with an NT realm and WebLogic where users were seeing the exception: java.lang.RuntimeException: OS error=53.

CR 68911
There was a problem with the jDriver not working correctly with LONG type date. Using ResultSet.getCharacterStream() was not returning any data.

CR 69090
You can now use the property weblogic.cluster.multicastPort to set the port used for multi-casting. Add this property to your weblogic.properties file. For example, weblogic.cluster.multicastPort=8100. The acceptable values are 0 --> 65534.

CRs 69675 73578
Using beasvc will now also work if -javahome is pointed to the JRE home directory--the setting -javahome is usually pointing to the JDKs home, but now it will work fine if the JRE home is used.

CR 69685
In order to hide your SNMP agent password you can now have the password read from a file if the password begins with an @ symbol, ie java weblogic.SNMPAgent -password @filename.

CR 70057
Fixed a problem with Service Pack 11 and 12 using JConnect when retreiving multiple result sets from a stored procedure causing "ResultSet has already been closed." errors.

CR 70267
Fixed a JSP problem of Service Pack 10, where if you declared a variable in TagExtraInfo with an application scope, it was not being found and a ClassCast exception occurs.

CR 70434
After Service Pack 10 a classCast exception was occurring. This error (java.lang.ClassCastException: weblogic.security.ldaprealm.LDAPGroup) no longer happens when a principal passes a group object rather than a user object.

CR 70789
Now WebLogic works correctly with URLs such as http://server:port/cgi-bin/foo.exe/My-Log where the end portion of the URL, My-Log, for example, is telling the corresponding CGI script which internal method to run.

CRs 70870 75109 70907 78638 78829 79255 77473 77288
WebLogic Server 5.1 now has a full usable implementation of LDAPRealmv2.

CR 71080
Fixed a problem where even if finders-call-ejbload was set to true, that ejbLoad was not being called when a business method was invoked on the EJB. This was occuring as the finder itself was setting the needsRefresh property to false and thus not allowing ejbLoad to be called.

CR 71405
We have improved our cleanup of connections with type 2 drivers such as Sybase's.

CR 71524
Now multibytes characters contained in a URLs query string work properly when the weblogic.property inputCharset has been set; this fixes a problem occuring in Service Pack 10 and later.

CR 71853
If a lockout policy was set on users in an LDAP server, when login failure occurred through form authentication the lockout policy was properly enforced and the server threw an expected LDAP exception however the client browser was thrown a 500 error rather than just returning to the login screen. This has been fixed.

CR 72299
Now the -webapp weblogic.jspc command line switch works correctly; specifying a relative URI using the include file directive in conjunction with the -webapp switch now functions properly with the weblogic.jspc precompiler.

CR 72605
We now have the PreparedStatement cache turned off by default.

CR 73203
You can now properly use the '+' character in your servlet mappings, ie: <url-pattern>/hello+x/*</url-pattern>

CR 73212
We have now added the -k option to our jspc compiler, this will allow compilation to continue even if some files fail.

CR 73267
Now we properly add a "&" between parameters when using a jsp:forward to send along a URL that has been rewritten; so now if there are multiple parameters added to the URI, it will not be mangled.

CR 73797
We fixed a JSP problem where useBean tags were not parsed properly if they were placed ahead of a page directive.

CR 73921
Using JMS topics under a high message load, or over a slow network, no longer causes an AssertionError to be thrown while trying to execute "popUser". Now we prevent this from happenning by properly synchronizing the pushing/popping of a user in the MessageQueue.

CR 74368
We have fixed the ZAC command-line utility doesn't work without X-window on Unix.

CR 74482
Fixed a problem with ZAC, where the ZAC bootstraps could not find the JRE if it was installed in a location with spaces within the directory name.

CR 74808
We have corrected SQL problems occuriing when maxTransactedDurableSubscribers is set to greater than 0.

CR 74928
Fixed a problem with JMS and MSSQL 2000 users that was causing a java.sql.SQLException; the database was identifying itself as "SQLServer" when we were expecting "MSSQLServer".

CR 75109
You can now cache an LDAP group memebership. This is configured with the property: weblogic.security.groupCacheTTL=300 <default value, in seconds>. WebLogic Server will cache the group membership lookups until their time-to-live value expires. You can clear the cache (and cause it to be refreshed on the next retry) by using the method: weblogic.security.acl.FlatGroup.clearCache().

CR 75419
Using weblogic.utils.http.HttpParsing when a URL has '%' characters now works properly.

CR 75803
Fixed a problem as of Service Pack 9 with stand alone JMS clients sending and receiving asynchronous persistent queue messages from WebLogic. If WebLogic went down before the messages were completely received, the rest of messages continued to be received by the JMS Receiver after the connection exception was thrown. The messages in the persistent store are not marked as acknowledged and not being deleted. When the server restarts again, the same messages get delivered again. This has been fixed.

CR 76823
When using WebLogic as a service, and running under a Windows NT security realm, privilidged users who should have been able to start and stop the WebLogic service were unable to do so. This has been fixed

CR 76906
When uploading large files using multipart/form-data encoding, temporary files are created. Now if the request is terminated before the uploading of the file is finished, the temp file will be deleted.

CR 77361
WebLogic now correctly parses the Content-Length header if the header has multiple white spaces between the name and value.

CR 76489
We fixed problems with the Windows performance pack that were causing server crashes under extreme load.

CR 77390
Now if you use a requestDispatcher().forward call from a jsp/servlet the response gets properly committed.

CR 77422 80613
Fixed a recently introduced problem where commas put into a quoted value stored in a cookie were not being handled correctly.

CR 78084
Fixed some Solaris and Linux problems with our plug-in where, under load, the iPlanet proxy might crash if debugging was turned on.

CR 78202
The WEBLOGIC.LOG.HTTPD now reports RESPONSE_TIME_TAKEN and RESPONSE_BYTES.

CR 78405
Fixed a problem where proxy servers in front of WLS were erroneously finding the Weblogic primary server dowm and failing over to the secondary server.

CRs 78431 81010 80744 76903 81765 83623 86362
We fixed multiple muxer problems: Collections in all muxers (Java and native-code) that map to sockets now have unique keys. This has solved a variety of intermittitent issues, including data corruption, bad pointer references, WebLogic Server hangings and crashes. Data structures and state machines in muxers now have proper synchronization. This fixed certain classic deadlocks caused by conflicting order of locking. The call stacks between the muxer and the protocol layers above the muxer are now 2-way, which means a close of a socket or connection can be initiated from any point in the stack. Safeguards have been added to prevent deadlocks. State machine transitions in the muxer have been fixed, resulting in sockets no longer remaining in a CLOSE_WAIT state.

CR 78592
There are no longer null.pointer.exceptions being thrown when using the 'size' attribute of our JSP cache tags.

CR 78609
Fixed a problem with the JVM crashing when the server tries to access CLOB data in a database using the prepareStatement method.

CR 78930
Fixed a problem where a request such as http://host:port/webApp/aux%20.jsp would hang WebLogic on a Windows machine.

CR 79250
Now when trying to delete a cookie by using setMaxAge(0), Netscape browsers will now correctly remove the cookie.

CR 79326
Now the improper formatting of multibyte characters in requested uri will return a 400 BAD REQUEST message.

CR 79526
Fixed a problem where multiple JMS clients were failing if only one of them had been terminated.

CR 79832
Fixed a recently introduced problem when creating a JOLT session pool from a startup class.

CR 80417
Now a request for HTTP 1.0 gives a response in HTTP 1.0. Previously, a GET for HTTP 1.0 would return with a HTTP 1.1 version.

CR 80359
We fixed a problem with our JMS Draw Demo example so that multiple JMS clients will function.

CR 80769
Fixed a recently introduced problem with an LDAP realm and when the weblogic property weblogic.security.realm.cache.caseSensitive=false is set. Users were not being correctly relogged onto the appropriate location.

CR 81033
Now when using our 5.1 to 6.1 interoperability solution you no longer need an internet connection to run ejbc on the 5.1 client.

CR 81265
Fixed some interoperability problems between 5.1 and 6.1 servers when assertion errors were being thrown after servers had been started and stopped multiple times.

CR 81534
When retrieving managed objects in an attempt to monitor EJB performance, a NullPointerException was being thrown and there was no way to access the data; this has been fixed.

CR 81764
Fixed a problem between 5.1 and 6.1 servers under load when the server hanged on restart due to an IIOP initilization deadlock.

CR 82098
Now when interoperating between 5.1 and 6.1 servers, the security context (username/password) is propagated properly.

CR 82149
There were unnecesary log messages (normally occuring 'wrong destination address' warnings) being printed to the log. Now you will only see these messages if you turn on debugging.

CR 82282
Fixed a problem with log rotation where if you used extended log format and then had to restart your server the log was returned to the common format.

CR 82289
Fixed a problem in service pack 11 where EJBs that failed to deploy were no longer being noted with an appropriate error in the log files.

CR 82329
Our security connection filter example now works correctly when using the 0.0.0.0/0 address to deny users access.

CR 83790
There is no longer a memory leak that occurs when using session replication under load. Previously the secondary sessions's hashtable was not being thouroughly cleaned.

CR 83848
Fixed a problem occurring when a JSP had embedded content from another JSP; Japanese characters were not being displyed correctly in this case, despite their character set being set in the right fashion.

CR 82858
The server log was being filled with java.net.SocketException messages once the server had been running for a while due to the server JVM thread sleeping. This was causing some customers to reboot; this problem has been fixed.

CR 84076
Fixed a null pointer exception occuring when using a keep-alive connection where subsequent requests to a servlet where the URI being decoded was treated as null.

CR 84106
We made enhancements to our read-only entity bean implementation in order to speed up their performance.

CR 84329 84239
Fixed a problem uploading files to the server from Netscape when WebLogic was behind a proxy and used the NSAPI plug-in.

CR 84611
A fix in Service Pack 12 triggered a problem in Internet Explorer where you were unable to download PDF's in the browser. This has been fixed, however you must have the property CacheSessionCookie set to 'true', the default setting, in order for the browser to work correctly.

CR 85295
Fixed problems with the premature expiration of memory and JDBC based sessions.

CR 85586 84185
Clients connecting over T3 to the server now no longer cause a java.lang.NullPointerException - at weblogic.rjvm.RJVMFinder.equals(RJVMFinder.java:98) when the connection has been lost and then restored at a later point.

CR 86026
Now the weblogic property CacheSessionCookie defaults to true. CR 86234
The indexDirectories feature of the FileServlet will now work with characters from other languages, so that it can handle multi-byte file names. However, for this to work the client browser must have enabled the option to disable always sending URLs in UTF-8 encoding.

CR 86674
WebLogic now implements LDAP so that usernames and passwords containing natural language characters now function correctly. CR 87220
There was a problem resulting in a stack overflow when a client requested an enumeration of requests in a JMS queue; this was happening under load due to the amount of messages sent to the client that had been serialized all at once, rather than one at a time.



CR 87344
Now, instead of returning a new seesion, getRequestedSessionId() returns null if the request does not specify a session ID. CR 90761
Fixed a problem where using the OCI driver would occasionally cause a java.lang.StringIndexOutOfBoundsException when a EJB-QL query was attempted.

Return to Top

Return to README