weblogic interview questions

40
By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 1 Weblogic Interview Questions Can we start managed server when the admin server is down You can start a Managed Server even if the Administration Server is not running. In this case, the Managed Server uses a local copy of its configuration files for its starting configuration and then periodically attempts to connect with the Administration Server. When it does connect, it synchronizes its configuration state with that of the Administration Server. if admin server is down and if we changed any setting in managed server, will admin get all those setting after getting up? When Admin is down, any changes done on the MS Side will not get reflected to the admin. The changes will be reflected only when the Cluster or the MS are recycled. How can a thread dump be taken Thread dump can be taken in no of ways: a. Thru the cmd java weblogic.Admin. Syntax: java weblogic.Admin -url t3://AdminHostName:7001 -username weblogic -password weblogic THREAD_DUMP b. You can even collect THREAD_DUMPS using JMX code using “JVMRuntimeMBean” c. Taking ThreadDump Using T3ServicesDef d. Collecting Thread Dumps Using Jstack utility e. Simplest option to take Thread Dump is : Login to AdminConsole >Server > Monitoring > Threads f. Using WLST: java weblogic.WLST connect('[un]', '[pwd]', '[url]') threadDump() g. Using kill -3 Is it possible to manage multiple domains through a single weblogic admin console No , This is not possible. We need to have a one Admin server running for a Single Domain How would you check the weblogic instance whether the it is started or not? weblogic.Admin class WebLogic Scripting Tool (WLST) Or we can grep for the java process What are the available logs Created in Weblogic Server.log Domain.log

Upload: naveenmartha

Post on 09-Dec-2015

33 views

Category:

Documents


5 download

DESCRIPTION

jhkjhkj

TRANSCRIPT

Page 1: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 1

Weblogic Interview Questions

Can we start managed server when the admin server is down

You can start a Managed Server even if the Administration Server is not running. In this

case, the Managed Server uses a local copy of its configuration files for its starting

configuration and then periodically attempts to connect with the Administration Server.

When it does connect, it synchronizes its configuration state with that of the Administration

Server.

if admin server is down and if we changed any setting in managed server, will

admin get all those setting after getting up?

When Admin is down, any changes done on the MS Side will not get reflected to the admin.

The changes will be ref lected only when the Cluster or the MS are recycled.

How can a thread dump be taken

Thread dump can be taken in no of ways:

a. Thru the cmd java weblogic.Admin. Syntax: java weblogic.Admin -url

t3://AdminHostName:7001 -username weblogic -password weblogic THREAD_DUMP

b. You can even collect THREAD_DUMPS using JMX code using “JVMRuntimeMBean”

c. Taking ThreadDump Using T3ServicesDef

d. Collecting Thread Dumps Using Jstack utility

e. Simplest option to take Thread Dump is :

Login to AdminConsole—>Server —> Monitoring —> Threads

f. Using WLST:

java weblogic.WLST

connect('[un]', '[pwd]', '[url]')

threadDump()

g. Using kill -3

Is it possible to manage multiple domains through a single weblogic admin

console

No , This is not possible. We need to have a one Admin server running for a Single Domain

How would you check the weblogic instance whether the it is started or not?

weblogic.Admin class

WebLogic Scripting Tool (WLST)

Or

we can grep for the java process

What are the available logs Created in Weblogic

Server.log

Domain.log

Page 2: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 2

Access.log

Garbage.log

DefaultAuditRecorder.log - The WebLogic Auditing provider records information from a

number of security requests, which are determined internally by the WebLogic Security

Framework. The WebLogic Auditing provider also records the event data associated with

these security requests, and the outcome of the requests.

What is TTL in Weblogic

The Multicast TTL(TTL-Time to Live) setting specifies the number of routers a multicast

message can pass through before the packet can be discarded. To configure the multicast

TTL for a cluster, you should change the Multicast TTL value in the WebLogic Server

administration console. This sets the number of network hops a multicast message makes

before the packet can be discarded.

What is the silent mode installation file contains root element? When do you

require this mode of installation?

The root element in silent.xml is <install>This kind of mode usually required in different

situations like When one huge project is migrated from one physical location to other,

Where the Application specialist must have the similar environment as the Production

Server had. To prepare Development work with similar kind environment we shall install on

First system same as Production Server rest of the developers systems could be installed

with silent mode.

How do you troubleshoot if config.xml file will be deleted

First we look for is there any last good backup of configuration is available on the Admin

machine. If it is not found then alternatively you can find it on remote machines where the

managed servers running.

Best practice is whenever there is a configuration changes made before and after you need

to take a backup. That will help you such situation where you might need old configuration

sometime.

What are the difference between Connection pool and data source?

Connection Pool is physically connects to the Database. where as Data Source is a logical

resource that can be used by developer or any other resource for accessing Connection of

pools. DataSource can be associated with JNDI name that is used for lookup from any other

client.

What happens if we delete the log files when the server is running & when the

server is not running?

The log file gets deleted when we try to delete it when the server is running . once deleted

the logging will not be done . Once the server is restarted the logging will be started again.

Can we change the name of the log files?

Page 3: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 3

We can change the name of the log file in the log4j configuration done for the applications

and for server

What is HTTP tunneling? How can we configure it on Weblogic?

HTTP tunneling provides a way to simulate a stateful socket connection between WebLogic

Server and a Java client when your only option is to use the HTTP protocol. It is generally

used to tunnel through an HTTP port in a security firewall. HTTP is a stateless protocol, but

WebLogic Server provides tunneling functionality to make the connection appear to be a

regular T3Connection.

Steps to configure Http tunneling.

Login into the Admin Console, click on the server on which you want to enable he Http

Tunneling feature

Click on the Protocols tab ? General ? check the “Enable Tunneling” check box.

Now you can communicate with the JVMs (Server Instances) using protocols other than t3

What is MSI mode?

MSI mode, if enabled, helps in starting the managed server without starting the Admin

server. With this option enabled, managed server looks for the msi-config.xml and creates

an Mbean out of it

What are the different staging modes?

Stage: The Administration Server first copies the deployment unit source files to the

staging directories of target servers. (The staging directory is named stage by default, and

it resides under the target server’s root directory.)

The target servers then deploy using their local copy of the deployment files.

NoStage: The Administration Server does not copy deployment unit files. Instead, all

servers deploy using the same physical copy of the deployment files, which must be directly

accessible by the Administration Server and target servers.

External_Stage: External_stage mode is similar to stage mode, in that target servers

deploy using local copies of the deployment files. However, the Administration Server does

not automatically copy the deployment files to targeted servers in external_stage mode;

instead, you must copy the files to the staging directory of each target server before

deployment. You can perform the copy manually or use automated scripts.

How many types of weblogic installation ?

There are 3 types of weblogic installation.

(a) Grapical Mode (interactive GUI based)

(b) Console Mode (interactive Text Based)

(c) Silent Mode ( Non Interactive method using .xml properties file (-mode =console -

silent_xml =properties_xml_file).

Can I configure a Shared resource for multiple domains?

Page 4: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 4

You cannot share a configured resource or subsystem between domains. For example, if you

create a JDBC connection pool in one domain, you cannot use it with a Managed Server or

cluster in another domain. (Instead, you must create a similar connection pool in the second

domain.)

How does the starting of server in weblogic works. What is the Sequence

There is a startup script startWeblogic.sh under ${DOMAINHOME}. This script calls another

startWebLogic.sh under ${DOMAINHOME}/bin. Under ${DOMAINHOME}/bin, there are also

other configuration scripts setDomainEnv.sh, startManagedWebLogic.sh, etc. Commonly we

will call startWebLogic.sh in DOMAINHOME to start the WLS admin server. Startup then

proceeds with these steps:

1) The DOMAINHOME environment variable is set.

2) The script calls ${DOMAINHOME}/bin/startWebLogic.sh.

3) ${DOMAINHOME}/bin/startWebLogic.sh calls ${DOMAINHOME}/bin/setDomainEnv.sh.

4) setDomainEnv.sh calls ${WL_HOME}/common/bin/commEnv.sh. commEnv.sh sets a

series of common environment variables, none of which are directly related to the particular

domain: for example, WL_HOME, JVM memory options, other JVM parameters, and system

properties. These variables are set for use by any WebLogic Server domains, as well as

system utilities like Node Manager, etc. A particular domain can (and usually does) override

these settings, so setting them here may not actually change the settings for your particular

domain. It probably will impact the settings for Node Manager, however.

5) After commEnv.sh is executed, setDomainEnv.sh will set other memory parameters and

variables. In fact, the settings from commEnv.sh are overridden here.

6) After setDomainEnv.sh completes, the system returns to

${DOMAINHOME}/bin/startWebLogic.sh, organizes the parameters, and calls java to start

up the JVM and start WebLogic Server.

If we want to change the default memory parameters, the best location is in

startWebLogic.sh or setDomainEnv. For example, in setDomainEnv.sh, modify the

WLS_MEM_ARGS_32BIT from "-Xms512m -Xmx512m" to "-Xms1024m -Xmx1024m".

