Friday Sep 20, 2013

Another not-to-miss OpenWorld Session: WebLogic on Oracle Database Appliance

Oracle WebLogic Server on Oracle Database Appliance offers a complete solution for building and deploying enterprise Java EE applications in a fully integrated system of software, servers, storage, and networking that delivers highly available database and WebLogic services.
In this session, we will discuss how WebLogic is deployed on Database Appliance virtual environment and what the benefits of deploying to this platform are.

Session Id: CON8980

Time: Monday, Sept 23rd 2013, 12:15 p.m. - 1:15 p.m.

Location: Marriott Marquis, Room: Golden Gate A

Speakers: Simon Haslam (Veriton), Frances Zhao-Perez (Oracle)

Read Simon's blog for more information on this session.

More on the topic from OTN.


Monday Sep 16, 2013

Ensuring high level of performance with WebLogic JDBC

In this post you will find some common best practices aimed at ensuring high levels of performance with WebLogic JDBC.  However, rather than just throwing some tips, I will detail why each recommendation is beneficial to JDBC and Weblogic Server performance.

  • Use Oracle JDBC thin driver (Type 4) rather than OCI driver (Type 2)

The Oracle JDBC thin driver is lightweight (easy to install and administrate), platform-independent (entirely written in Java), and provides slightly higher performance than the JDBC OCI (Oracle Call Interface) driver.  The thin driver does not require any additional software on the client side.  Oracle JDBC FAQ stipulates that the performance benefit with the thin driver is not consistent and that the OCI driver can even deliver better performances in some scenarios.

  • Use PreparedStatements objects rather than Statement 
With PreparedStatements, compiled SQL statements will be kept in cache and only be executed once against the database.  As a result, unnecessary parsing and round-trips to the database will be avoided when the same statement is used later within the same connection.  The statement cache size defines the total number of prepared statement that can be made with a single connection from the Datasource.

  • Close all JDBC resources in a finally Block

This include ResultSet, Connection, Statement and Prepared Statement objects and to avoid potential memory leaks.  The connection.close() won't necessarily automatically clean up all the other objects because the implementation of close() may differ between JDBC drivers.  Also, JDBC objects not properly closed could lead to this error:

java.sql.SQLException: ORA-01000: maximum open cursors exceeded.

If you don't explicitly close Statements and ResultSets right away, cursors may accumulate and exceed the maximum number allowed in your DB before the Connection is closed. 

  • Set Shrink frequency to 0 in production environments

By disabling Shrink frequency you will not allow waits before shrinking a connection pool that has incrementally increased to meet demand.  The Shrink Frequency parameter is used to specify the number of seconds to wait before shrinking a connection pool, given that ShrinkingEnabled is kept at its default value, or set to true.  Weblogic shrinks a connection pool by reducing the number of connections to the greater of either the minimum capacity or the number of connection in use and thus frees up some resources.  In development we can afford to keep the no-longer-used connection active rather than immediately returning them to the pool.  

  • Consider skipping the SQL-query test when Test Connections on Reserve is enabled

When Test Connections on Reserve is enabled (see Advanced Connection Pool Configuration in the console), the Weblogic Server checks a database connection prior to returning the connection to a client to avoid passing an invalid connection in the application.  Since this operation could impact the performance, it's recommended to use Seconds to Trust an Idle Pool Connection (set to 10 seconds by default) that defines how long WebLogic Server will trust the connection and therefore skip the connection test after a connection has been proven valid.

  • Enable Pinned-to-Thread
Disabled by default, this option can improve performance by enabling threads to keep a pooled database connection even after the application closes the logical connection.  This eliminates potential contention between threads getting a database connection.  However, this parameter should be used with great care because the connection pool maximum capacity is ignored when pinned-to-thread is enabled.  A connection no longer used will not return to the pool but will stay linked to the thread, and no shrinking can apply to that pool.
  • Ensure that Maximum Thread Constraint property doesn't exceed the number of database connection

This property (See Environment Work Manager in the console) will set a maximum number of possible concurrent requests. If it exceeds the number of database connection then some threads might end up waiting until existing database connection are made available.

