Weblogic Archive

Issue while creating datasource on Weblogic Server

In Weblogic Sometimes when you try add datasource to cluster group it fails with following error, which might be due to process limit on database side.

WLS Console Error

Caused by: java.lang.Throwable: Substituted for the exception oracle.net.ns.NetException which lacks a String contructor, original message – Got minus one from a read call
at oracle.net.ns.Packet.receive(Packet.java:314)
at oracle.net.ns.NSProtocolStream.negotiateConnection(NSProtocolStream.java:160)
at oracle.net.ns.NSProtocol.connect(NSProtocol.java:264)
at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1452)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:496)
at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:666)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:566)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.makeConnection0(ConnectionEnvFactory.java:286)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.access$000(ConnectionEnvFactory.java:20)
at weblogic.jdbc.common.internal.ConnectionEnvFactory$1.run(ConnectionEnvFactory.java:215)
at java.security.AccessController.doPrivileged(Native Method)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.makeConnection(ConnectionEnvFactory.java:212)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.setConnection(ConnectionEnvFactory.java:143)
at weblogic.jdbc.common.internal.JDBCResourceFactoryImpl.createResource(JDBCResourceFactoryImpl.java:185)
at weblogic.common.resourcepool.ResourcePoolImpl.makeResources(ResourcePoolImpl.java:1356)
at weblogic.common.resourcepool.ResourcePoolImpl.makeResources(ResourcePoolImpl.java:1272)
at weblogic.common.resourcepool.ResourcePoolImpl.start(ResourcePoolImpl.java:240)
at weblogic.jdbc.common.internal.ConnectionPool.doStart(ConnectionPool.java:1754)
at weblogic.jdbc.common.internal.ConnectionPool.start(ConnectionPool.java:239)
at weblogic.jdbc.common.internal.ConnectionPoolManager.createAndStartPool(ConnectionPoolManager.java:614)
at weblogic.jdbc.common.internal.ConnectionPoolManager.createAndStartPool(ConnectionPoolManager.java:475)
at weblogic.jdbc.module.JDBCModule.prepare(JDBCModule.java:344)

DB Error

oracle@host02:/u01/app/db11g/product/11.2.0/dbhome_1/dbs >sqlplus / as sysdba

SQL*Plus: Release Production on Thu Apr 6 08:21:02 2017

Copyright (c) 1982, 2011, Oracle. All rights reserved.

ORA-00020: maximum number of processes (150) exceeded
Validation Process

List number of process running for the DB instance

oracle@host02:/practices/part1/practice12-02 >ps -auxf |grep orcl|wc -l

Check on DB level for limit
SQL> show parameter process scope=both;

———————————— ———– ——————————
aq_tm_processes integer 1
cell_offload_processing boolean TRUE
db_writer_processes integer 1
gcs_server_processes integer 0
global_txn_processes integer 1
job_queue_processes integer 1000
log_archive_max_processes integer 4
processes integer 150
processor_group_name string


Increase the number of process on db level

SQL> alter system set processes=500 scope=spfile;

SQL> show parameter process;

———————————— ———– ——————————
aq_tm_processes integer 1
cell_offload_processing boolean TRUE
db_writer_processes integer 1
gcs_server_processes integer 0
global_txn_processes integer 1
job_queue_processes integer 1000
log_archive_max_processes integer 4
processes integer 500
processor_group_name string

Now try to re-enable the datasource on weblogic

MOS Article Reference
“IO Error:Got minus one from a read call”: In the Diagnostic logs (Doc ID 1995125.1)

What is Kerberos?

Three parties are involved in Kerberos Based Authentication – Client, Server and a Kerberos Distribution Centre.

The diagram below clearly demonstrates how the interactions between the three parties happen.

1 – Client requests for a TGT (Ticket to Get Tickets) from the KDC (Key Distribution Centre). Client sends its username in plain text format to get the TGT.

2 – KDC returns a TGT to the client. The TGT has the Session Key (SK) which is encrypted with a Key derived from the Client’s password. Hence only the Client will be able to retrieve the Session Key. This Session Key is used for all furthur communications between the Client and the KDC.

3 – The Client requests for a Service Ticket (ST) to the KDC by providing the Service name along with the Session Key for its own identification. The KDC will be able to provide the ST only if the Service is already registered with it.