By the way, if we want to add some additional options, such as "-verbose:class", to the

JVM, we could execute the following command before WebLogic start:

set JAVA_OPTIONS=" -verbose:class "

Furthermore, startManagedWebLogic.sh is also usually used. Since WLS 10.3, it has

changed to be implemented by calling startWebLogic.sh. There are some options used for

connecting to AdminServer which could be setted in the script, such as WLS_USER and

WLS_PW, which apear in this script only, although you could insert script manually.

Does WebLogic Server dynamically use additional CPUs added to a managed

server on the fly?

Page 5: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 5

This comes down to an operating system (OS) issue: if the OS is able to dynamically use

additional CPUs added to a server, then the JVM on that server will also be able to use

them, and if the JVM on the server is able to use them, processes running in that JVM like

WebLogic Server will also be able to use them. If the OS requires a restart (for example) to

use new CPUs, then that same restriction will apply to any processes running on that OS.

Explain WebLogic server.

This is a kind of server that supports various services as well as infrastructure that are

related with JEE applications. WebLogic server is capable of deploying components as well

as applications through WSDL, UDDI and SOAP. This server gets configured as a web server

by making use of HTTP listener for supporting the HTTP. Web servers like that of Apache,

Netscape and Microsoft are utilized. The configuration of a web server allows WebLogic is

capable of providing services to dynamic and static requests that are usually generated by

servlets, HTML and JSP.

What are the capabilities of WebLogic server?

There are various capabilities associated with WebLogic server and they are

Changes in dynamic configuration.

Production application redeployment

Rolling upgrades.

Explain the use of HTTP ?

HTTP is the protocol that is made used for the purpose of enabling communication between

the WebLogic server and processes.

Explain the functionality of IIOP ?

IIOP is a kind of protocol helpful in enabling the communication between WebLogic server

and object request broker.

Explain the term clustering?

Clustering is the process of grouping the servers together for accomplishing high percentage

of scalability and availability.

What is the purpose of clustering?

The major goal of performing the process of clustering is to make high scalability as well as

availability of the servers possible. This process also helps in balancing the load in a proper

manner and also accomplishes failover.

How can cluster communication occur?

The communication through cluster is made possible by the multicast IP as well as port by

the process of sending periodic messages which are normally called as heartbeat messages.

Difference between horizontal and vertical cluster?

Page 6: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 6

Horizontal clustering involves running multiple Java application servers that are run on two

or more separate physical machines.

Vertical clustering, however, consists of multiple Java application servers on a single

physical machine.

What is a Node Manager?

Node manager is a utility or process running on a physical server that enables starting,

stopping, suspending or restarting admin and managed server remotely. It is not associated

with a domain, though can start any server that reside on same physical server. it is

required if we use Admin console to start servers.

There is two types of NM,

1. java-based

2. Script based.

Can a WebLogic Server (WLS) admin server running on a 32-bit JDK be configured

with a managed server running on a 64-bit JDK?

This is not a supported Oracle WebLogic Server configuration. This configuration will cause

failures of cluster communication between the 32- and 64-bit JVMs.

Oracle WebLogic Server supports only homogeneous domain configurations. It is

recommended to have all WLS instances (admin and managed servers) to be on the same

JDK level and also the same WLS product version.

How can we define in weblogic configuration how many concurrent users are

allowed or can be allowed at a time to a particular application?

If to each user you assign a session, then you can control the max number of sessions in

your webapp weblogic descriptor, for example adding the following constraint :

<session-descriptor> <max-in-memory-sessions>12</max-in-memory-sessions>

</session-descriptor>

It's more effective (if you mean 1 user = 1session) than limit ing the number of requests by

work managers.

Another way, when you can't predict the size of sessions and the number of users, is to

adjust memory overloading parameters and set :

weblogic.management.configuration.WebAppContainerMBean.OverloadProtectionEnabled.

Another way is to define a work manager which will set the limit on number of threads that

can access the application which will generally set the limit on number of users.

how can we tell how may threads are being used in a weblogic at a time?

Page 7: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 7

Capacity of threads is managed by WebLogic through work managers. By default, just one

exists : default with unllimited number of threads (!!!). If we need to exactly find the

number of threads being processed by an application ,check the servers/monitoring/Threads

tab.

What is weblogic Singleton service

A singleton service is a service running on a managed server that is available on only one

member of a cluster at a time

What is the difference between -Dweblogic and setting values in weblogic console.

When you use -Dweblogic.XXX option you can ovverride console configuration

How to disable admin port in weblogic without weblogic console?

edit the config.xml in Domain/Config location

find this node and change the value to 'false'

<administration-port-enabled>true</administration-port-enabled>

What Is a WebLogic Server Cluster?

A WebLogic Server cluster consists of multiple WebLogic Server server instances running

simultaneously and working together to provide increased scalability and reliability.

What Are Dynamic Clusters?

Dynamic clusters consist of server instances that can be dynamically scaled up to meet the

resource needs of your application. A dynamic cluster uses a single server template to

define configuration for a specified number of generated (dynamic) server instances.

What Are the Benefits of Clustering?

Scalability

The capacity of an application deployed on a WebLogic Server cluster can be increased

dynamically to meet demand. You can add server instances to a cluster without interruption

of service—the application continues to run without impact to clients and end users.

High-Availability

In a WebLogic Server cluster, application processing can continue when a server instance

fails. You "cluster" application components by deploying them on multiple server instances

in the cluster—so, if a server instance on which a component is running fails, another server

instance on which that component is deployed can continue application processing.

What is a Domain

A domain is an interrelated set of WebLogic Server resources that are managed as a unit. A

domain includes one or more WebLogic Server instances, which can be clustered, non-

clustered, or a combination of clustered and non-clustered instances. A domain can include

multiple clusters. A domain also contains the application components deployed in the

domain, and the resources and services required by those application components and the

server instances in the domain

Page 8: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 8

What happens when we share the multi-cast address with other applications

Sharing the cluster multicast address with other applications forces clustered server

instances to process unnecessary messages, introducing overhead. Sharing a multicast

address may also overload the IP multicast buffer and delay transmission of WebLogic

Server heartbeat messages. Such delays can result in a WebLogic Server instance being

marked as failed, simply because its heartbeat messages were not received in a timely

manner.

What is multicast storm

If server instances in a cluster do not process incoming messages on a timely basis,

increased network traffic, including negative acknowledgement (NAK) messages and

heartbeat re-transmissions, can result. The repeated transmission of multicast packets on a

network is referred to as a multicast storm

How to Find the Weblogic bit version?

Weblogic is coming as a GENERIC distribution. It is a Java program running on top of a VM

so there is no need for Weblogic-64bit or Weblogic-32bit versions.

On the other hand, the JVM running Weblogic must be either 32bit or 64bit depending on

the architecture.

Why we need Weblogic Inactive Connection Timeout

A leaked connection is a connection that was not properly returned to the connection pool in

the data source. To automatically recover leaked connections, you can specify a value for

Inactive Connection Timeout on the JDBC Data Source. ( Configuration: Connection Pool

page in the Administration Console.) When you set a value for Inactive Connection Timeout,

WebLogic Server forcibly returns a connection to the data source when there is no activity

on a reserved connection for the number of seconds that you specify. When set to 0 (the

default value), this feature is turned off.

How do I integrate JNI ( Native code ) code into weblogic?'

The LD_LIBRARY_PATH environment variable should be set in the setWLSEnv.sh or the

startWLS.sh scripts

I want to set Prodcution Mode to true in Admin Domain , would this also run all

the managed servers in Production Mode ?

All servers in the domain run in production or development mode, it is a domain wide

setting. Managed servers refer to the admin server to determine their run mode. And yes

you will need to restart all servers in your domain for this to take affect.

What is Weblogic Thread Local Safety

WebLogic does not reset user set ThreadLocal variab les when the thread is returned back to

the pool - the user is responsible for managing them. When such threads are reused, its

Page 9: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 9

likely they will interfere. You may run into memory leaks since the thread local reference

isn't cleaned up. You can safely reset your thread locals prior to returning the thread back

to the container. The ThreadLocal.remove() call should clean it up (ensure that its done in a

finally block)

What is config.xml

The config.xml file is an XML document that describes the configuration of a WebLogic

Server domain. config.xml consists of a series of XML elements. The Domain element is the

top-level element, and all elements in the Domain descend from the Domain element. The

Domain element includes child elements, such as the Server, Cluster, and Application

elements. These child elements may have children of their own. For example, the Server

element includes the child elements WebServer, SSL and Log.

How does backup of the config.xml works

Each time the Administration Server starts successfully, a backup configuration f ile named

config.xml.booted is created in the domain directory. In the unlikely event that the

config.xml f ile should be corrupted during the lifetime of the server instance, it is possible to

revert to this previous configuration.

What happens if the admin server fails

The failure of an Administration Server for a domain does not affect the operation of

Managed Servers in the domain. If an Administration Server for a domain becomes

unavailable while the server instances it manages—clustered or otherwise—are up and

running, those Managed Servers continue to run. If the domain contains clustered server