Visit Tuning Data Source Connection Pools and Tuning Data Sources for additional parameters tuning in JDBC data sources and connection pools to improve system performance with Weblogic Server 12.1.2, and Performance Tuning Your JDBC Application for application-specific design and configuration. 

Therap Services at OpenWorld: Highlights Support for Individuals with Developmental Disabilities

Therap Services, LLC. is a web-based service organization that provides an integrated solution for documentation, reporting and communication needs of agencies providing support to people with developmental disabilities. It offers an easy and efficient alternative to the immense amount of paper work that is done manually by the care providers. Therap’s software suite is relevant to all the different kinds of service organizations that support and care for people with intellectual and developmental disabilities. Therap is used in over 1,000 agencies, in small agencies serving as few as one individual to multi-state providers serving thousands of individuals. The modules can be categorized under Individual Support, Staff Support and Billing and Attendance Support. Therap uses Oracle Database and had been using JBoss as the application server for their mission critical application.  As Therap has grown, they have experienced several performance issues with JBoss – specifically problems with JBoss Messaging.  As Therap continues to expand their business, they felt the need for a more robust solution for their core business application.  Additionally, Therap needed a more advanced monitoring solution for both internal and external transactions on multiple layers:  application, database, application server. They chose Oracle WebLogic Server for three main reasons:  1) Extremely high confidence level in the Oracle Product Management team expertise, 2) Access to a better support system with product integration and best practices, and 3) Oracle’s proven reliability history.  Come join Therap Services CTO Masum at OpenWorld to hear about how Therap leverages Oracle WebLogic Server with Oracle Enterprise Manager to really take their applications to the next level. In addition, while at OpenWorld don’t miss other Cloud Application Foundation Innovators. You can join the session whether you are an OpenWorld attendee or not.

Friday Aug 30, 2013

WebLogic Active GridLink for RAC: Check out NEC results!

Oracle WebLogic Active GridLink for RAC is the market-leading mid-tier integration solution leveraging additional Oracle RAC advancements. Oracle and NEC have jointly invested on verifying and testing the Active GridLink for RAC solution which provides a high-availability, scalability and high performance solution for helping customer building mission critical applications. In addition, WebLogic Server is the only application server which has been fully integrated and certified with Oracle Database without losing any capabilities in Java EE implementation with respect to security, transaction, connection pooling , management, and more.

NEC has constructed high availability systems with WebLogic Server and Oracle Real Application Cluster. It investigated advantages and features of the GridLink data source focusing on high availability and flexibility that GridLink data source achieves in integrating with Oracle RAC. The purpose of these tests is to get high serviceability by diverting system integration know-how of JDBC data source already storing, in addition to using these functions. The following are functions which the GridLink data sources were tested for.

1. Runtime Connection Load Balancing(RCLB)

2. Web Session Affinity

3. Fast Connection Failover (FCF)

4. Performance Improvement by Dynamic Changes in RAC Topology

Join us in this OpenWorld session as we discuss the detailed Active GridLink capabilities and the testing results obtained by NEC. We will also discuss the new functionality introduced with Oracle Database 12c.

Monday Aug 19, 2013

New Oracle WebLogic Suite 12.1.2 Technical Whitepaper Published

We have just published a new technical whitepaper covering WebLogic Suite.   It is available here.

This whitepaper provides an overview of the major features, functions and capabilities in WebLogic Suite, with a primary emphasis on WebLogic Server.   It includes a description of the new features in WebLogic Server and WebLogic Suite 12.1.2, and how they help to provide a modern development environment, native cloud management capabilities, and a mission-critical cloud platform.

We hope this whitepaper will be useful to you whether you are just learning about WebLogic Server, or have experience with WebLogic Server and WebLogic Suite, and want an overview of what has changed in the 12.1.2 release.    It is intended to complement the business whitepaper mentioned by Ruma Sanyal in her recent blog post.

For detailed "how to" instructions on using WebLogic Server 12.1.2, please refer to the product documentation updated on July 11:

Tuesday Aug 13, 2013

Announcing WebLogic Server on Oracle Database Appliance 2.6

