15 WebLogic Server Compatibility

Oracle attempts to support binary and source-level compatibility between Oracle WebLogic Server 14c (14.1.1.0.0) and versions 10.3.6, 12.1.3 and 12.2.1.x in the areas of persistent data, generated classes, and API compatibility. In some cases, it is impossible to avoid incompatibilities. Where incompatibilities arise, they are fully documented in Upgrading Oracle WebLogic Server.

This chapter includes the following topics:

Java EE 8 Compatibility

WebLogic Server 14c (14.1.1.0.0) is Java EE 8 compatible. This compatibility allows a Java EE 8 compliant application to be developed on one operating system platform, and deployed for production on another, without requiring Java EE 8 application code changes.

Oracle ensures this compatibility of Java EE 8 application portability within a WebLogic Server release level.

Generated Classes Compatibility

Upgrading to WebLogic Server 14c (14.1.1.0.0) does not require you to recompile applications in order to create new generated classes.

Compatibility Within a Domain

Within the scope of a WebLogic domain, Oracle WebLogic Server supports a wide range of compatibility with respect to the specific versions of WebLogic Server instances that can run in that domain, as well as the mix of hardware, operating system, and JVM platforms on which those server instances can run.

However, depending upon the specific configurations present in the domain, such as WebLogic clusters, Oracle has specific recommendations for how you can achieve optimal performance. The following topics provide key information regarding compatibility within WebLogic domains:

About WebLogic Server Version Numbers

Within a WebLogic domain, the Administration Server, Managed Server instances, and the domain itself each have a WebLogic Server version number. The version number contains five decimal places; for example, WebLogic Server 14.1.1.0.0. The meaning of each decimal place is described below:

  • The first two decimal places together describe the Major Version number, for example "14.1" in 14.1.1.0.0. The WebLogic Server 14.1 Major Version release is also branded as the WebLogic Server 14c Major Version release.

  • The first three decimal places together describe the Minor Version number, for example "14.1.1" in 14.1.1.0.0. WebLogic Server 14.1.1 (or 14.1.1.0.0) is the first Minor Version release of the WebLogic Server 14.1 Major Version release. WebLogic Server 14.1.2 (or 14.1.2.0.0) would be the second Minor Version release of the WebLogic Server 14.1 Major Version release.

  • Patch Set releases for WebLogic Server 14.1.1.0.0 will increment the fourth decimal place. For example, 14.1.1.1.0 would be the first patch set release.

  • Patch Set Update releases are named uniquely by incrementing the fifth decimal place with the date of the Patch Set Update release in YYMMDD format; for example, 14.1.1.0.200731. This convention is used for Patch Set Update naming purposes; for example, naming downloads available on My Oracle Support. However, the application of a Patch Set Update does not change the version number of an existing WebLogic Server installation as referenced in the Oracle inventory directory (oraInventory) used by WebLogic Server 14.1.1 installers.

You can obtain the version number and Patch Set level of a WebLogic Server instance or domain several different ways. For example:

  • For an Administration Server or Managed Server instance, you can view the version message sent to stdout when the server is started. For example:

    <Version: WebLogic Server 14.1.1.0.0  Sat May 11 12:34:37 PDT 2019 1960751 >
    
  • For a domain, you can view the value of the <domain-version> element in the domain configuration file, config.xml. For example:

    <domain-version>14.1.1.0.0</domain-version>

WebLogic Version Compatibility

Within a WebLogic domain, the Administration Server, all Managed Server instances, and the WebLogic domain must be at the same WebLogic Server Major and Minor Version. This means that in WebLogic Server 14.1.1, the Administration Server, Managed Servers, and the WebLogic domain must all be at version 14.1.1. Note the following guidelines for maintaining consistency in Patch Set Update and Interim or One-off Patch levels within a domain.

Note:

Versions of WebLogic Server prior to 12.1.2 have slightly different compatibility allowances regarding specific WebLogic Server versions that are supported in a given domain. See Upgrading Oracle WebLogic Server.

  • In general, the best practice is for all server instances within a domain to be at the same Patch Set Update (PSU) and Interim or One-off Patch level during steady-state operation. However, there may be cases where server instances are required to run at different PSUs and Interim or One-off Patch levels within a domain. The primary examples include:

    • When applying PSUs, Interim or One-off Patches in rolling fashion across server instances in the domain. In such cases, the maintenance should be applied to the Administration Server first, so that the Administration Server is at the same PSU and Interim or One-off Patch level (or higher) than its Managed Servers. See About Rolling Upgrade in Upgrading Oracle WebLogic Server.

    • When there are specific requirements to run Managed Servers within a domain at different PSU and Interim or One-off Patch levels in steady-state operation. In such cases, the Administration Server should be at the highest PSU level, so that the Administration Server is at the same PSU level or higher than all of the Managed Servers. If Managed Servers within a domain are running with different Interim or One-off Patches, it will not be possible to apply a consistent set of Interim or One-off Patches to the Administration Server. Because this maintenance complexity may be difficult to manage, the general best practice is to use the same PSU and Interim or One-off Patch level across all servers in the domain.

  • Server instances within a cluster or domain can run on any hardware and operating systems as long as the hardware and operating systems are listed on the Oracle Fusion Middleware Supported System Configurations page on Oracle Technology Network. However, note that running clustered Managed Server instances on different hardware and operating systems may impact load balancing and performance. In general, the best practice is to run all Managed Servers within a cluster on the same hardware and operating system.

  • If the WebLogic domain is part of an Oracle Enterprise Manager Cloud Control installation, additional requirements exist regarding the combinations of hardware, operating system, and JVMs, that may be configured in the domain. See Oracle Enterprise Manager Cloud Control Administrator's Guide.

For more information about WebLogic domains and additional details about domain compatibility, see Domain Restrictions in Understanding Domain Configuration for Oracle WebLogic Server.

Hardware, Operating System, and JVM Platform Compatibility

WebLogic Server instances within a domain can run on any hardware, operating system, and JVM platform as long as the hardware, operating systems, and JVMs are supported for the current version of WebLogic Server. For details, see the Oracle Fusion Middleware Supported System Configurations page on the Oracle Technology Network.

Note:

Although this platform compatibility support extends to Managed Server instances within a cluster, Oracle strongly recommends that clusters be homogeneous with respect to the underlying hardware, operating system, and JVM. Managed Server instances running in the same cluster are assumed to be equivalent, so running clustered server instances on mixed platforms may have a negative impact on load balancing and performance. If you must operate a cluster on a mixed platform, Oracle strongly recommends that you understand the load balancing and performance implications.

Node Manager Compatibility

As a best practice, Oracle recommends that the version of Node Manager used in a WebLogic domain should match the version of the Administration Server.

If you are running a version of WebLogic Server prior to 12.1.2, see Upgrading Oracle WebLogic Server for additional Node Manager compatibility information that may be applicable to your environment. For more information about Node Manager compatibility, see Administering Node Manager for Oracle WebLogic Server.

Persistent Data Compatibility

If you are upgrading Oracle WebLogic Server from release 10.3.6 to release 14c (14.1.1.0.0), a number of updates are required to several configuration files. However, the upgrade tooling that has been available in Oracle WebLogic Server since release 10.3.6 makes those configuration file updates for you automatically.

API Compatibility

WebLogic Server 10.3.6, 12.1.3, and 12.2.1.x applications deployed on WebLogic Server 14c (14.1.1.0.0) will function without modification. Exceptions to this rule include cases where APIs were deprecated in prior WebLogic Server releases and removed, or where API behavior was changed in order to conform to a specification or to fix incorrect behavior. In certain circumstances, a correction may cause your application to behave differently.

For a list of previously deprecated APIs that are removed in Oracle WebLogic Server 14.1.1.0.0, see Removed Functionality and Components in What’s New in Oracle WebLogic Server 14.1.1.0.0.

Protocol Compatibility