instances, the load balancing and failover capabilities supported by the domain configuration

remain available, even if the Administration Server fails.

How does Dynamic configuration in Weblogic works

WebLogic Server allows you to change the configuration attributes of domain resources

dynamically—while server instances are running. In most cases you do not need to restart

the server instance for your changes to take effect. When an attribute is reconfigured, the

new value is immediately reflected in both the current run-time value of the attribute and

the persistent value stored in config.xml.

What is admin Role in weblogic deployment

The Administration Server for the domain manages the deployment process, communicating

with the Managed Servers in the cluster throughout the process. Each Managed Server

downloads components to be deployed, and initiates local deployment tasks. The

deployment state is maintained in the relevant MBeans for the component being deployed.

What is the deployment process in weblogic

in WebLogic Server, applications are deployed in two phases. Before starting, WebLogic

Server determines the availability of the Managed Servers in the cluster.

Page 10: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 10

First Phase of Deployment - During the first phase of deployment, application components

are distributed to the target server instances, and the planned deployment is validated to

ensure that the application components can be successfully deployed. During this phase,

user requests to the application being deployed are not allowed.

Failures encountered during the distribution and validation process will result in the

deployment being aborted on all server instances—including those upon which the validation

succeeded. Files that have been staged will not be removed; however, container-side

changes performed during the preparation will be reverted.

Second Phase of Deployment - After the application components have been distributed to

targets and validated, they are fully deployed on the target server instances, and the

deployed application is made available to clients.

When a failure is encountered during the second phase of deployment, the server starts

with one of the following behaviors:

If a failure occurs while deploying to the target server instances, the server instance will

start in ADMIN state. See "ADMIN State" in Managing Server Startup and Shutdown for

Oracle WebLogic Server.

If cluster member fails to deploy an application, the application that failed to deploy is made

unavailable.

How does the deployment to a cluster work if one of the member is down

Weblogic Deployment are not allowed to a cluster if one of the member is not available. This

used to be in the case of previous versions but in the new vesions a relexed deployment is

happening which will allow the deployment to hold until the server that is not reachable is

available. Once this is available the deployment will go on

What are the options available for configuring Cluster in weblogic

Clusters in weblogic can be configured by using

Configuration Wizard

WebLogic Server Administration Console

WebLogic Server Application Programming Interface (API)

WebLogic Scripting Tool (WLST)

Java Management Extensions (JMX)

How do you differentiate between a server hang and server crash issue?

When a Server crashes, the JAVA process no longer exists. When the Server is hung, it

stops responding. We can use the weblogic.ADMIN utilty to ping the server. In case of a

hang situation we can take multiple thread dumps and analyze the cause of hang.

What is memory leak?

Page 11: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 11

Memory leak is when objects are not removed from the heap even when they are not

required

what is the difference between .jar .war and .ear files?

.jar: java archive files intended to hold generic libraries of java classes

,Resources,Auxillary files etc. Used in J2ee for packaging EJB’s & client side java

applications.

.war : web archive files intended to contain complete web applications. Specially for web

applications made from servlets , jsp’s supporting classes.

.ear : Enterprise archive files intended to contain complete enterprise applications. Contains

all of the components that make up a particular J2EE application.

What are deployment descriptors?

It is a configuration file for web application or EJB application which is to be deployed to

web or EJB container. Deployment descriptors describes the deployment settings of an

application or module or component.

It contains meta data describing the contents and structure of the enterprise beans, and

runtime transaction and security information for EJB container.

It directs a deployment tool to deploy a module or application with specific container options

and describes specific configuration requirements that a deployer must resolve.

What is a shutdownhook?

A shutdown hook is simply an initialized but unstarted thread. When the virtual machine

begins its shutdown sequence it will start all registered shutdown hooks in some unspecified

order and let them run concurrently. When all the hooks have finished it will then run all

uninvoked finalizers if finalization-on-exit has been enabled. Finally, the virtual machine will

halt.

What is maxexecutethread?

Execute thread count, at the heart of WebLogic Server, is a pool of java threads (execute

threads), which do all the work allowing for the parallel execution of tasks. By default this

pool has 15 threads, but can be changed for performance tuning by setting the

weblogic.system.executeThreadCount in weblogic.properties.

Can a WebLogic Server (WLS) admin server running on a 32-bit JDK be configured

with a managed server running on a 64-bit JDK?

This is not a supported Oracle WebLogic Server configuration. This configuration will cause

failures of cluster communication between the 32- and 64-bit JVMs.Oracle WebLogic Server

supports only homogeneous domain configurations. It is recommended to have all WLS

instances (admin and managed servers) to be on the same JDK level and also the same

WLS product version.

How do we take a managed server from domain A and reassign it to domain B?

Page 12: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 12

There isn't an automated way to do it.We need to delete the server from the admin console

of domain A and enter the details of the server into the admin console of do main B. This

requires not only the configuration details of the server (its listen address, port, etc.), but

also the details of any JMS servers targeted to that server, any applications deployed to it,

and anything else connected to that server. So moving a server from one domain to another

is necessarily specific to each particular environment.

What is the difference between green threads and native threads?

Green threads are the default threads provided by the JDK. Native threads are the threads

that are provided by the native OS:

Native threads can provide several advantages over the default green threads

implementation, depending on your computing situation.

How can I increase the number of Posix reader threads?

Modifying the weblogic.system.percentSocketReader is not having any effect on the number

of Posix reader threads.

In the command line which starts WebLogic for Unix: -Dweblogic.PosixSocketReaders

In the command line which starts WebLogic for Windows: -Dweblogic.NTSocketReaders

NOTE: PosixSocketReaders relates to the number of Posix reader threads.

What is a File Descriptor?

A file descriptor is a handle represented by an unsigned integer used by a process to

identify an open f ile. It is associated with a file object that includes informat ion such as the

mode in which the file was opened, its position type, its initial type, and so on. This

information is called the context of the file.

What are the available deployment tools in weblogic

WLS has several modes to deploy an application:

from the administration console

WLST

weblogic.Deployer tool

wldeploy ant task

weblogic.management.deploy API

by copying the module under applications directory if running in development mode.

What is a deployment unit

A deployment unit refers to a J2EE application (an Enterprise Application or Web

Application) or a standalone J2EE module (an EJB or Resource Adapter) that has been

organized according to the J2EE specification and can be deployed to WebLogic Server.

WebLogic Server also supports deploying Web Services modules, which are not part of the

J2EE specification.

Page 13: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 13

What are enterprise modules in weblogic

An Enterprise Application consists of one or more of the following J2EE applications or

modules:

Web Applications

Enterprise Java Beans (EJB) modules

Resource Adapter modules

Application libraries

Deployment units that are packaged using the jar utility have a specific file extension

depending on the type:

EJBs are packaged as.jarf iles.

Web Applications are packaged as.warf iles.

Resource Adapters are packaged as.rarf iles.

Enterprise Applications are packaged as.earf iles.

Web Services can be packaged either as.earfiles or as.warfiles.

Most of the deployment units could be deployed either as archive file or in exploded format

except the Resource Adapter modules which cannot be deployed in exploded format.

Find out the applied patches done in Weblogic

To list the applied patch:

cd $BEA_HOME/utils/bsu

./bsu.sh -view -status=applied -prod_dir=$BEA_HOME/wlserver_10.3 >

wls_patch_report.txt

When running under Linux, there appears to be multiple JVMs running at once.

This appears to be using excessive amounts of memory and CPU time.

This problem is not really a problem -- it is a by-product of the way Linux handles threads.

Any time a system-level thread is created, that thread is assigned another process ID under

Linux. All of the threads share the same address space, and therefore, are not using any

additional memory resources beyond the small overhead of another entry in the process

table. This allows Linux to schedule threads the same way it would schedule multiple

processes, and allows the program (the JVM in this case) to take advantage of multiple

processors if available.

What are the advantages of taking core dump in linux

jmap blocks when creating the heap dump, and with large heaps, this can take a very long

time. In these cases it is often much faster to get a core and then run jmap to extract a

heap dump from the core. It is typically best to create the heap dump on the same box

where the core was created to avoid environment differences.

What is machine

Machine definitions that identify a particular, physical piece of hardware. A machine

definition is used to associate a computer with the Managed Servers it hosts.

What is a network channel in Weblogic

Page 14: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 14

Network channels that define default ports, protocols, and protocol settings that a Managed

Server uses to communicate with clients. After creating a network channel, you can assign

it to any number of Managed Servers and clusters in the domain

What is virtual Hosting

Virtual hosting, which defines a set of host names to which Oracle WebLogic Server

instances (servers) or clusters respond. When you use virtual hosting, you use DNS to

specify one or more host names that map to the IP address of a server or cluster. You also

specify which Web applications are served by each virtual host.

What are security providers

Security providers, which are modular components that handle specific aspects of security,

such as authentication and authorization.

What are Resource adapters

Resource adapters, which are system libraries specific to Enterprise Information Systems

(EIS) and provide connectivity to an EIS.

What are Persistent Store