Would you like to learn a solution that saves time and money by simplifying deployment, maintenance, and support of high availability Oracle Database and WebLogic Server?

We are announcing exciting news of the availability of “Oracle WebLogic Server on Oracle Database Appliance 2.6”!

Oracle WebLogic Server on Oracle Database Appliance 2.6 offers a complete solution for building and deploying enterprise Java EE applications in a fully integrated system of software, servers, storage, and networking that delivers highly available database and WebLogic services. Built with world’s most popular database, Oracle Database and the industry’s best application server, Oracle WebLogic Server, and with its One-Button deployment capability, it delivers the combined high availability and simplicity. It reduces IT cost with the unique capacity-on-demand software licensing model.

For fully redundant system, storage, Oracle Database Appliance Manager Information, please check out the Oracle Database Appliance data sheet.

Oracle WebLogic Server on Oracle Database Appliance 2.6 provides:

  • Highly available WebLogic Server with two, four or eight node cluster options that provide the foundation for customers to build and deploy enterprise Java EE applications with support for new features in WebLogic 11g (10.3.6) and 12c (12.1.1).
  • Simple, reliable, affordable platform for deploying end-to-end solutions leveraging not only Oracle Database Real Application Clusters, but also WebLogic and the software load balancer for customers’ Java EE and Database investments.

The following new features are included in this new release:

  • WebLogic on ODA 2.6 is fully certified with Oracle Database Appliance X3-2 hardware
  • Oracle Traffic Director becomes optional during provisioning process
  • User input the licensed core count, provisioning then it creates pools on the compute nodes and configure Traffic Director and WebLogic Server VMs to use the pools.
  • Oracle Traffic Director template for the load balancer tier

Please check out the white paper, howto, FAQ, etc for more information.

Monday Aug 12, 2013

Announcing Web Socket Proxy and Apache 2.4 support for WebLogic Server plug-in customers

We are happy to announce the following enhancements to Oracle WebLogic  Plug-In 12.1.2 release:

- Apache 2.4 Support - WLS Plug-In 12.1.2+ is now supported with vanilla Apache 2.2.x and 2.4.x Web Servers. Customers interested in using WLS Plug-In with vanilla Apache 2.4.x Web Server can download our latest  WLS Plug-In 12.1.2  patch from OTN -

- WebSocket Proxy Support  -  WLS Plug-In 12.1.2+ for Apache HTTP Server 2.2.x , 2.4.x Web Servers can now front-end WebSockets applications deployed within WLS 12.1.2. This WebSocket Proxy capability is currently unavailable for OHS and other 3rd party web servers like IIS and iPlanet Web Servers. 

- This enhancement is tracked via bug - 17085296  and is available only for WLS Plug-In 12c release. Also, these enhancements are NOT available for OHS 12.1.2 release. OHS 12.1.3 will deliver the WebSocket Proxy capability.  Our FMW 12.1.2 certification matrix is being updated to reflect that WLS Plug-In 12.1.2 supports Apache 2.4 Web Server.  

- This enhancement is downloadable either as a patch, for a corresponding platform, from Oracle Support - or from OTN - . 

- This enhancement, like any other WLS Plug-In patch, is delivered as a complete zip file and the installation experience is same as WLS Plug-In 11g/12c release. The 'README' provides more information regarding these new capabilities. The next doc refresh for WLS Plug-In 12c product documentation will include this information as well. 

- Last but not least, any future patches for WLS Plug-In 12.1.2 will include these enhancements as well.  This enhancement addresses several of our customers long standing wish regarding Apache 2.4 Web Server support. 

Friday Aug 09, 2013

Oracle and NEC Joint White Paper: WebLogic Server Active GridLink for Oracle RAC Testing Scenarios and Results