4 – The KDC creates the Service Ticket. The Service Ticket has the Client’s Authentication Data and a Sub Sesion Key (SSK). The Service Ticket is then encrypted with a Key Derived from the Server’s Key which is shared with the KDC. This ensures that the Service Ticket can only be decrypted by the Server. The KDC then authors a message containing the Service Ticket and a Sub Session Key. The whole message is then encrypted with the Session Key so that only the intended Client can decrypt it.

Pictorially the Message looks like this.

5 – The Client decrypts the Message with the Session Key, retrieves the Service Ticket and the Sub Session Key. It sends the Service Ticket to the Server. This Service Ticket is the SPNEGO Token. The Server decrypts the Service Ticket with its Key and authenticates the Client based on the Clients Authentication Data. Also it gets a copy of a Sub Session Key from the Service Ticket. Now both the Client and the Server have a common key, Sub Session Key, which they use for all further communication.

6 – A session is established and no further authentication is required.

References :-


Silent Installation of WebLogic Server

The below post describes about the Silent Installation of Oracle WebLogic Server 11g.

Silent mode installation allows you to define an installation configuration file called silent.xml, based upon which the required components are installed. This does not provide any configuration options during the installation process. Silent installation allows using the configuration to duplicate the installation on many machines. Silent-mode installation works on both Windows and UNIX systems.

The silent-mode installation process has two primary steps:

1. Create a silent.xml file that defines the installation configuration that you would normally enter during an interactive installation process, such as graphical-mode or console-mode installation.

For example, in silent.xml, you can supply the values for the Middleware home directory, the product directory, and the components to be installed.

A sample silent.xml looks like below.

<?xml version="1.0" encoding="UTF-8"?>
<data-value value="D:\WLS11g"/>
<data-value name="WLS_INSTALL_DIR" value="D:\WLS11g\wlserver_10.3"/>
<data-value name="COMPONENT_PATHS"
value="WebLogic Server/Core Application Server|WebLogic Server/Administration Console|WebLogic Server/Configuration Wizard and Upgrade Framework|WebLogic Server/Web 2.0 HTTP Pub-Sub Server|WebLogic Server/WebLogic JDBC Drivers|WebLogic Server/Third Party JDBC Drivers|WebLogic Server/WebLogic Server Clients|WebLogic Server/WebLogic Web Server Plugins|WebLogic Server/UDDI and Xquery Support|WebLogic Server/Server Examples"/>
<!--<data-value name="INSTALL_NODE_MANAGER_SERVICE" value="yes"  />
<data-value name="NODEMGR_PORT" value="5559" />
<data-value name="INSTALL_SHORTCUT_IN_ALL_USERS_FOLDER" value="yes"/>
<data-valuemso-spacerun:yes">       "value="D:\jrockit_160_05|D:\jdk160_11"/>

NOTE: Make sure there are no empty spaces with in the COMPONENT_PATHS values.

2. Open a command prompt and start the installation by executing the below command.

wls1031_win32.exe -mode=silent -silent_xml=<path_to_silent.xml>

NOTE: Optionally you can specify an installation log file so that you can keep a track of any issues that occur during installation of the WebLogic server as below.

wls1031_win32.exe -mode=silent -silent_xml=<path_to_silent.xml> -log=g:\silent-install.log

It opens up a new windows showing the installation progress.

3. Check the install progress window and a successful install would display message like below.

In the verbose install log, a successful install would read like below.

[WizardController] com.bea.plateng.wizard.silent.tasks.LogTask – The installation was successfull!

Note: A typical install in the windows would look like.
Note: If you are using a generic jar installer then you need to set the PATH before you run the installer.

java -jar file_name.jar -mode=silent -silent_xml=path_to_silent.xml

file_name.jar is the name of the installation file
path_to_silent.xml is the full path to the silent.xml file.

There are other ways of silent installation of the weblogic server according to your situation, refer the below links to have more insight into them.

Common errors during installation:


An external Eclipse Home must be specified when using the generic installer.


You can specify the Eclipse External Home by using the below argument in the silent.xml




The directory “/tmp” does not have enough space for extraction.


Silent-mode installation requires the same amount of temporary disk space and uses the same temporary storage directories as a standard installation. If you re running out of temporary space, you can change the default temporary directory by using the below parameter.

Specify the below java handler.

Wonders Team. 🙂