Persistent store, which is a physical repository for storing data, such as persist ent JMS

messages. It can be either a JDBC-accessible database or a disk-based file

What are Startup classes

Startup Classes are Java programs that you create to provide custom, system-wide services

for your applications.

What are work Managers

Work Managers, which determine how an application prioritizes the execution of its work

based on rules you define and by monitoring actual run-time performance. You can create

Work Mangers for entire Oracle WebLogic Server domains or for specific application

components.

What happens when configuration file are deleted

We can configure Weblogic server to make back up copies of the configuration f iles. This

helps in recovery when configuration needs to be reversed or in case configuration files are

corrupted. When the admin server starts up, it saves a JAR file named config-booted.jar

that contains the configuration file, the old ones are saved in the configArchive directory

under the domain directory, in a jar named like config-1.jar.

How does Credentials are passed to Weblogic server

Credentials to the weblogic server can be passed in multiple ways as

1) pass the credentails on the command line

2) pass them to the weblogic server when it asks on the command prompt

3) Create a boot.properties file and store the user Credentials in an encrypted format

Page 15: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 15

4) For WLST scripts that contain commands requiring a user name and password, create a

user configuration f ile. This file, which you can create via the

WLST storeUserConfigcommand

5) For weblogic.Deployer scripts containing commands requiring a user name and

password, you can specify the user configuration file created via the

WLSTstoreUserConfig command instead of entering your unencrypted credentials.

How can we change the Context of the admin console

1. In the left pane of the Console, under Domain Structure, select the domain name.

2. Select Configuration > General, and click Advanced at the bottom of the page.

3. In Console Context Path, enter the context path that you want to use.

How can we change the admin console refresh rate

1. In the banner toolbar region at the top of the right pane of the Administration

Console, click Preferences.

2. On the User Preferences page, in the Refresh Interval box, enter the frequency in

seconds at which you want the Administration Console to poll t he resource for

monitoring data.

3. Click Save

What is the use of administration Port in a Server in weblogic

The administration port accepts only secure, SSL traffic, and all connections via the port

require authentication by a server administrator. Because of these features, enabling the

administration port imposes the following restrictions on your domain:

The Administration Server and all Managed Servers in your domain must be

configured with support for the SSL protocol.

All servers in the domain, including the Administration Server, enable or disable the

administration port at the same time.

How do we communicate with external components

jCOM -Enabling the jCOM protocol for a server instance is one of several steps needed for

bidirectional access between modules on a WebLogic Server instance and Microsoft ActiveX

components, Visual Basic and C++ objects, and other COM/DCOM environments.

What is a DBPing utility do

The dbping command-line utility tests the connection between a DBMS and your client

machine via a JDBC driver.

What do multiCast utlity does?

The MulticastTest utility helps you debug multicast problems when configuring a WebLogic

Cluster. The utility sends out multicast packets and returns information about how

effectively multicast is working on your network.

What does weblogic.deployer utility does

Page 16: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 16

weblogic.Deployer is a Java-based deployment tool that provides administrators and

developers command-line based deployment operations.

What are the types of deployment methods in Weblogic

weblogic.Deployer - provides a command-line based interface for performing both basic

and advanced deployment tasks. Use weblogic.Deployerwhen you want command-line

access to WebLogic Server deployment functionality, or when you need to perform a

deployment task that is not supported using the Administration Console.

Administration Console - The Administration Console provides a series of Web-based

deployment assistants that guide you through the deployment process. The Administration

Console also provides controls for changing and monitoring the deployment status, and

changing selected deployment descriptor values while the deployment unit is up and

running.

WLST - The WebLogic Scripting Tool (WLST) is a command-line interface that you can use

to automate domain configuration tasks, including application deployment configuration and

deployment

wldeploy is an Ant task version of the weblogic.Deployer utility. You can automate

deployment tasks by placing wldeploy commands in an Antbuild.xml file and running Ant

to execute the commands.

weblogic-maven-plugin is a Maven plug-in for WebLogic Server that you can use to

perform deployment operations similar to those supported by weblogic.Deployer. The

plug-in lets you deploy, redeploy, update, and such, applications built using Maven to

WebLogic Server from within the Maven environment.

weblogic.PlanGenerator is a command-line tools that enables developers to export an

application's configuration for deployment to multiple WebLogic Server environments.

The deployment API allows you to perform deployment tasks programmatically using Java

classes.

The autodeploy domain directory allows you to deploy an application quickly for evaluation

or testing in a development environment.

What is an administration Mode in Production deployment?

Distributing an application copies deployment files to target servers and places the

application in a prepared state. You can then start the application in administration mode,

which restricts access to the application to a configured administration channel so you can

perform final testing without opening the application to external client connections or

disrupting connected clients. You can start an application in administration mode with the -

adminmode option

Page 17: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 17

What are the available roles in weblogic

The built-in security roles for "Admin" and "Deployer" users allow you to perform

deployment tasks using the WebLogic Server Administration Console.

The "AppTester" security role allows you to test versions of applications that are deployed to

administration mode. When deploying across WebLogic domains,

the "CrossDomainConnector" role allows you to make inter-domain calls from foreign

domains.

Admin , View the server configuration, including the encrypted value of some encrypted

attributes. Modify the entire server configuration Deploy Enterprise Applications and Web

application, EJB, Java EE Connector, and Web Service modules and Start, resume, and stop

servers.

Operator , View the server configuration, except for encrypted attributes and can Start,

resume, and stop servers.

Monitor ,View the server configuration, except for encrypted attributes .This security role

effectively provides read-only access to the WebLogic Server Administration Console, WLST,

and MBean APIs.

What is a Client application archive

The Java EE specification enables you to include a client application archive file within an

enterprise application. A Java EE client application module contains the Java classes that

execute in the client JVM (Java Virtual Machine) and deployment descriptors that describe

EJBs (Enterprise JavaBeans) and other WebLogic Server resources used by the client. This

enables both the server-side and client-side components to be distributed as a single unit.

You define client modules in an EAR using the Java EE standard application-

client.xml deployment descriptor and WebLogic Serverweblogic-

appclient.xml descriptor.

What is a persistent store

The persistent store provides a built-in, high-performance storage solution for WebLogic

Server subsystems and services that require persistence. For example, it can store

persistent JMS messages or temporarily store messages sent using the Store-and-Forward

feature. The persistent store supports persistence to a file-based store or to a JDBC-

accessible store in a database.

What is a template in domain template

In the context of the Domain Template Builder, the term template refers to a Java Archive

(JAR) file. A template JAR contains the files and scripts that are needed to create or extend

a WebLogic domain.

What is a domain template?

Domain Template defines the full set of resources within a WebLogic domain, including

infrastructure components, applications, services, security options, and general environment

and operating system options. You can create this type of template from an existing domain

Page 18: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 18

by using the Domain Template Builder or the pack command. You can then create a domain

based on the template.

what is an Extension template?

AN extension template defines applications and services that can provide additional features

such as applications , JDBC resources , JMS components .This type of template is used for

update an existing Weblogic domain.

What is Managed server template

This defines a subset of resources ( with in a domain ) that are requires to create a

managed server domain on a remote machine. This is created using the Pack command.

What is the use of Pack Command

This command enables you to create a template archive (JAR file) that contains a snapshot

of either an entire WebLogic domain or a subset of a WebLogic domain. You can use a

template that contains a subset of a domain to create a Managed Server domain directory

hierarchy on a remote machine.

What is WLST ( Weblogic Scripting Tool )

WLST is a command-line scripting interface, which you can use to interact with and

configure WebLogic Server instances and domains. When WLST is offline, you can create a

WebLogic domain or update an existing WebLogic domain without connecting to a running

WebLogic Server—supporting the same functionality as the Configuration Wizard.

Does weblogic server works as a Web Server

In addition to hosting dynamic Java-based distributed applications, WebLogic Server

functions as a Web server that handles high-volume Web sites, serving static files such as

HTML files and image files, as well as servlets and JavaServer Pages (JSP). WebLogic Server

supports the HTTP 1.1 standard.

What is Denial-of-Service attack

A Denial-of-Service attack is a malicious attempt to overload a server with phony requests.

One common type of attack is to send huge amounts of data in an HTTP POST method. You

can set three attributes in Web Logic Server that help prevent this type of attack. These

attributes are set in the Console, under Servers or Virtual Hosts

Can an application be deployed without any deployment descriptors?

Yes an application can be deployed to J2ee complaint server with out any deployment

descriptors by making use of the annotations or the container having reasonable defaults.

The exploded archive can also be deployed with out any deployment descriptors

What is a fast swap deployment

Page 19: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 19

fast swap deployment allows to deploy changes to the existing applications in a fast

manner. Java EE 5 introduced the ability to redefine a class at run time without dropping its

classloader or abandoning existing instances. This allowed containers to reload altered

classes without disturbing running applications, vastly speeding up iterative development

cycles and improving the overall development and testing experiences.

Two managed MS1, MS2 servers is there in a cluster. how can you say that load is

there on only one server?

Access logs gives you the information which server is being accessed. We can also see the