Oracle and NEC have been jointly invested on verifying and testing the Active GridLink for RAC solution implemented within Oracle WebLogic Server which gives the rich functionality for  Oracle Database Real Application Clusters integration.
The combination of Oracle WebLogic Server Data Source and Connection Pooling solutions and Oracle RAC provides a high-end mission-critical environment offering performance, high scalability and availability features. Load-balancing and Affinity capabilities offersignificant performance improvement for online transaction processing scenarios, as well as improving throughput and total response time. Failover solution gives end-to-end rapid failure detection supporting graceful shutdown for planned and unplanned Oracle RAC node outages.
In this paper, we start with a brief introduction to Oracle RAC and an overview of the Oracle RAC features supported in Oracle WebLogic Server 11g and 12c. We then focus on details of the effort that have been jointly done with Oracle and NEC with all the detailed testing scenarios and testing results, along with the analysis. The background and overview of NEC’s test of Active GridLink for RAC will be covered in details. The technical details about Runtime Connection Load Balancing, Web Session Affinity, Fast Connection Failover, and how to remove and add the additional RAC node with zero-downtime will be discussed with different use cases.

Download the white paper! And please share your comments


Monday Jul 29, 2013

New Whitepaper – Cloud Performance, Elasticity and Multitenancy with Oracle WebLogic Server 12c and Oracle Database 12c

One of the exciting focus areas of Oracle WebLogic 12c release 12.1.2 is the deep integration with the recently available Oracle Database 12c.

To hear live about these key integration features, please join our launch event on July 31st

One of the advantages of having the world’s most popular Database and the #1 Application Server under one roof, is the simple rule of 1+1=3, and what do I mean by that?

With our Engineering teams on the Database and Middleware side working hand in hand, Oracle WebLogic Server 11g introduced Active GridLink for Real Application Clusters (RAC). In conjunction with Oracle Database, this powerful software technology simplifies management, increases availability, and ensures fast connection failover, with runtime connection, load balancing and affinity capabilities. Deltek is one of the early adopters of these capabilities. Watch their video

With the release of WebLogic Server 12c (12.1.2), tight integration between Oracle WebLogic Server 12c (12.1.2) and Oracle Database 12c enhances these capabilities with improved availability, better resource sharing, inherent scalability, ease of configuration and automated management facilities in a global cloud environment.

It’s worth noting that Oracle WebLogic Server is the only application server with this degree of integration with Oracle Database 12c.

This white paper, authored by Monica Riccelli and Frances Zhao from the CAF Product Management team, explains how these unique database, clustering, and application server technologies work together to enable higher availability, scalability and performance for your business. It starts by introducing Oracle Active GridLink for RAC with attention to ease of configuration, manageability, and performance. Then describes the impact of Oracle WebLogic server on several leading features of Oracle Database12c such as Multitenant Databases (Pluggable Database), Database Resident Connection Pool, Application Continuity, and Global Data Services.

Please download the whitepaper and let us know your feedback!

You can read more on this topic in these blogs by Steve Felts:

Part 1 - 12c Database and WLS – Overview

Part 2 - 12c Database and WLS - Application continuity

Wednesday Jul 24, 2013

New Node Manager Configuration Model

Join the Online Launch Event for WLS 12.1.2 on July 31st.

 In WebLogic Server 12.1.2, we have a great new option for configuring and running the Node Manager: by default, Node Manager is now configured with the domain.

We listened!

In recent months, we’ve heard that customers typically manage Node Manager instances with their domains. That is, they install, upgrade, and run Node Manager instances along with the domains where they host their applications. Also, in most cases, it is the same users who manage Node Manager instances along with related domains. The configuration model for Node Manager in previous releases – sharing Node Manager instances across domains – can be more complicated because different groups in the organization upgrade, patch, and have downtime on different schedules.

We listened, and now the default configuration for Node Manager is a Node Manager instance per domain on each of your Managed Server hosts. 

Per-Domain Node Manager Diagram

With this new configuration option, you can now:

  • Align Node Manager lifecycle management with the domains that it manages and monitors
  • Simplify Node Manager configuration through Configuration Wizard/WLST offline and Pack/Unpack commands
  • Maintain your WebLogic installation directory as a read-only directory (Node Manager configuration is now stored with the domain.)

Configuration Wizard Changes

