Release Notes for WebLogic Server 5.1 Service Pack 13 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ContentsThis service pack contains files that resolve issues pertaining to the released product. A detailed list of these CRs is provided in this document. Service Packs function for both domestic and exportable versions of WebLogic Server. Service Packs are cumulative, so all issues fixed in earlier Service Packs have also been fixed in the current Service Pack. For a comprehensive list of all the issues fixed in Service Packs 1-12, see the file README2.html. NOTE: The release notes for WebLogic Server are continually being updated. If you are viewing this file locally, to obtain the most recent version of this readme, point your web browser to: http://www.weblogic.com/docs51/classdocs/SERVICEPACK_README.html The service pack download is shipped as a .zip file (weblogic510sp13.zip) and contains the following binary files. Check documentation for their usage.
setEnv.sh startConsole.cmd startConsole.sh startSNMPAgent.cmd startSNMPAgent.sh startWebLogic.cmd startWebLogic.sh 510sp13/SERVICEPACK_README.html (this file) 510sp13/SERVICEPACK_README.txt 510sp13/README2.html 510sp13/README2.txt 510sp13/README3.html 510sp13/README3.txt 510sp13/ldaprealm.properties 510sp13/relnotes.html 510sp13/ddl/jms_cloudscape.ddl 510sp13/ddl/jms_db2.ddl 510sp13/ddl/jms_mssql.ddl 510sp13/ddl/jms_oracle.ddl 510sp13/ddl/jms_sybase.ddl 510sp13/wlec/README_wlec.html 510sp13/wlec/README_wlec.txt 510sp13/wlec/weblogic.properties 510sp13/wlec/wlec_classes.jar 510sp13/wlec/wlec_examples.jar 510sp13/wlec/wleorb.jar 510sp13/wlec/wlepool.jar bin/beasvc.exe bin/beasvc_117.exe bin/installNtService.cmd bin/uninstallNtService.cmd bin/iisproxy.dll (IIS Plugin) bin/iisforward.dll (IIS Plugin) bin/proxy30.dll (NSAPI Plugin) bin/proxy35.dll (NSAPI Plugin) bin/proxy36.dll (NSAPI Plugin) bin/stackdump.dll (Native troubleshooting) bin/stackdump_g.dll (Native troubleshooting) bin/wlconfig.exe (WebLogic configuration utility) bin/wlntio.dll (Native performance pack) bin/wlntrealm.dll (Security realm for NT) bin/wlserver.exe (Start executable for NT) bin/wlstartup.dll (Start executable for NT) bin/oci817_8/weblogicoci36.dll (Oracle JDriver) bin/win32_12/install.exe (NT Services) bin/win32_12/remove.exe (NT Services) bin/win32_12/wlconfig.exe (NT Services) bin/win32_12/wlserver.exe (Start executable for NT) bin/win32_12/WLService.exe (NT Services) bin/win32_12/wlstartup.dll (Start executable for NT) examples/applets/phonebook1.jsp examples/applets/phonebook2.jsp examples/ejb/basic/beanManaged/index.html examples/iiop/wls2wls/index.html examples/iiop/wls2wls/InteropServlet.java examples/iiop/wls2wls/TradeResult.java examples/iiop/wls2wls/Trader.java examples/iiop/wls2wls/TraderBean.java examples/iiop/wls2wls/TraderHome.java examples/iiop/wls2wls/build_client.cmd examples/iiop/wls2wls/build_ejb.cmd examples/iiop/wls2wls/ejb-jar.xml examples/iiop/wls2wls/weblogic-ejb-jar.xml examples/jms/drawdemo examples/jolt/servlet/jadmin/examples.jolt.servlet.jadmin.BounceJoltServlet.html examples/jolt/servlet/jadmin/BounceJoltServlet.java examples/jolt/servlet/jadmin/index.html examples/jolt/servlet/jadmin/joltadmin.html examples/jsp/URLEncode.html examples/jsp/URLEncode.jsp examples/jsp/tagext/sql/WEB-INF/classes/weblogic/taglib/sql/ConnectionTag.class examples/jsp/tagext/sql/WEB-INF/classes/weblogic/taglib/sql/QueryExtraInfoTag.class examples/jsp/tagext/sql/WEB-INF/classes/weblogic/taglib/sql/QueryTag.class examples/jsp/tagext/sql/WEB-INF/classes/weblogic/taglib/sql/ResultsTag.class examples/security/sslclient/jsseWLS.bat examples/security/sslclient/NulledHostnameVerifier.java examples/security/sslclient/NulledTrustManager.java examples/security/sslclient/SSLClient.java examples/security/sslclient/SSLClientServlet.java examples/security/sslclient/SSLSocketClient.java examples/security/sslclient/wlsWLS.bat examples/servlets/AuthFilterImpl.java examples/webapp/index.html examples/xml/http/StockClient.java images/bea_logo_small.gif lib/joltintl.zip lib/snmpkit.jar lib/weblogic-tags-510.jar lib/weblogic510sp13.jar lib/weblogic510sp13boot.jar lib/aix/libmuxer.so (Native performance pack) lib/aix/libproxy36.so (NSAPI plugin) lib/aix/libproxy40.so (NSAPI plugin) lib/aix/libweblogicunix1.so (Server startup identity switcher) lib/aix/libwlenv.so (Return native environment strings) lib/aix/mod_wl.so (Apache plugin) lib/aix/mod_wl.ssl.so (Apache plugin) lib/aix/zac_aix lib/aix/oci817_8/libweblogicoci36.so (Oracle JDriver) lib/hpux10/libproxy.sl (NSAPI plugin) lib/hpux11/libmuxer.sl (Native performance pack) lib/hpux11/libproxy.sl (NSAPI plugin) lib/hpux11/libweblogicunix1.sl (NSAPI plugin) lib/hpux11/mod_wl_ssl.so (Apache plugin) lib/hpux11/mod_wl.so (Apache plugin) lib/hpux11/mod_wl_ssl_raven.so (Apache plugin) lib/hpux11/zac_hpux lib/hpux11/oci817_8/libweblogicoci36.sl (Oracle JDriver) lib/linux/libproxy.so lib/linux/libmuxer.so (Native performance pack) lib/linux/libwlenv.so lib/linux/libweblogicunix1.so (Return native environment strings) lib/linux/mod_wl.so (Apache plugin) lib/linux/mod_wl_ssl.so (Apache plugin) lib/linux/mod_wl_ssl_raven.so (Apache plugin) lib/linux/wlauth lib/linux/zac_linux lib/linux/oci817_8/libweblogicoci36.so (Oracle JDriver) lib/persistence/WebLogic_RDBMS.jar lib/solaris/libmuxer.so (Native performance pack) lib/solaris/libproxy.so (NSAPI plugin) lib/solaris/libstackdump.so (Native troubleshooting) lib/solaris/libweblogicunix1.so lib/solaris/mod_wl.so (Apache plugin) lib/solaris/mod_wl_ssl.so (Apache plugin) lib/solaris/mod_wl.ssl_raven.so (Apache plugin) lib/solaris/wlauth (Native security realm for Unix) lib/solaris/zac_solaris lib/solaris/oci817_8/libweblogicoci36.so (Oracle JDriver) lib/tru64unix/libmuxer.so (Native performance pack) lib/tru64unix/libproxy.so (NSAPI plugin) lib/tru64unix/libweblogicunix1.so (Server startup identity switcher) lib/tru64unix/libw1env.so (Return native environment strings) lib/tru64unix/mod_wl.so (Apache plugin) lib/tru64unix/zac_tru64unix myserver/ca.pem myserver/democert.pem myserver/demokey.pem zac/AIX_ppc.res zac/AIX_ppc_g.res zac/DECUnix_alpha.res zac/DECUnix_alpha_g.res zac/HPUX_parisc.res zac/HPUX_parisc_g.res zac/Linux_x86.res zac/Linux_x86_g.res zac/Solaris_sparc.res zac/Solaris_sparc_g.res zac/TRU64Unix_alpha.res zac/TRU64Unix_alpha_g.res Installation and removal instructionsInstallation
Removing the Service Pack
Release notes for WebLogic Server 5.1 Service Pack 13Resolved CRs:Below are the CRs resolved in the current Service Pack and a link to the previous Service Pack release notes. Service Packs are cumulative, so all of the CRs in Service Pack 1-12 have been fixed in the latest Service Pack.Service Pack 13NOTE: If you are using Service Pack 13, make sure that the weblogic510sp13.jar file is in the classpath on the client side in addition to on the server side. The following areas have had changes:
The following issues have been resolved with this service pack.
Additional details on new plug-in parameters:
The following parameters have been added and are available for the specified plug-ins.
|
Parameter Name | Defaults | Pertains To | Description |
---|---|---|---|
DynamicServerList | ON/OFF (Default: ON) | ISAPI and NSAPI | It will be "ON" by default. If set to "OFF" then the dynamic list returned by WebLogic with the response will be ignored by the plugin. There will be some shortcomings if the users go for this architecture. First, they cannot add new servers in the cluster as the plugin will try to connect only to the servers in it's static list. Second, if they add a new server to the list and it becomes the secondary, then the plugin will not failover (because of isServerInList) hence sessions will be lost. Finally, if any server goes down the plugin will hit that dead server again and again. This may affect the performance. | connectionTimeout | 0 = infinite timeout | All Plug-ins | The amount of time, in seconds, that a socket waits in between reading chunks of data. If the timeout expires, a java.io.InterruptedIOException is thrown. | Debug | ON/OFF (Default: OFF) | All Plug-ins | "Debug" will log the following messages to c:\tmp\wlproxy.log on NT and /tmp/wlproxy.log on UNIX: --All headers coming in from the client/browser --All headers sent to WebLogic --All headers returned by WebLogic --All headers returned back to the browser/client --Dynamic Cluster List --Connection info --Other informational, warning and error messages |
DebugConfigInfo | ON/OFF (Default: OFF) | All Plug-ins | This parameter is used to enable the magic query parameter "__WebLogicBridgeConfig". This is used to get details about configuration
parameters from the plugin. For example, if you enable "__WebLogicBridgeConfig" by setting DebugConfigInfo=ON and then send a request like: http://www.mywebserver.com:8000/weblogic/foo.jsp?__WebLogicBridgeConfig, then the plug-in will gather the configuration information and return it back to the browser. Note that it will not connect to the WebLogic Server in this case. This parameter is strictly for debugging and the format of the output message can change with releases. For security purposes it is advised to keep this parameter turned OFF in production systems. |
DefaultFileName | filename | All Plug-ins | If the URI is "/" then the default filename will be appended to the URI. This prevents redirects from the WebLogic Server. The DefaultFileName should be set to the default welcome page of the WebLogic Server. If the DefaultFileName is set to welcome.html, a http request like "http://somehost/weblogic" will become "http://somehost/weblogic/welcome.html". For this parameter to function, the same file must be specified in the weblogic properties file. For example, in this case, the weblogic properties file must be set to weblogic.httpd.initArgs.file=defaultfilename=welcome.html. | defaultServers | None | All Plug-ins | (Required) A list of host names and port numbers of the servers to which you are proxying requests in the form: host1:HTTP_Port:HTTPS_Port|host2:HTTP_Port:HTTPS_Port (Where host1 and host2 are the host names of servers in the cluster, HTTP_Port is the port where the host is listening for HTTP requests, and HTTPS_Port is the port where the host is listening for HTTP SSL requests.) Separate each host with the | character. If you set the secureProxy parameter to ON (see the secureProxy parameter), the HTTPS port uses SSL between the WebLogic Server running HttpClusterServlet and the WebLogic Servers in the cluster. You must always define an HTTPS port, even if you have set secureProxy to OFF. |
DisableCookie2Server | ON/OFF (Default: OFF) | Apache only | 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. |
HungServerRecoverSecs | 10:300:600 for min:default:max | All plugins | You should set this to a very large value. If it is less than the time the servlets take to process, then you will see unexpected results. This implementation takes care of the hung or unresponsive servers in the cluster. So the plugin waits for HungServerRecoverSecs for the the server to respond and then declares that server dead and fails over to the next server. |
Idempotent | ON/OFF (Default: ON) | All plugins | This is a URL level flag. By default it will be "ON" so if the servers do not respond within HungServerRecoverSecs, the plugins will failover. If set to "OFF" the plugins will not failover. It can be set differently for different URL's or Mime types. |
MaxSkips | 5:10:1000 for min:default:max | ISAPI and NSAPI | Currently if a server goes down the plugin marks it as bad and skips it for the next ten requests for that server. Ten skips doesn't mean ten requests but ten calls to getNextServer(). This happens when the request comes without the cookie, and the PRIMARY and SECONDARY are down. By using this parameter the user can change the MAX_SKIPS for dead servers. | numOfRetries | 5 | All Plug-ins | Number of times HttpClusterServlet will attempt to retry a failed connection. | PathPrepend | null | All Plug-ins | String to be prepended to the beginning of the original URL, after pathTrim has been trimmed, and before the request is forwarded to a WebLogic Server cluster member. | PathTrim | null | All Plug-ins | String trimmed by the plug-in from the beginning of the original URL, before the request is forwarded to WebLogic Server. For example, if the URL http://myWeb.server.com/weblogic/foo is passed to the plug-in for parsing and if PathTrim has been set to strip off /weblogic before handing the URL to WebLogic Server, the URL forwarded to WebLogic Server is:
|
QueryFromRequest | ON/OFF (Default: OFF) | Apache only | When set to ON, specifies that the Apache plug-in use (request_rec *)r->the request to pass the query string to WebLogic Server. (For more information, see your Apache documentation.) This behavior is desirable when a Netscape version 4.x browser makes requests that contain spaces in the query string and if you are using Raven Apache 1.5.2 on HP. When set to OFF, the Apache plug-in uses (request_rec *)r->args to pass the query string to WebLogic Server. |
SecureProxy | ON/OFF (Default: OFF) | All Plug-ins | If set to ON, enables SSL between the HttpClusterServlet and members of a WebLogic Server cluster. |
trimExt | Null | All Plug-ins | The file extension to be trimmed from the end of the URL. |
WLProxySSL | ON/OFF (Default: OFF) | All plugins | When set to ON, specifies that the client is using the HTTPS protocol. This parameter is used when there is more than one proxy server between the client and the plug-in, making it impossible for WebLogic Server to know whether HTTP or HTTPS is being used by the client. |
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
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.
This property is case sensitive because it's obtained by java.util.Property.getProperty(String).
Added a property in the CGIServlet called useByteStream that is set to false by default. The property is case sensitive. It 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>
Added a new property: weblogic.cluster.maxMulticastSendDelayMilliSeconds which, along with the new property, weblogic.cluster.multicastSendDelay, has replaced these two properties: weblogic.cluster.multicastDelayMillis and weblogic.cluster.multicasMaxDelayIncrements in order to improve server speed.
This property sets the maximum delay between fragments and defaults to 250 ms.
Added a new property: weblogic.cluster.multicastSendDelay which, along with the new property, weblogic.cluster.maxMulticastSendDelayMilliSeconds, has replaced these two properties: weblogic.cluster.multicastDelayMillis and weblogic.cluster.multicasMaxDelayIncrements in order to improve server speed.
This property has a range of 0-100 and defaults to 15.
The weblogic.cluster.multicastStateDumpDelayIncrement
property, and the related weblogic.cluster.multicastStateDumpDelayMax
,
can be used to avoid multicast storms. The value of weblogic.cluster.multicastStateDumpDelayIncrement
sets, in milliseconds,
a exponentially increasing delay for retransmission of multicast messages. If weblogic.cluster.multicastStateDumpDelayIncrement
is set, NAKs received between initial message transmission and expiration of the delay specified by the property are ignored.
If a NAK is received after the delay interval has expired, the message is retransmitted, and the delay period is doubled.
On each successive NAK the delay is doubled, up to a maximum delay defined by weblogic.cluster.multicastStateDumpDelayMax
.
For example, if weblogic.cluster.multicastStateDumpDelayIncrement
is set to n milliseconds, a NAK received within n milliseconds
of initial message transmission is ignored. If a NAK is received n milliseconds or more after message transmission, the message
is retransmitted, and any NAK received in the next 2*n milliseconds is ignored. If a NAK is received 2*n milliseconds or more
after last transmission, the message is retransmitted, and any NAK received in the next 2*2*n milliseconds is ignored. The
delay period increases in this fashion up to the maximum defined by weblogic.cluster.multicastStateDumpDelayMax
.
The maximim allowable value for this property is 10 seconds (10,000 milliseconds). By default this property is disabled. This property is set on the command line, when starting each server instance in the cluster.
Note: In the case of multicast storms, you may increase the size of UDP socket send and receive buffers using the UNIX
ndd utility. The udp_max_buf
parameter controls the size of send and receive buffers (in bytes) for a UDP socket. The
appropriate value for udp_max_buf
varies from deployment to deployment. If you are experiencing multicast storms,
increase the value of udp_max_buf
by 32K, and evaluate the effect of this change. Do not change udp_max_buf
unless
necessary. Before changing udp_max_buf
, read the Sun warning in the "UDP Parameters with Additional Cautions" section in the
"TCP/IP Tunable Parameters" chapter in Solaris Tunable Parameters Reference Manual at http://docs.sun.com.
This property, used in conjunction with weblogic.cluster.multicastStateDumpDelayIncrement
, sets a maximum value, in milliseconds,
for the interval between successive retransmission of a NAK’d multicast message.
The maximum allowable value for this property is 60 seconds (60,000 milliseconds). By default this property is disabled. This property is set on the command line, when starting each server instance in the cluster.
Added a property called weblogic.ejb.tempDir that can be used to choose the temp directory of the EJBs. If this property is not provided, the directory defaults to the tmp_deployments directory and it is then created under the myserver directory.
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.
Added a new property: weblogic.httpd.defaultServerName. This property allows you to specify the servername for any http request/response.
Using GET/POST requests from a Client or Browser, the servlet container determines charset of the string using the request URI of the HTTP request.
To specify encoding for the string of GET or POST request, the following properties need to be set in the weblogic.properties file:
weblogic.httpd.inputCharset.<Dir name>=<charset name>
<Dir name> is for the resource path used in the request URI. <charset name> is IANA character set name.
For Example: If you want to use EUC-JP charset as a default, Shift_JIS for under /i and iso-8859-1 for under /en, such as:
public_html ---- products (EUC-JP) (EUC-JP) ---- about (EUC-JP) ---- download (EUC-JP) ---- i (Shift_JIS) ---- en (iso-8859-1)In this case, then the following properties need to be set:
weblogic.httpd.inputCharset./*=EUC-JP weblogic.httpd.inputCharset./i/*=Shift_JIS weblogic.httpd.inputCharset./en/*=iso-8859-1
Additional Notes:
1) Mapping IANA charset and JAVA encoding You can specify mapping between IANA charset and JAVA encoding as follows: weblogic.httpd.charsets.<IANA charset>=<Java encoding> The following makes mapping from a IANA EUC-JP charset to Java EUCJIS encoding: weblogic.httpd.charsets.EUC-JP=EUCJIS 2) Default Mapping WebLogic Server has a default mapping table between IANA charset and Java encoding. Normally, you don't have to specify particular mapping specification. 3) Default charset If you don't specify inputCharset, then WebLogicServer handles charset the same as the Server's VM default encoding. For example, getParameter works on MS932 on Japanese NT without specification of inputCharset.
Added the property, weblogic.httpd.jsp.reloadIfTimeStampDiffers, which is used to complie all JSPs even if the time stamp of the JSP file is not the same as the time stamp of the generated class file.
This property is set to false by default and can be turned on by setting it to true.
One issue with this new behavior is that pre-compiled (JSPC) classes that are newer will be displaced by older JSP's in the document root every PageCheckSecs since their timestamps may differ. To turn this off, set PageCheckSecs to -1.
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.
Added the property, weblogic.httpd.redirectWithAbsoluteURL, that when set to true, specifies that the absolute URL should be used in the case that the sendRedirect() method is used. This property defaults to true.
The property, weblogic.httpd.servlet.lowercaseExtension property, has been added and is false by default. You can turn it on by setting the following in the web.xml or the weblogic.properties file:
<context-param> <param-name>weblogic.httpd.servlet.lowercaseExtension</param-name> <param-value>true</param-value> </context-param>If this property is set to true, all requested URI's that have extensions will be treated as lower case when compared to the servlet mappings. For example, to map all the request URI's of extension .jsp will to *.jsp., set this property to true.
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.
Added new property, weblogic.httpd.unknownMimeTypeIsDefault=[true|false] which fixes a problem retrieving mime-type. By default this is set to 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 spec is followed and the default mime type is disabled to allow null.
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
Added weblogic.jsp.windows.caseSensitive property. The default is false. If set to true, jspc and JspServlet do not change to lower-case the name of the generated file. The property is relevant on Windows only. The default is false (as it should be on Win32).
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.
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. This adds the ability to search multiple trusted domains. If a ntrealm.properties file still exists, it will be used before the weblogic.properties file will, so it's suggested to remove all instances of ntrealm.properties on your system. These can sometimes reside in c:\winnt\, so please search your entire system for the file. The command line is a good way to test connectivity. Use the following command: java weblogic.security.ntrealm.NTRealm username password. This should produce output similar to the following:
NTDelegate using Primary Domain Controller \\VULCAN auth ? joe enum users: #1 'Administrator' #2 'joe' #3 'Guest' #4 'NTTestUser' enum groups: #1 'None' #2 'Administrators' #3 'Backup Operators' #4 'Guests' #5 'Power Users' #6 'Replicator' #7 'Users' enum groups for user: joe #1 'Administrators' #2 'Backup Operators' #3 'Power Users' #4 'Users' #5 'None' is user joe an Administrator? true done
For details on NTRealm see WebLogic's online docs.
The new property, ignoreHostnameVerification, turns off the hostname verification check. The default implementation of this class in the WebLogic Server does only a String.equals() comparison of the urlHostname to the certHostname.
The new property, weblogic.system.listenDelaySecs, has been added to let a cluster node know about the existence of other nodes before handling http requests. This avoids having the dynamic server list return an incorrect list of servers to the plug-ins. The default value for this property is 0.
To use this property, when starting the cluster, use the default value or assign it very small value. Once the cluster is up and running, to bring up a new server to join the cluster, assign the property a value depending on the their network speed and other configurations. To find the optimal value (probably 40 to 60 seconds):
Added the property, weblogic.system.maxBackoffBetweenFailures, to enable configuration of backoff time in case of listen socket failure.
In the command line to start WebLogic server add the system property as in the following exampls:
-Dweblogic.system.maxBackoffBetweenFailures=10000 weblogic.Server
.
A new property "weblogic.system.maxExecuteThreadCount" has been added to configure the maximum number of the threads the weblogic will support. This sets the maximum the property "weblogic.system.executeThreadCount" will take. This property is configurable both from client and server. Note that there may be problems incurred by setting this property too high. See our tuning documentation for more information on performance with the WebLogic Server and execute threads.
Added a configurable property called weblogic.system.openSocketCount that is used to control the threshold that, if exceeded, rejects outstanding client requests that are already accepted but are yet to be actually served.
The threshold is not specified differently for Listen and SSLListen thread, but the same property takes care of sockets accepted in both threads and blocks both of them when the threshold is reached.
A new property "weblogic.system.priorityShutdownClass" has been added to replace the property called "weblogic.system.ShutdownClass". This new property is called earlier in the shutdown process. The settings for this property can remain as they were in weblogic.system.ShutdownClass.
A new property "weblogic.system.sysExecuteThreadCount" has been added to be used if using distributed transactions and the JTS driver. We recommend setting it to the value to which executeThreadCount is set unless you are only rarely using distributed transactions in your application.
The default is 0 (no system thread pool and the regular execute thread pool controlled by weblogic.system.executeThreadCount is used instead).
We include the lib/persistence/WebLogic_RDBMS.jar file in the service pack to resolve CR 9999. This jar file requires special attention because it is not a jar file that gets pre-appended to any classpaths. Instead, this EJB CMP jar file just needs to replace the original WebLogic_RDBMS.jar file in the lib/persistence directoy. No modifications are needed to the java or weblogic classpaths.
It is important to note that EJBs must be recompiled if the new WebLogic_RDBMS.jar file is installed from a service pack. They must also make sure that their classpaths are set correctly. In general, if you wish to resolve CR 9999, apply the weblogic510sp12.jar file as follows:
By passing the secureProxy parameter as an initial argument (in WebLogic init.Args) in the cluster servlet and setting it to ON, SSL between the proxy and the clusters will be enabled. Below is a demonstration of how to turn on the secure proxy feature:
weblogic.httpd.register.cluster=weblogic.servlet.internal.HttpClusterServlet
weblogic.httpd.initArgs.cluster=\
defaultServers=server1:7001:7002|server2:7001:7002,\
secureProxy=ON
These will both work on the error page of the webapp.
Setting up access log rotation: Note: Access log rotation requires WebLogic Server 5.1, Service Pack sp4 or later.
Access log rotation allows you to rotate your HTTP access log when it reaches a certain size or after a specified amount of time has passed. When the access log rotates, a new log file with a new file name is started. The access log's file name includes a numeric portion that is incremented upon each rotation.
To set up access log rotation, set the following properties (in addition to those properties you set to enable access logs) in your weblogic.properties file:
weblogic.httpd.logRotationType
Set to date to rotate your access log by date. If you choose this option, you must also set two additional properties: weblogic.httpd.logRotationPeriodMins and weblogic.httpd.logRotationBeginTime.
Set to size to rotate your access log when it exceeds a certain size. If you choose this option, you must also set the weblogic.httpd.maxLogFileSizeKBytes property. The default value is size.
weblogic.httpd.logRotationPeriodMins
If you are rotating your access log by date, set this to the number of minutes after which the access log will rotate. (1440 minutes = 24 hours, 100080 minutes = 1 week). The default value is 1440.
weblogic.httpd.logRotationBeginTime
Sets the date when the first access log rotation will occur. If
you do not set this property, the access log rotates after the amount
of time specified with the weblogic.httpd.logRotationPeriodMins property. Enter
the date using the java.text.SimpleDateFormat, MM-dd-yyyy-k:mm:ss. See the
javadocs for the java.text.SimpleDateFormat class for more details. For
example:
If, when you start WebLogic Server, this date has already passed, the first access log rotation will occur on the day you start WebLogic Server, at the hour, minute, and second specified by weblogic.httpd.logRotationBeginTime.
weblogic.httpd.maxLogFileSizeKBytes
Set to the maximum size, in kilobytes, for your access log file. When the access log reaches this size, it is rotated. If set to 0 (the default value) access log files do not rotate based on size. This property is ignored when weblogic.httpd.logRotationType is set to date.
1. Download Netscape's ldap 4.1 from Netscape's web site http://www.iplanet.com/downloads/developer/index.html and decompress it to your local directory.
2. Include Netscape's ldap4.1's jar files (ldapfilt.jar, ldapjdk.jar, ldapsp.jar) from your local directory in WEBLOGICCLASSPATH in the startweblogic startup script.
3. Add the following line to your ldaprealm.properties file. weblogic.security.ldaprealm.factory=com.netscape.jndi.ldap.LdapContextFactory
If rotation is enabled we will automatically append a date/time stamp to the end of the log file, you can control the format of this timestamp with the property weblogic.jdbc.logFileNameFormat. The reason we have to do this is that we do not control the output stream of the jdbc.log, this is handling in java.sql.DriverManager, so we cannot lock the file, move it to a backup and then restart the log file with the same name. Thus the current jdbc.log file is the file that has the most recent date timestamp at the end of the file name.
Added properties:
weblogic.jdbc.rotateLog
Set to true or false the above property in order to set whether or not to rotate the JDBC log file. This is set false by default.
weblogic.jdbc.logRotationPeriodMins
Defines the period in minutes when the jdbc log will be rotated. 24 hours is 1440 minutes. One week is 10080 minutes
weblogic.jdbc.logRotationBeginTime
Defines the date when the first rotation of jdbc log will begin. The format follows java.text.SimpleDateFormat, MM-dd-yyyy-k:mm:ss see the javadocs for more details. For example: 11-24-2000-12:30:00 Note: If not set, the next rotation is the next weblogic.jdbc.logRotationPeriodMins. If the date has already past, then the DAY_OF_WEEK, HOUR_OF_DAY, MINUTE and SECOND are used with the current date to recalculate.
weblogic.jdbc.logFileNameFormat
Defines the format of the date string that is appended to the jdbc log when rotation is turned on. The format follows java.text.SimpleDateFormat, and defaults to: dd_MMM_yyyy__HH_mm_ss see the javadocs for more details.
<context-param> <param-name>weblogic.jsp.packagePrefix</param-name> <param-value></param-value> </context-param></pre><p> For the iteration example, do the same as above. Additionally, change the list.jsp. Replace the following:If there is more than one JDK 's installed, ZAC will default to using JDK 1.1 To make ZAC run on a particular version of JVM, you must do two things. First, the 1.1 registry entry must be renamed to something other than 1.1. The HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft/Java RunTime Environment's "Current Version" key *MUST* be set to the particular JRE version you wish to use. Secondly, if you have a folder titled '1.1' or a similar name inside HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft/Java RunTime Environment, you must change this folder to some other name. Windows will ignore the setting of the current version key if it finds a folder which it thinks contains a 1.1 JRE<td><jsp:getProperty name="member" property="name"/></td> <td><jsp:getProperty name="member" property="phone"/></td> <td><jsp:getProperty name="member" property="email"/></td> with: <td><%= member.getName() %></td> <td><%= member.getPhone() %></td> <td><%= member.getEmail() %></td>
Additional details on CR 34351:
We have added a utility (beasvc.exe) to install and remove WebLogic instances as NT services. These files have been included with this Service Pack:
- beasvc.exe (Binary to start and stop services for 1.2 and above JVM) - beasvc_117.exe (Binary to start and stop services for 1.1 JVM) - installNtService.cmd (Script to start service) - uninstallNtService.cmd (Script to stop service)DESCRIPTION:Multiple instances of WebLogic servers as NT services can be installed/removed with "beasvc.exe".
All configurations for multiple services are stored in the registry using a different service name each time and under a server-specific hive at: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
The included scripts (installNtService.cmd and uninstallNtService.cmd) show how one can start/stop multiple services.
OPTIONS:
The following are the options supported by "beasvc.exe". Options should be separated by spaces. '/' may be substituted for '-'.
Required options:
-install | remove Install or remove the specified service. -svcname:<user_specified_service_name> Service name associated with this service. Use the following options only when installing the service.
-cmdline:<java_cmdline_parameters> Required java command line parameters. This should not include specification of the java command. -javahome:<java_home_directory> Root directory of targeted java distribution. The java command will be formed by appending \bin\java. -execdir:<base_directory_for_execution> Directory out of which this command will be executed. -extrapath:<additional_path_environment_settings> Additional path settings that will be prepended to the path applicable to this command execution only. -help | /? Prints out help. Installing a service sample: beasvc -install \ -svcname:<Service_Name> \ -javahome:<Java_Home_Directory> \ -execdir:<WebLogic_Home_Directory> \ -extrapath:<Path_To_Prepend> \ -cmdline:%CMDLINE% Uninstalling a service sample: beasvc -remove \ -svcname:<Service_Name> Starting a service: Go to Start->Settings->Control Panel->Services Start the service.
Additional details on ZAC: CRs 40856 and 37097:
ZAC is now compatible with JDK 1.2 and 1.3. To add ZAC support, copy the following files into the /lib folder of your WebLogic installation:
lib/aix/zac_aix lib/linux/zac_linux lib/hpux11/zac_hpux lib/solaris/zac_solaris lib/tru64unix/zac_tru64unix Also copy the following files to $WL_HOME/classes/weblogic/drp/admin (NOTE: Make sure you backup your original files): zac/AIX_ppc.res zac/AIX_ppc_g.res zac/DECUnix_alpha.res zac/DECUnix_alpha_g.res zac/HPUX_parisc.res zac/HPUX_parisc_g.res zac/Linux_x86.res zac/Linux_x86_g.res zac/Solaris_sparc.res zac/Solaris_sparc_g.res zac/TRU64Unix_alpha.res zac/TRU64Unix_alpha_g.res The above binaries ensure that the bootstraps generated will recognize both JDK 1.2 and JDK 1.3.Special notes For Win32 Systems
If you want to connect to International version of Tuxedo through Jolt, follow the procedure given below.
1. Copy joltintl.zip from the CD to %WL_HOME%\classes.
2. Modify following scripts to update their class paths as given in the end.
setenv.cmd: update CLASSPATH startConsole.cmd: update CLASSPATH (occures multiple times) startSNMPAgent.cmd: update CLASSPATH startWebLogic.cmd: update WEBLOGIC_CLASSPATH, CLASSPATH The class path parameters must have %WL_HOME%\classes (or .\classes) in their path. E.g. CLASSPATH=.\classes\boot;.\classes;... Just before the path for classes (%WL_HOME%\classes or .\classes), insert %WL_HOME%\classes\joltintl.zip (or .\classes\joltintl.zip). The above example would look like, E.g. CLASSPATH=.\classes\boot;.\classes\joltintl.zip;.\classes;... It is necessary that joltintl.zip file precedes the classes directory.
Fixed a problem with the Servlet API not providing a way for a user who had signed on to multiple webapps (Single Signon) to logout. Note that the session.invalidate() method only kills the session for the current webapp, so it cannot be used for logout in a multiple webapp situation.
The above two CRs introduced these three new methods: New methods in weblogic.servlet.security.ServletAuthentication...
1. public static boolean logout(HttpServletRequest req); This "logs out" the user in the session by removing the pertinent data from the sessions the user has logged into and also from the webserver without losing other session data. @param request HttpServletRequest 2. public static boolean invalidateAll(HttpServletRequest req); Invalidates all the sessions for the current user only (i.e. current cookie) and since the cookie is no longer required, it kills the cookie too. @param request HttpServletRequest 3. public static void killCookie(HttpServletRequest req); Kills the current cookie. @param request HttpServletRequest which contains the session
Added a configurable property called weblogic.system.openSocketCount that is used to control the threshold that, if exceeded, rejects outstanding client requests that are already accepted but are yet to be actually served.
The threshold is not specified differently for Listen and SSLListen thread, but the same property takes care of sockets accepted in both threads and blocks both of them when the threshold is reached.
WL_HOME/examples/iiop/wls2wls directory
. For more information on
interoperability, see our online guide at
http://download.oracle.com/docs/cd/E13222_01/wls/docs61/interop/interop.html
.
Please note that the workarounds suggested here to preserve existing session data only apply to web-applications that rely on long-life session persistence, where it is unacceptable to lose the session-data between server-upgrades.
Admin changes for JDBC session persistence
If you are using JDBC persistence you need to change the wl_servlet_sessions table to the following schema: (Note: this is Oracle syntax and you should involve your dba in making the necessary changes required to the table to reflect the schema below)
create table wl_servlet_sessions
In order to preserve your existing JDBC sessions, you will need to populate the new wl_context_path with an appropriate context according to the following criteria:
Admin changes for FILE session persistence
There are no requirements to upgrade the file structure for FILE session persistence. However if you wish to preserve your existing sessions, you must move the serialized files as follows.
You will find the serialized directories and files under the directory specified by the property:
weblogic.httpd.session.persistentStoreDir=storage_dir
This defaults to the value "session_db". Where the value is a relative path, this directory exists under the "myserver" directory. You must create a new directory under this persistentStoreDir, and move the existing directories at that level to this new directory as follows. These instructions assume that the persistentStoreDir is "session_db" for simplicity:
Extra note on retrieving existing session cookies
This note applies to deployed sites using non-default WebApp configurations that rely on session cookies.
In Service Pack 8, WLS introduced a naming convention for session cookies whereby the context-path was appended to the default cookie-name, separated by a "-" symbol. For example, if my WebApp had the context-path "mysite", and the default session cookie name "WebLogicSession" was used, then the resulting cookie name would be "WebLogicSession-mysite". This workaround enabled separate WebApps to differentiate between session cookies that used the default cookie name. This convention has been removed in ServicePack 9 or higher in favor of using a single session ID in conjunction with the context-path to identify a session for a particular WebApp. That is, the session id is no longer required to be unique but is used in conjunction with the context-path to obtain a primary-key.
If your WebApplication is designed to rely on long-life session cookies and you wish to retrieve these existing session cookies, you must explicitly set the cookie name in each WebApp to continue to follow this convention. While this solution will allow you to retrieve an existing user cookie, you will not be able to use the single-signon feature since that requires that you use the same cookie name for all WebApps that wish to share single-signon. If this situation applies to your site, we recommend you devise a migration strategy to move away from this model
The weblogic.properties file with the release says:
# Add a TXDataSource for the connection pool:
#weblogic.jdbc.TXDataSource.weblogic.jdbc.jts.demoPool=demoPool
It should actually be:
# Add a TXDataSource for the connection pool:
#weblogic.jdbc.TXDataSource.demoPool=demoPool
The -complierclass option was tracked by CR 53030 and is fixed in Service Pack 11.
java.net.SocketException: ReadFile on fd=1780 failed with err=64 at weblogic.socket.NTSocketMuxer.initiateIO(Native Method) at weblogic.socket.NTSocketMuxer.read(NTSocketMuxer.java:259) at weblogic.socket.MuxableSocketHTTP.requeue(MuxableSocketHTTP.java:178) at weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:280) at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:129)In general, SocketExceptions with "fd=" in them will be logged. These should not appear in great quantity and are usually the result of a Browser User clicking on Refresh.
To avoid the appearance of these "fd=" SocketExceptions in the log, apply the following patch:
ftp://ftpna.bea.com/pub/releases/510/CR063426/CR063426_510SP11.jar
To apply this patch, add the path of this jar to the beginning of the WebLogic classpath before starting WebLogic Server. For example:
$ java ... -classpath c:\weblogic\lib\weblogic510sp11boot.jar; c:\java\lib\classes.zip; c:\weblogic\classes\boot; c:\weblogic\eval\cloudscape\lib\cloudscape.jar -Dweblogic.class.path=c:\weblogic\lib\CR063426_510SP11.jar; c:\weblogic\lib\weblogic510sp11.jar;c:\weblogic\classes; c:\weblogic\license;c:\weblogic\lib\weblogicaux.jar; c:\weblogic\myserver\serverclasses ... weblogic.Server
On HP, a SIGSEGV 11 results when WebLogic Server connects to the Oracle database using the weblogic pool upon start-up with the following patches installed:
PHSS_21906 PHSS_22543 PHSS_24627
No errors result when the PHSS_16587 patch is applied using the A.03.13 version of the /usr/lib/libstream.2 library.
This has been corrected in Service Pack 12, and it is no longer necessary to apply the PHSS_16587 patch to avoid the error.
Three rmi.rmic.IDLType subclasses are missing in Service Pack 11. A temporary patch is available at the following link:
ftp://ftpna/pub/releases/510/CR064160/CR064160_510sp11.jar
If you use Apache and our Apache plug-in on a Solaris platform, it is recommended that you turn off debugging in the plug-in. Not doing so can result in a ctime_r system call that in turn causes a core dump to occur intermittently.
Included with the Service Pack 12 and higher is JDK 1.2.2_007. However, Windows 2000 Server and Windows 2000 Advanced Server are still not certified on this JDK. If you are using one of these platforms please use a supported jdk version, for example JDK 1.3.1_06.
Copyright © 2002 BEA Systems, Inc. All rights reserved.