apache logs in order to find out which server has been accessed.

If two managed servers is there Same Domain is configured in both servers, but

one server is crashed then how can you create a domain with the same

configuration?

The domain configuration template creates a template with all the details that are

configured in the domain. The same template is used to re-configure things in other

machine , the template will be created even if one of the node is down. Once the template is

taken the same configuration will be created in the other machine with the node as down.

Application is running and server is also running but the end user requests are not

processed then how can you trouble shoot the problem?

First thing we need to check is to make sure the application is correctly deployed.

Make sure that there are no issues with any components in the application deployed coz a

Data source failure in the application can cause application not to be accessed.

Check the server logs make sure there are no errors in there

Check the access logs file , make sure the requests are coming to the server and also check

the response code ( make sure they are 200 response )

Check the GC logs ,make sure that there is no full GC running continuously. Full GC running

continuously can cause the JVM to pause leading the application not to be accessed.

How to find out which version of the operating system in stall in Server?

We can use "uname -a" command to see the details of the operation system and also we

can get details from /etc/release file to get details of the server

What is a Smart Update in weblogic

Smart Update is a stand-alone java application that is used to upgrade the software

installations quickly and easily with maintenance patches and maintenance packs. This is

used in the previous version of weblogic

What is OPatch

OPatch is a Java-based utility that runs on all supported operating systems and requires

installation of the Oracle Universal Installer. It is used to apply patches to Oracle software.

This is used to patch not just weblogic but the whole Oracle fusion.

Page 20: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 20

OPatch offers many of the same features as Smart Update, but it has a different set of

commands and command options.

What is a weblogic version compatibility

The version compatibility says that all weblogic servers in a domain must be the same

versions of Weblogic version runnings. This means that in WebLogic Server 12.1.3, the

Administration Server, Managed Servers, and the WebLogic domain must all be at version

12.1.3.

Can weblogic cluster be configured in a mixed platform

Yes , weblogic cluster can be configured in a mixed platform systems but it can cause

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.

Can a node manager run with a different version of weblogic version

Oracle recommends that the version of Node Manager used in a WebLogic domain should

match the version of the Administration Server.

What is a WebLogic Diagnostics Framework

The WebLogic Diagnostics Framework (WLDF) is a monitoring and diagnostic framework

that defines and implements a set of services that run within WebLogic Server processes

and participate in the standard server life cycle. Using WLDF, you can create, collect,

analyze, archive, and access diagnostic data generated by a running server and the

applications deployed within its containers. This data provides insight into the run-time

performance of servers and applications and enables you to isolate and diagnose faults

when they occur.

What is a Harvester in WLDF

Harvester is used to Captures metrics from run-time MBeans, including WebLogic Server

MBeans and custom MBeans, which can be archived and later accessed for viewing historical

data

What are Watches and Notifications in WLDF

These Provides the means for monitoring server and application states and sending

notifications based on criteria set in the watches.

What are the types of data sources provided in weblogic

There are 3 types of data sources provided in weblogic . they are

Generic Data Sources—Generic data sources and their connection pools provide

connection management processes that help keep your system running

efficiently.You can set options in the data source to suit your applications and your

environment.

Page 21: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 21

GridLink Data Sources—An event-based data source that adaptively responds to

state changes in an Oracle RAC instance.

Multi data sources—An abstraction around a group of generic data sources that

provides load balancing or failover processing.

Does multi-datasource have multi-pool in that

No, Members of a multi data source must be generic data sources; they cannot be multi

data sources

Can JDBC datasource be shared across clusters or to other developers?

Yes , a JDBC module when deployed as a packaged modules using weblogic.deployer or

admin console can be shared across multiple cluster. JDBC resources deployed in this

manner are called stand-alone modules and can be reconfigured using the WebLogic Server

Administration Console or a JSR-88 compliant tool, but are unavailable through JMX or

WLST.

What are the limitations of a multi-data source

A multi data source can only use generic data sources that are deployed on the same cluster

member (in the same JVM).

What is a Derby database in weblogic

Derby is an all-Java DBMS product included in the WebLogic Server distribution that is

intended solely to support demonstration of WebLogic Server examples

How do stubs work in a WebLogic Server cluster?

Clients that connect to a WebLogic Server cluster and look up a clustered object obtain a

replica-aware stub for the object. This stub contains the list of available server instances

that host implementations of the object. The stub also contains the load balancing logic for

distributing the load among its host servers.

What happens when a failure occurs and the stub cannot connect to a WebLogic

Server instance?

When the failure occurs, the stub removes the failed server instance from its list. If there

are no servers left in its list, the stubb uses DNS again to find a running server and obtain a

current list of running instances. Also, the stub periodically refreshes its list of available

server instances in the cluster; this allows the stub to take advantage of new servers as

they are added to the cluster.

How does a server know when another server is unavailable?

WebLogic Server uses two mechanisms to determine if a given server instance is

unavailable.

Each WebLogic Server instance in a cluster uses multicast to broadcast regular “heartbeat”

messages that advertise its availability. By monitoring heartbeat messages, server instances

in a cluster determine when a server instance has failed. The other server instances will

drop a server instance from the cluster, if they do not receive three consecutive heartbeats

from that server instance

Page 22: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 22

WebLogic Server also monitors socket errors to determine the availability of a server

instance. For example, if server instance A has an open socket to server instance B, and the

socket unexpectedly closes, server A assumes that server B is offl ine.

How are notifications made when a server is added to a cluster?

The WebLogic Server cluster broadcasts the availability of a new server instance each time

a new instance joins the cluster. Cluster-aware stubs also periodically update their list of

available server instances.

How do clients learn about new WebLogic Server instances?

Once a client has done a JNDI lookup and begins using an object reference, it finds out

about new server instances only after the cluster-aware stub has updated its list of available

servers.

What is weblogic.Deployer

weblogic.Deployer is a Java-based deployment tool that provides a command-line interface

to the WebLogic Server deployment API. weblogic.Deployer is intended for administrators

and developers who want to perform interactive, command-line based deployment

operations.

What is weblogic.Admin

The weblogic.Admin utility is a command-line interface that you can use to administer,

configure, and monitor WebLogic Server.

What is a weblogic.server

The weblogic.Server class is the main class for a WebLogic Server instance. You start a

server instance by invoking weblogic.Server in a Java command. You can invoke the class

directly in a command prompt (shell), indirectly through scripts, or through the Node

Manager.

What are the security Commands available in weblogic

java weblogic.security.utils.AdminAccount – For resetting Admin Account Password

java weblogic.security.Encrypt testpwd – Encrypting a password

How does servers in a Cluster Communicate

WebLogic Server instances in a cluster communicate with one another using two basic

network technologies:

IP multicast, which server instances use to broadcast availability of services and

heartbeats that indicate continued availability.

IP sockets, which are the conduits for peer-to-peer communication between

clustered server instances.

How does IP Socket Communication in Weblogic detect failures

WebLogic Server instances monitor the use of IP sockets between peer server instances as

an immediate method of detecting failures. If a server connects to one of its peers in a

cluster and begins transmitting data over a socket, an unexpected closure of that socket

causes the peer server to be marked as "failed," and its associated services are removed

from the JNDI naming tree.

Page 23: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 23

Where does IP sockets are used

IP sockets provide a simple, high-performance mechanism for transferring messages and

data between two applications. Clustered WebLogic Server instances use IP sockets for:

Accessing non-clustered objects deployed to another clustered server instance on a

different machine.

Replicating HTTP session states and stateful session EJB states between a primary

and secondary server instance.

Accessing clustered objects that reside on a remote server instance.

Note: The use of IP sockets in WebLogic Server extends beyond the cluster scenario—all

RMI communication takes place using sockets, for example, when a remote Java client

application accesses a remote object.

What are "pinned" services in Webloigc

"pinned" services are services that are active on only one server instance at a time.

How WebLogic Server Detects Failures

WebLogic Server instances in a cluster detect failures of their peer server instances by

monitoring:

Socket connections to a peer server

Regular server heartbeat messages

What does a Weblogic heart beat message contains

heartbeat message contains data that uniquely identifies the server that sends the

message. Servers broadcast their heartbeat messages at regular intervals of 10 seconds

How does the heart Beat Messages in weblogic detect Server Failures

All server instances in a cluster use multicast to broadcast regular server heartbeat

messages to other members of the cluster. Each heartbeat message contains data that

uniquely identifies the server that sends the message. Servers broadcast their heartbeat

messages at regular intervals of 10 seconds. In turn, each server in a cluster monitors the

multicast address to ensure that all peer servers' heartbeat messages are being sent

What is Cluster-wide JNDI tree

A cluster-wide JNDI tree is similar to a single server instance JNDI tree, insofar as the tree

contains a list of available services. In addition to storing the names of local services,

however, the cluster-wide JNDI tree stores the services offered by clustered objects (EJBs

and RMI classes) from other server instances in the cluster.

Each WebLogic Server instance in a cluster creates and maintains a local copy of the logical

cluster-wide JNDI tree

How the Session Replication does happens in Weblogic