Interoperability between WebLogic Server 14c (14.1.1.0.0) and WebLogic Server 10.3.6, 12.1.3, and 12.2.1.x is supported in several scenarios with regard to WebLogic clients, transport protocols, and WebLogic proxy plug-ins. However, a key interoperability restriction exists regarding WebLogic domains that are configured to use Compatibility security.

The supported client-server interoperability scenarios are as follows:

  • A WebLogic Server 10.3.6, 12.1.3, and 12.2.1.x client can invoke RMI-based applications hosted on a WebLogic Server 14c (14.1.1.0.0) server using IIOP, T3, T3S, HTTP, and HTTPS. JMS applications can be invoked using T3, T3S, HTTP, and HTTPS.

  • A WebLogic Server 14c (14.1.1.0.0) client can invoke RMI-based applications hosted on a WebLogic Server 10.3.6, 12.1.3, and 12.2.1.x server using IIOP, T3, T3S, HTTP, and HTTPS. JMS applications can be invoked using T3, T3S, HTTP, and HTTPS.

The supported server-server IIOP interoperability scenarios are as follows:

  • WLS 14.1.1/JDK 11 servers <-> WLS 14.1.1/JDK 11 servers

  • WLS 14.1.1/JDK 8 servers <-> WLS 14.1.1/JDK 8 servers

  • WLS 14.1.1/JDK 8 servers <-> WLS 12.2.1.4/JDK 8 servers

  • WLS 14.1.1/JDK 8 servers <-> WLS 12.2.1.3/JDK 8 servers

  • WLS 14.1.1/JDK 8 servers <-> WLS 12.1.3/JDK 8 servers

  • WLS 14.1.1/JDK 8 servers <-> WLS 12.1.3/JDK 7 servers

  • WLS 14.1.1/JDK 8 servers <-> WLS 10.3.6/JDK 7 servers

WebLogic Server 14c (14.1.1.0.0) supports Java client to server IIOP communications and interoperability with the following restrictions:

  • The only supported WebLogic Java IIOP clients are:

    • weblogic.jar install client from 14.1.1.0.0 or earlier WebLogic Server versions that are supported and under error correction.

    • A wlfullclient.jar from earlier WebLogic Server versions that are supported and under error correction (WebLogic Server 14c (14.1.1.0.0) does not include wlfullclient.jar).

    • A wlclient.jar from earlier WebLogic Server versions that are supported and under error correction (WebLogic Server 14c (14.1.1.0.0) does not include wlclient.jar).

  • A Java SE client (no JAR file from WebLogic Server in the class path) is not supported.

  • For WebLogic Server 14c (14.1.1.0.0) instances running on JDK11, IIOP interoperability with Java clients is only available with a WebLogic Server 14c (14.1.1.0.0) install client running on JDK 11.

  • Interoperability support is not available between WebLogic Server 14c (14.1.1.0.0) instances running on JDK8, and WebLogic Java IIOP clients running on JDK 11.

Note:

Oracle recommends using a T3 capable WebLogic Java client and the T3 protocol instead of IIOP when possible. It is rare that the IIOP protocol is required for Java to Java communications; T3 is more efficient than IIOP. For more information, see Overview of Standalone Clients in Developing Standalone Clients for Oracle WebLogic Server.

One important restriction is with regard to interoperability between WebLogic Server 14c (14.1.1.0.0) and an older release of WebLogic Server that uses Compatibility security. As of WebLogic Server version 12.2.1, support for Compatibility security is removed in both the server and client. To enable interoperability with a version of WebLogic Server that uses Compatibility security, you can choose one of the following options:

  • Configure the network channel used for communicating with the older WebLogic Server domain to use the IIOP protocol instead of T3. See Configuring Network Resources in Administering Server Environments for Oracle WebLogic Server.

  • Use a WebLogic Server version 12.1.3 or prior client. See Overview of Standalone Clients in Developing Standalone Clients for Oracle WebLogic Server.

  • Upgrade the domain of the older WebLogic Server release so that it no longer uses Compatibility security.