When you create a domain using either WLST or the Configuration Wizard, Node Manager is configured for use with that domain. When I say “configured for that domain,” I mean that:

  • There is a <domain>/nodemanager folder that includes the Node Manager configuration files (,
  • There is a startNodeManager script in the <domain>/bin directory
  • In the <domain>/security folder, there is a domain-specific and host-specific DemoIdentity.jks keystore used by the Node Manager for OOTB evaluation and demonstrations

In other words – everything you need to run the Node Manager for the domain is set up for you and is encapsulated in the domain! 

Extending Your Domain with Pack/Unpack

We’ve also made it easier to set up Node Manager for the Managed Servers in your domain:

  • When you use the “pack” command with the “-managed=true” option, the configuration framework includes changes to the file in the template file.
  • When you use the “unpack” command on the remote host where you want to run your Managed Servers, the configuration framework sets up the domain, regenerates the file, generates a file (no need to run nmEnroll!), generates a DemoIdentity.jks keystore, and generates a startNodeManager script.

Out of the gate, you are ready to go with a per-domain Node Manager configuration for each host where you will run your Managed Servers.

Give it a try! 

More Information

Don’t forget to register for the WebLogic Server 12.1.2 Online Launch Event on July 31st.

You can also see the following links:

Wednesday Jul 17, 2013

WebLogic Active GridLink - An Oracle and NEC Joint White Paper

Oracle and NEC have been jointly invested on verifying and testing the Active GridLink for RAC solution implemented within Oracle WebLogic Server which gives the rich functionality for Oracle Database Real Application Clusters integration.

To learn about additional enhancements for Oracle WebLogic - Oracle Database integration, please join the Online Launch Event on July 31st.

In this published white paper, we started with a brief introduction to Oracle RAC and an overview of the Oracle RAC features supported in Oracle WebLogic Server 12c. We then focused on details of the effort that have been jointly done with Oracle and NEC with all the detailed testing scenarios and testing results, along with the analysis. The background and overview of NEC’s test of Active GridLink for RAC will be covered in details. The technical details about Runtime Connection Load Balancing, Web Session Affinity, Fast Connection Failover, and how to remove and add the additional RAC node with zero-downtime will be discussed with different use cases.

Check out this Japanese version paper:

English version is coming soon, please check back later!

Gemalto is excited about new Mobile Capabilities in WebLogic 12c release 12.1.2

Gemalto is the leader in making digital interactions secure and easy. It enables its clients to offer trusted and convenient digital services to billions of individuals.

People worldwide increasingly want the freedom to communicate, travel, shop, bank, entertain and work – anytime, anywhere – in ways that are convenient, enjoyable and secure.

Gemalto delivers on their expanding needs for personal mobile services, identity protection, payment security, authenticated online services, cloud computing access, modern transportation, M2M communication, eHealthcare and eGovernment services.

Gemalto’s telecommunication business unit is using multiple versions of WebLogic: 10.3.1, 10.3.2, and 10.3.4. They use WebLogic for their web-based applications, business logic, JMS, and web services. High availability is a significant requirement for Gemalto as they have strict SLA contracts with their customers demanding up to five nines availability during production. So clustering is very important. They are also excited about the new mobile capabilities in WebLogic 12c release 12.1.2. See the short video to hear their story and join the Cloud Application Foundation 12c launch event to learn more about mobile capabilities in WebLogic 12.1.2

Friday May 17, 2013

Troubleshooting Tools Part 3 - Heap Dumps

A Heap Dump is a snapshot of the Java process heap memory at a given time.  It's a useful tool to troubleshoot memory leaks and other memory related issues.  Heap dumps are to memory what thread dumps are to java threads.

There are different ways to dump the java heap used by a Java application such as WebLogic Server.  Heap dumps can be triggered automatically by JVMs such as HotSpot or JRockit when an OutOfMemory event occurs.


java -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=D:\myApp\hprof-dumps myApp  

This command will generate a heap dump file in the defined heap dump directory when an OOM is thrown.  

The file will be in HPROF binary format (*.hprof).  If no path is defined the file will be created in the directory from which the java process was launched.  The format of the file with JRockit is jrockit_pid,hprof, pid being the process ID of this JVM instance.  With HotSpot the format of the file will be java_pidpid.hprof.


java.lang.OutOfMemoryError: Java heap space

Dumping heap to D:\java_pid4148.hprof ...

Heap dump file created [24921731 bytes in 1.400 secs]

For WebLogic Server these properties, HeapDumpOnOutOfMemoryError and HeapDumpPath (optional), can be added directly to the startup script that contain the Java command that launches WLS.  On Windows the script (with default name startWebLogic.cmd) lives in the domain bin directory and the parameters can be directly added to the existing JAVA_OPTIONS.

With a JRockit VM process the following command can also be used to generate a heap dump.


jrcmd pid hprofdump filename=name_of_dump_file

However if you are using this command against a non JRockit process the following error will come up: Command failed in target VM

You can also manually generate a heap dump with tools such as jmap or VisualVM.


jmap -heap:live,format=b,file=filename pid

This command will generate a heap dump file in binary format and will only count live objects (the live option is optional). Live objects are used by applications and generally reside in the Young Generation part of the heap.

As illustrated in the screenshot below, generating a heap dump with VisualVM is very simple.  VisualVM is shipped as part of the HotSpot JVM  (/bin/jvisualvm.exe).  However, VisualVM can connect to java processes that started with other JVM such as JRockit.

Once generated, the heap dump will be parsed as shown below:

VisualVM enables you to browse heap dumps as shown above with the Classes view where you can easily identify the number and percentage of instances referred by each class.

jhat can also be used to analyze heap dump files.


jhat dumpfile

Reading from dumpfile...
Dump file created Fri May 17 15:25:41 PDT 2013
Snapshot read, resolving...
Resolving 580390 objects...
Chasing references, expect 116 dots.............................................
Eliminating duplicate references................................................
Snapshot resolved.
Started HTTP server on port 7000
Server is ready.

Then you can open http://localhost:7000/ to navigate through the content of the dump file to identify objects with high number of occurrences.

Finally, as shown below, the OpenSource Eclipse MAT offers a very rich GUI that includes histograms and leak hunter actions, overview and leak suspect reports and much more.

Previous posts on troubleshooting tools:

Troubleshooting Tools Part 1 - VisualVM

Troubleshooting Tools Part 2 - jstack

Tuesday May 14, 2013

WebLogic Server on Oracle Database Appliance - How to configure a WebLogic cluster

How to configure a WebLogic cluster on Oracle Database Appliance?

It's easy with the support of Appliance Manager, WebLogic configuration for Oracle Database Appliance!

Follow the wizard driven process, you can deploy and set up a WebLogic cluster just in hours!

  1. Pick the WebLogic version. In our 2.5 release, you can choose either WebLogic 12c (12.1.1) or 11g (10.3.6).
  2. Choose the size of cluster, you can set up a 2, 4 or 8 node cluster.
  3. Input your networking information.
  4. Input load balancer networking information.
  5. Input the data source configuration information as optional.
  6. Done. Ready to deploy!

It's simple, easy and straightforward.


Oracle Traffic Director - download and check out new cool features in

As Oracle's strategic layer-7 software load balancer product, Oracle Traffic Direct is fast, reliable, secure, easy-to-use and scalable; that you can deploy as the reliable entry point for all TCP, HTTP and HTTPS traffic to application servers and web servers in your network.

The latest release Oracle Traffic Director is available for ExaLogic and Database Appliance! For download and details please visit the Traffic Director OTN website.

It this release, we have introduced some major new functionality and improvements.

Web application firewall. Oracle Traffic Director supports web application firewalls. A web application firewall (WAF) is a filter or server plugin that applies a set of rules, called rule sets, to an HTTP request. Using a web application firewall, users can inspect traffic and deny requests to protect back-end applications from CSRF vulnerabilities and common attacks such as cross-site scripting.

WebSocket Connections. Oracle Traffic Director handles WebSocket connections by default. WebSocket connections are long-lived and allow support for live content, games in real-time, video chatting, and so on.

Support for LDAP/T3 Load Balancing. Oracle Traffic Director now supports basic LDAP/T3 load balancing at layer 7, where requests are handled as generic TCP connections for traffic tunneling. It works in full-NAT mode.

Please download and try it out. For more information, check out the data sheet and the documentation:


The official blog for Oracle WebLogic Server fans and followers!

Stay Connected


« April 2014