Page 24: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 24

1) The proxy plug-in handles failover transparently to the client. If a server fails, the plug-

in locates the replicated HTTP session state on a secondary server and redirects the client's

request accordingly

What are the types of Session Replication in weblogic

Weblogic uses 2 types of Session replication methods, they are

in-memory replication - Using in-memory replication, WebLogic Server copies a session

state from one server instance to another. The primary server creates a primary session

state on the server to which the client first connects, and a secondary replica on another

WebLogic Server instance in the cluster. The replica is kept up-to-date so that it may be

used if the server that hosts the servlet fails.

JDBC-based persistence -In JDBC-based persistence, WebLogic Server maintains the HTTP

session state of a servlet or JSP using file-based or JDBC-based persistence

Can we create a replica-aware stub?

If you are using EJBs then just define the home-is-clusterable" or "stateless-bean-is-

clusterable" in (weblogic-ejb-jar.xml) clusterable to *TRUE* by default those values are

true..

Is it possible in Weblogic to create readonly JDBC datasource?

The datasource allows you to obtain pooled connection instances, each pooled connection

instance representing a physical connection to a database that remains open during use by

a series of logical connection instances.

So, what you are allowed to do with a pooled connection instance strictly depends on the

database permissions granted to the user used to create the physical connection. In other

words, if you want a read only pool, use a user with restricted rights at the database level

when creating your pool.

How WebLogic Server (10.3.2) initializes its Security Provider Database at

startup?

The security provider database should be initialized the first time security providers are

used. (That is, before the security realm containing the security providers is set as the

default (active) security realm.) This initialization can be done:

When a WebLogic Server instance boots.

When a call is made to one of the security provider's MBeans.

What is weblogic sever life cycle

There are 9 states of server:-

Shutdown

Starting

Standby

Resuming

Running

Suspending

Shutting down

Page 25: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 25

Failed

Unknown

The series of states through which a WebLogic Server instance can transition is called

the server life cycle.

What are Locks in weblogic

There are 4 types of lock available in weblogic

config.lok : This is used for the getting the file lock on the config.xml file.This lock ensures

that the config.xml f ile is being owned by only one process at a time.This also ensures that

the updates to config.xml file are done in a sequential order.

Location : cfgdir/config/config.xml

edit.lok : This was the most important lock that we see.This lock ensures that only one

user is editing the configurations at any point of time. No 2 operations are performed at a

same time

Location : cfgdir/

embeddedLDAP.lok:This file locks access to the embedded ldap server to ensure that only

one person has access to the directory server at any time.

Location /cfgdir/servers/<Server Name>/data/ldap/ldapfiles/

XXXServer.lok:This lock indicates that a given server is running.This ensures that the

server is not started or running multiple times.

Location : /cfgdir/servers/<Server Name>/servername.lok

When a webloigc server is stopped, the embeddedLDAP.lok and XXXservername.lok are

deleted automatically.

How can I set deployment order for applications?

WebLogic Server allows you to select the load order for applications. WebLogic Server

deploys server-level resources (first JDBC and then JMS) before deploying applications.

Applications are deployed in this order: connectors, then EJBs, then Web Applications. If the

application is an EAR, the individual components are loaded in the order in which they are

declared in the application.xml deployment descriptor.

Can I refresh static components of a deployed application without having to

redeploy the entire application?

Yes. You can use weblogic.Deployer to specify a component and target a server, using the

following syntax:

java weblogic.Deployer -adminurl http://admin:7001 -name appname -

targets server1,server2 -deploy jsps/*.jsp

Page 26: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 26

How do I turn the auto-deployment feature off?

The auto-deployment feature checks the applications folder every three seconds to

determine whether there are any new applications or any changes to existing applications

and then dynamically deploys these changes. The auto-deployment feature is enabled for

servers that run in development mode. To disable auto-deployment feature, use one of the

following methods to place servers in production mode:

* In the Administration Console, click the name of the domain in the left pane, then select

the Production Mode checkbox in the right pane.

* At the command line, include the following argument when starting the domain’s

Administration Server: -Dweblogic.ProductionModeEnabled=true

Production mode is set for all WebLogic Server instances in a given domain.

Can I enable requests to a JDBC connection pool for a database connection to wait

until a connection is available?

No, there's no way to allow a request to wait for a pool connection, and from the system

point of view there should not be. Each requests that waits for a connection ties up one of

the fixed number of execute threads in the server, which could otherwise be running

another server task. Too many waiting requests could tie up all of the execute threads and

freeze the server.

How many admin consoles possible in a single domain ?

only one.

What is boot.properties file ?

boot.properties is the file used by admin or managed server during startup for username

and password. it exist under your domain/servers/server_name/security folder.

What are muxer threads

These are the Special Threads in Web logic Server to read incoming request from external

entities on the servers. The main usage is to read the incoming request and then pass them

to either “execute Thread” or “work Manager”.

Weblogic allocates a percentage of the Thread pool for these pools.The default value is 33%

and not more than 50%.

what is JRCMD

There is a tool called “jrcmd” provided with JRocket jdk which sends commands to the

JRocket jvm. This is a command line tool available in the JRcoket/bin/

What are connection filters

Connection Filter is another feature provided by weblogic, which is a network layer security.

These connection filters allow unwanted access to resources. For example these can be used

in blocking a IP address in accessing the admin console of a weblogic

Page 27: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 27

What is SNMP

The Simple Network Management Protocol (SNMP) is an application layer protocol that

facilitates the exchange of management information between network devices and it is part

of the Transmission Control Protocol/Internet Protocol (TCP/IP) protocol suite. SNMP

enables network administrators to manage network performance, solve and find network

problems, and plan for network growth.

What is a light weight weblogic container

Normally when a web logic servers is started , the server type is wls . This server type

basically starts all types of servers , but when we start the weblogic server with wlx options

the server starts in a light weight mode.

The "wlx" option starts a server instance that excludes the following services, making for a

lighter weight runtime footprint:

Enterprise JavaBeans (EJB)

Java EE Connecter Architecture (JCA)

Java Message Service (JMS)

Just pass the “-DserverType=wlx “ to the startWeblogic.sh Script

How do you Bind an IP address to a weblogic server

There are cases where we need to run a web logic server by binding it to a specific IP

address. This helps in case when we have multiple web logic server instances running on

same machine which has multiple network interfaces.

First, you should bind the address as follows:

java -msXXm -mxXXm … -Dweblogic.system.bindAddr=xxx.xxx.xxx.xxx weblogic.Server

How do clean application Cache in Weblogic

Application cache is available in the Servers directory that are created when ever we start

the Managed Servers. This directory contains one sub directory for each Oracle Web Logic

Server instance in the domain. The sub directories contain data that is specific to each

server instance.

In Order to clean the application Cache , we can go to

<Domain Name>/servers/<Server Name>/tmp/_WL_user/

In this location we will see all applications that were deployed to this server. We can delete

the application for which we want to clean the cache.

Before doing that please stop the server, delete the application cache and then restart the

Server again.

Page 28: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 28

How do we Clean the EJB Cache

For cleaning the EJB Cache just go to /domains/servers/<Server

Name>/cache/EJBCompilerCache. and remove the EJBCompilerCache and restart the

Servers.

The EJB files are again recompiled. This will be helpful when dealing with many EJB based

applications

What is advantage if silent mode installation ?

for this sailent mode of installation you need to specify the log file and xml file. The

difference between command and sailent mode is command

-mode=console i.e here step by step are visible but in sailent mode every thing is

configured.

The biggest advantage of silent mode installation is that it is non-interactive and hence your

intervention is not required during installation. All the parameters to be used during

installation are defined in xml file (usually silent.xml)

eg:./filename.bin -mode=silent -silent_xml=silent.xml

What does 'stub' mean in weblogic server?

clients that connect to a WLS instances and look like a single clustered object obtain a

replica-aware-stub of the object. The stub contains the list of

all the available server instances of the object .It also has a load balancing logic to

distribute the load across the multiple hosts.

What is multicast Address?

An address that can be used to send the messages to the same host addresses but in

different network addresses.that addresses can be referred

as multicast address.The multicast addresses are in the range 224.0.0.0 to

239.255.255.255.

What is Garbage collection?

Garbage collection (GC) is a form of automatic memory management. The garbage collector

attempts to reclaim garbage, or memory occupied by objects that are no longer in use by

the program.

What are the different types of WLST modes

There are Two types of connection modes:

Page 29: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 29

1)Offline Mode:

WLST helps you to create and extend a domain, and create domain templates. In offline

mode, WLST acts as an interface to the Node Manager and you can issue WLST commands

to start and stop Managed Server instances without connecting to the Admin Server.

2)Online Mode:

WLST in online mode acts as a Java Management Extensions (JMX) client that manages the

domain’s resources by modifying the server’s Configuration MBeans. Thus, WLST offers you

all the domain management configuration capabilities as the Administration Console.

What are Heap, Core and Thread dumps

A heap dump is a snapshot of memory at a given point in time. It contains information on

the Java objects and classes in memory at the time the snapshot was taken.''

A core dump is the printing or the copying to a more permanent medium (such as a hard

disk ) the contents of random access memory ( RAM ) at one moment in time. One can

think of it as a full-length "snapshot" of RAM. A core dump is taken mainly for the purpose

of debugging a program.

A thread dump is a list of all the Java threads that are currently active in a Java Virtual

Machine (JVM).

How to check the Weblogic Version

We can use the registery.xml file

Tell me the errors u r getting in the browser like 500? How many errors are there?

Explain?

204 : Server has received the request but there is no information to send back, and the

client should stay in the same document view.

Bad request 400 - The request had bad syntax or was inherently impossible to be satisfied.

Unauthorized 401 - The parameter to this message gives a specification of authorization

schemes which are acceptable.

Forbidden 403 - The request is for something forbidden. Authorization will not help.

Not found 404 - The server has not found anything matching the URI given

Internal Error 500 - The server encountered an unexpected condition which prevented it

from fulfilling the request.

What are _WL_internal and _WL_TEMP_APP_DOWNLOADS in servers/tmp/

location

_WL_user and _WL_internal are temporary application directories. WebLogic uses them

depending on whether the application is internal or user-based.

.internal ( Hidden file )

Page 30: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 30

.internal is used during the period of DeploymentServerService for stage directory

initialization of internal applications and deployment in pre Standby mode, as well as

bea_wls_internal.war

.appmergegen_1316532268265_xxx.ear( Hidden file )

.appmergegen_1316532268265

.appmergegen_* (the * being a number that could be followed by an application name) are

working directories of the application compiler

_WL_TEMP_APP_DOWNLOADS maintains a cache of the archived files for distribution to

managed servers, generally in the form of _WL_TEMP_APP_DOWNLOADS/appName

Which is the best installer for installing weblogic

Generic Installer can be used in any platform with specifying either 32 or 64 bit JDK and

path.

What are the restrictions on using weblogic.server

Oracle recommends using java weblogic.Server primarily for initial development but not as

a standard mechanism for starting production systems for the following reasons:

java weblogic.Server will not function if you select a product directory outside of the

Oracle Middleware Home directory.

When executing java weblogic.Server, patches will not be recognized by the

WebLogic Server run time.

What is a T3 protocol and what are its uses

T3 protocol is a weblogic implementation for the RMI implementation. We can think of T3

and also T3S as a layer sitting on the top of HTTP to expose/allow JNDI calls by clients.

T3 is the protocol used to transport information between weblogic server and the other

types of java programs. The main use in using this is weblogic keeps track of every JVM

connected to applications deployed in Weblogic.

To carry traffic to the JVM , weblogic created a Single T3 connection. This type of

connections maximized the efficienty by eliminating multiple connections used to

communicate between thus using fewer resources. The protocol used for T3 connection

enhances efficiency and minimized packet size , increasing the speed of the delivery

method.

if a Java client accesses an enterprise bean and a JDBC connection pool on WebLogic

Server, a single network connection is established between the WebLogic Server JVM and

the client JVM. The EJB and JDBC services can be written as if they had sole use of a

dedicated network connection because the T3 protocol invisibly multiplexes packets on the

single connection.

Page 31: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 31

What is a SUSPEND state in weblogic DataSource

SUSPEND state in when data source is marked as disabled and applications cannot use

connections from the pool. Applications that already have a reserved connection from the

data source when it is suspended will get an exception when trying to use the connection.

WebLogic Server preserves all connections in the data source exactly as they were before

the data source was suspended.

How do we change the Compiler for JSP in weblogic

In the weblogic.xml file, the jsp-descriptor element defines parameter names and values for

servlet JSPs.

Use the compileCommand parameter to specify the Java compiler for compiling the

generated JSP servlets.

Use the precompile parameter to configure WebLogic Server to precompile your JSPs

when WebLogic Server starts up.

How can we enable/disable a Datasource

To suspend:

java weblogic.Admin -url t3://localhost:<port> -username weblogic -password <password>

SUSPEND_POOL YourDataSourceName

To re-enable:

java weblogic.Admin -url t3://localhost:<port> -username weblogic -password <password>

RESUME_POOL YourDataSourceName

What is the difference between .out and .log file

.out will print all logs related to your java application deployed whereas

.log file will print all logs related to weblogic server like startup.stop,deployment etc....

.out will have standard shell output where the instance was started and it will have mostly

Notice and above log level will be written on it. .log will have the server logs along with

all sub system logs too.

Java application will write logs on .out only if the app code redirects .logs to standard

output, there are many logging mechanism are available like loc4j which can be used to

write the java application logs to different/ separate files.

Unicast vs Multi cast

Multicast Unicast

Only option in pre-10.0 versions

of WLS, continues to exist in

version 10+

Available from WLS 10.0 onwards

Uses UDP Multicast Uses TCP/IP

Page 32: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 32

Requires additional

configurations to Routers, TTL

when clustering across multiple

subnets.

Requires no additional configuration to account for network

topology.

Requires configuring the

Multicast Listen Address and

Port. May need to specify the

Network Interface to use on

machines with multiple NICs.

Simply specify the listen address. Supports using the

Default Channel or a Custom Network Channel for cluster

communication.

Each message delivered directly

to and received directly from the

network

Each message delivered to a group leader, which

retransmits the message to other group members (N – 1)

and any other group leaders (M – 1), if they exist. The

other group leaders then retransmit the message to their

group members resulting in up to NxM network messages

for every cluster message. Message delivery to each

cluster member takes between 1 and 3 network hops.

Every server sees every other

server

Group leaders act as a message relay point to retransmit

messages to its group members and other group leaders.

Cluster membership changes

require 3 consecutive missed

heartbeat messages to remove

a member from the cluster list.

Cluster membership changes require only a single missed

heartbeat message to remove a member from the cluster.

Page 33: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 33

Weblogic 8 Weblogic 9/10

In WL 8.x we dont have LOCK & EDIT

Where as in WL 9/10 Lock and edit is the new feature

In WL 8.x we ahve execute queue's where as in WL 9&10 we are having workmanagers

In WL 8.x we have connection pools

and data sources

where as in WL 9&10 we have only data sources and

inside data sources we are having connection pools.

In WL 8.x you would need to delete

and deploy the file again

In 9.x there is option to update an application that

is deployed from the admin console. No need to un

install and redeploy

In WL 8.x Side by side deployment is

not possible

where as in WL 9.0 side-by side deployment

is possible

In WL 8.x sever never comes-up if

even one of the deployment fails where as in WL 9.0 server gets into ADMIN mode

Diagnostic Framework is not there. Diagnostic Framework" launch with wls10 and above

In Weblogic 8.x, all configuration and

jms details will be present

in the same config.xml

whereas 9.x/10.x it will be partly maintained in

config.xml and a separate xml f iles in

domain/config/jms folders for each jms module.

In WL 8.x we don't have config folder Where as in WL 9/10 config folder is avilable

Console is an applet and uses JCX JCS

JPF and Netui page flows Console is portal and uses JSTL (JSP 2.0)

Persistent store is defined Under JMS Persistent store is defined Under JDBC

No concept of JMS modules and sub

deployments Jms modules and subdeployments are included.

Queue/topic is configured under

distributed destination Queue/topic/dd etc are all clubbed in a JMS modules

In WL 8.x licence.bea file is present to

update the licence

the difference is that there is a generic license.beafile

for each version that you can downloand from oracle .

No need to request a custom license.beafile.

Page 34: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 34

Webserver

1) Which hosts websites.

2) Webserver is having web container can

deploy war files.

3)webserver can effectively handle static

contents.

ex: Serverlet,jsps.

4) Webserver handles the HTTP protocol. When

the Web server receives an HTTP request, it

responds with an HTTP response, such as

sending back an HTML page.

5) Web Server serves static HTML pages or

gifs, jpegs, etc., and can also run code written

in CGI, JSP etc.

6) Web Server only supports Servlets and JSP.

Application Server

1)Which provides run-time environment to run

J2EE

applications.

2)Application server is having webcontainer as

well as Ejb-container can deploy EAR files.

3)Application server can effectively handle

dynamic content ex: EJB'S

4) Application server is more capable of dynamic

behavior than webserver. We can also configure

application server to work as a webserver. Simply

application server is a superset of webserver.

5)Application Server supports distributed

transaction and EJB.

6) An Application Server is used to run business

logic or dynamically generated presentat ion code.

It can either be .NET based or J2EE based

Page 35: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 35

Development mode

1)Auto deployment enabled

2) The default JDK for development domain

is SunHotSopt.(SunJdk)

3) It is used demo certificate for

SSL.

4) Server instances rotate their log files on

startup.

5) Admin server uses an automatically

created boot.properties during startup.

6) The default maximum capacity for JDBC

Date source is 15.

7) The debug flag which used to start the

WebLogic workshop debugger is enabled.

Production mode

1)Auto deployment is disabled.

2) The default JDK for production domain is

JRocket.

3) It is used demo certificate for SSL a

warning is displayed.

4) Server instances states their log files

when it reaches 5Mb

5) Admin server prompt for username and

password during startup.

6) The default maximum capacity for JDBC

Date source is 25.

7) The debug flag which used to start the

WebLogic workshop debugger is disabled.

Xa datasource

1) It allows global transaction that my be

multiple resources.

2) It involves a co-ordinating transaction

manager with one or more databases in a single

global transaction.

3) It comes from the X/Open group specification

on distributed, global transactions.

Non-Xa Datasource

1) It allows single transaction that my be single

resources.

2) there is no transaction coordinator, and it is a

single resource is doing all its transaction work

itself.

3) It comes from Servlet or EJB or plain old

JDBC in a Java application talking to a single

database.

Page 36: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 36

Application or Module Archive

Extension

Key J2EE Deployment Descriptor

Enterprise Application .ear META-INF/application.xml

Enterprise JavaBean

Module

.jar META-INF/ejb-jar.xml

Web Application .war WEB-INF/web.xml

Web Service .ear or .war WEB_INF/web-services.xml

Connector Module .rar META-INF/ra.xml

Startup or Shutdown Class n/a No deployment descriptor (Class file only)

What is the difference in the web.xml and weblogic.xml?

An application-specific XML-based deployment descriptor file named web.xml, which lists

your application’s J2EE components and their configurations as J2EE modules. Each J2EE

module is a collection of one or more J2EE components of the same container type (Web or

EJB) that are represented by one component deployment descriptor for that type in the

web.xml f ile.

A WebLogic-specific deployment descriptor file named weblogic.xml, which defines how

named resources in the web.xml file are mapped to WebLogic Server resources. Examples

of weblogic.xml attributes include HTTP session parameters, HTTP cookie parameters, JSP

parameters, resource references, security role assignments, and container attributes.

Page 37: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 37

JRocket vs. SUN JDK

SUN JDK JRocket

Uses Interpreter

Interpreter interprets (executes) one line

at a time from the source file. Such as PHP,

Perl, other scripting languages

The byte code is read and the translated into

machine language, but these results are not

saved in the memory. So every time even if

the same method is run again and again, the

JVM has to translate the code into machine

language. This means machine code will not

be reusable as it is not saved anywhere in

the memory.

Due to this mechanism the server startup is

fast because it will not save the machine

code in memory

Uses JIT Compiler

Compiler transforms one language into

another. For example, C# into IL, Java into

byte code, C++ into binary machine code.

No execution happens at the compilation

stage.

Once a method is run, the byte code is

translated to machine language and this is

saved in the memory. This means if the

method is run again, there is no need for

translation and the machine code is reused.

In this case the server will take a little more

time since the machine code needs to be

saved inside the memory. but we get a

better performance when the application

running since the machine instructions are

already saved in memory and no need to re

compile them again.

JIT is also used by Sun JDK, but that was in

the earlier versions.

Also Uses a Hotspot mechanism by which it

finds methods that are very often used and

optimizes them for better performance.

Many Issues are seen during this phase,

options are available for disabling these.

SUN JDK has many memory spaces like

Eden, Permanent ,Survivor spaces where

objects move between them

JRocket has just Young and Old Spaces. No

Permanent Spaces.

The JRockit Native memory space is storing

the Java Classes metadata, Threads and

objects such as library files, other JVM and

third party native code objects.

SUN JDK has no such facilities JRocket has self tuning system , in cases

such as Out Of Memory due to native TLA

due to insufficient TLA which is 2kb in size, it

takes case of such things by auto tuning

these settings if the application needs

During Crash , SUN JDK generates hr_err.pid Generates dump file which contains the

Page 38: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 38

file reason for the crash

JRocket has tools to analyze the JVM

performance with low over head.

Work Manager VS Execute Queue

Execute Queue (Earlier Release before WLS 9.0)

Different classes of work were executed in different queues, based on priority and

ordering requirements, and to avoid deadlocks.

Each servlet or RMI request was associated with a dispatch policy that mapped to

an execute queue.Requests without an explicit dispatch policy use the server-wide

default execute queue.

Execute queues are always global.

Thread count should be set. Customers defined new thread pools and configured

their size to avoid deadlocks and provide differentiated service. It is quite difficult to

determine the exact number of threads needed in production to achieve optimal

throughput and avoid deadlocks.

Work Managers

all Work Managers share a common thread pool and a priority-based queue. The

common thread pool changes its size automatically to maximize throughput.

Work Managers become very lightweight, and customers can create Work Managers

without worrying about the size of the thread pool.

Thread dumps look much cleaner with fewer threads.

Possible to specify different service-level agreements (SLAs) such as Fair Shares or

Response-Time goals for the same servlet invocation depending on the user

associated with the invocation. The requests are still associated with a dispatch

policy but are mapped to a Work Manager instead of to an execute queue.

Work Managers are always application scoped. Even Work Managers defined globally

in the console are application scoped during runtime. This means that each

application gets into own runtime instance that is distinct from others, but all of

them share the same characterist ics like fair-share goals.

Thread count does not need to be set. WebLogic Server is self-tuned, dynamically

adjusting the number of threads to avoid deadlocks and achieve optimal throughput

subject to concurrency constraints. It also meets objectives for differentiated service.

These objectives are stated as fair shares and response-time goals.

Page 39: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 39

Some More Questions for your references

o if admin server is down and if we changed any setting in managed server, will admin get all

those setting after getting up?

o Can a stuck thread still do reasonable work?

o How do you deal with the corrupted config.xml?

o how do you deal with the corrupted configuration like JDBC , JMS files?

o What are the available logs Created in Weblogic?

o What is a TTL in weblogic?

o What are the difference between Connection pool and data source?

o What happens if we delete the log files when the server is running & when the server is not

running?

o Can we change the name of the log files when the process is running?

o What is HTTP tunneling in weblogic?

o How many types of weblogic installation ?

o How do you clean the Cache in Weblogic?

o What are the recommendations for the number of WebLogic Server Instance (JVM) per

CPU?

o Tell about the Weblogic Boot Up sequence?

o Does WebLogic Server dynamically use additional CPUs added to a managed server on the

fly?

o Can a WebLogic Server (WLS) admin server running on a 32-bit JDK be configured with a

managed server running on a 64-bit JDK?

o What is the difference between -Dweblogic and setting values in weblogic console?

o How to disable admin port in weblogic without weblogic console?

o What are Pinned services in Weblogic?

o Why we need Weblogic Inactive Connection Timeout in Weblogic

o How do I integrate JNI ( Native code ) code into weblogic?

o I want to set Prodcution Mode to true in Admin Domain , would this also run all the

managed servers in Production Mode ?

o What is the deployment process in weblogic?

o How does the deployment to a cluster work if one of the member is down

o How do you differentiate between a server hang and server crash issue?

o what is the difference between .jar .war and .ear files?

o What are deployment descriptors?

o What is a shutdownhook?

o What is a File Descriptor?

o What is fast swap in weblogic?

o How do we find the applied patches done in Weblogic

o What are core , thread and heap dump?

o What is a network channel in Weblogic?

o What are Resource adapters?

Page 40: Weblogic Interview Questions

By Jagadish Manchala- http://jagadesh4java.blogspot.in/ 40

o How does Credentials are passed to Weblogic server?

o How do we communicate with external components?

o What is cross cluster replication in weblogic?

o What is a DBPing and multiCast utility do?

o What is the use of Pack Command>\?

o Does weblogic server works as a Web Server?

o What are the available roles in weblogic?

o What is a Client application archive?

o What are the types of deployment methods in Weblogic?

o What are the types of packaging files for deployment?

o Can an application be deployed without any deployment descriptors?

o What are the values tuned in web logic?

o What are the differences between multicast and unicast clustering?

o What are the data source states?

o When does a Data Source goes to Suspend State?

o What is a Overload state in Weblogic?

o What is the sequence of Weblogic Server startup?

o How can the cluster members will communicate?

o What are the difference b/w web server and proxy server?

o Difference between horizontal clustering, vertical clustering and where both are used?

o If data source is configured but then after DB server is not running then what is the state of

data source?

o What is the difference between heap dump and thread dump?

o What kind of problems would you expect to encounter when trying to increase a managed

server's maximum heap size to 3 GB? If an application was suffering short periodic freezes,

and no errors were appearing in the logs, can you suggest a possible cause?

o If a managed server is crashing with a StackOverflow exception, what could be the cause?

o Describe how you might run a WLST script?

o What is a Smart Update in weblogic?

o What is a weblogic version compatibility?

o Can a node manager run with a different version of weblogic version?

o Can weblogic cluster be configured in a mixed platform ?

o What is a Harvester in WLDF?

o What are Watches and Notifications in WLDF?

o What are the types of data sources provided in weblogic?

o Can JDBC datasource be shared across clusters or to other developers?

o What is Cluster-wide JNDI tree?

o What are the types of Session Replication in weblogic?

o When does a Weighted Round Robin algorithm used,Explain a Scenario?

o What is the Diff b/w Xa and Non-Xa Datasource ?

o What are the Deployable Modules and Deployment modes?