Вы находитесь на странице: 1из 72

Difference Between WebLogic 8.x and 9.x?

WebLogic 8.x:
We have a silent Mode of Domain creation.
We need configure Connection pools then Data source.
Here we dont have any Lock & Edit future in console.
Dont have Side by Side Deployment feature.
Where we are Redeploying application we need un-install previous version , then deploy the
new version application.
This Will not support two Phase deployment
Via console we have Different Module Deployment like
1.Applications, 2.EJB Modules, 3.WebApplication Modules, 4.Connector Module.
WLST was introduced but this will be available from 8.1 SP6.
Not support for JMS Client-Side Store-and-Forward
Server doesnt come up if deployment fails
WebLogic 9.x:
We dont have this Option in Domain creation.
First need to create a Dynamic Data Source , inside u can find a Connection pool tab.
Here we have Lock and edit feature in console.
Having Side by Side Deployment feature.
No need to uninstall simply update option.
This will support two Phase deployment.
Here No module deployment all type of Modules In Single Screen in console.
Here full Developed with MBean utility.
Support for JMS Client-Side Store-and-Forward
Server boots in ADMIN mode if deployment failes

Differences between production mode and development mode in WebLogic server?
Development Mode.
The default JDK for development domain is Sun jdk.
You can use the demo certificates for SSL.
Auto deployment is enabled.
Server instances rotate their log files on startup.
Admin Server uses an automatically created boot. Properties during startup.
The default maximum capacity for JDBC Data source is 15.
Production Mode
The default JDK for production domain is JRockit.
If you use the demo certificates for SSL a warning is displayed
Auto deployment is disabled
Server instances rotate their log files when it reaches 5MB
Admin Server prompts for username and password during startup
The default maximum capacity for JDBC Data source is 25






What Is a Domain?
Domain is a collection of logically related group of services, resources and functionalities together in one
place for example resources like Server instances, machines, clusters and services like JDBC data
sources, JMS servers, security providers and there will One Administration Server, which is the central
point from which you configure and manage all resources in the domain and it contains other additional
WebLogic Server instances called Managed Servers with clustered environment where we deploy
applications like Web, Java and EJBs to process the requests and these total domain information is
stored in Config.xml

What is Config.xml file?
The central configuration file for a domain is
MW_HOME/user_projects/domains/domain_name/config/ /config.xml. This file specifies the
configuration of each server instance, cluster, resource, and services in the domain.
Each time the Administration Server starts successfully, a backup configuration file named
config.xml.booted (backup_config.xml) file is created in the domain directory

What is an Administration Server?
Each and every WebLogic Server domain must have one server instance that acts as the Administration
Server to configure all other server instances and resources in the domain When the Administration
Server starts, it loads the config.xml file for the domain. Each time the Administration Server starts
successfully, a backup configuration file named Config.xml.booted is created in the domain directory.

What is a Managed Server?
All other servers other than Admin Server are referred as Managed servers, which is used to process the
hosted applications and resources. When they start it contacts with the Administration Server for its
configuration information off course even though if admin server fails or stops, managed server can run
independently to continue to do their work
Looks for msi-config.xmla replica of the domain's config.xml when it starts in msi mode

Three modes of installation of WebLogic Server?
GRAPHICAL: windows> double click; UNIX> chmod a+x filename.bin, ./filename.bin.
CONSOLE: WLServerXXX_win32.exe -mode=console; UNIX: chmod a+x filename.bin
./filename.bin -mode=console.
SILENT: Windows> WLServerXXX_win32 -mode=silent silent_ xml=path_of_silent.xml
Unix: chmod a+x WLServerXXX, ./ WLServerXXX.bin -mode=silent -silent_xml=/path_to_silent.xml
-log=/home/logs/platform_install.log

Different ways to WebLogic server startup?
WebLogic server can be started in the following ways:
startWeblogic.sh
Using Wlst and Ant Scripts
Node manager
WebLogic. Admin start command




What is Clustering in WebLogic Server?
A cluster is part of a domain, and it is a group of multiple WebLogic Server instances for running
simultaneously and work together as single WebLogic server instance to achieve scalability, Load
Balancing, High Availability and Application fail over enabling
Scalability: You can add server instances to a cluster without interruption of servicethe
application continues to run without impact to clients and end users.
High Availability: If any Unix Machine(box) fails the other Unix box will handle the requests
Load Balancing: When the load increases on one server, the load is automatically taken by
another server that has lesser load. All of these severs work together to ensure that the
transaction or job is completed for a given client request.
I) Round-Robin Load Balancing: WebLogic Server uses the round-robin algorithm as the
default load balancing strategy [first in first out]
ii) Weight-Based Load Balancing: This algorithm applies only to EJB and RMI object
clustering. [Decides based up on weight number given for server in cluster weight field]
Server->Configuration Tab->Cluster pageCluster weight Field(numerical Number)
iii) Random Load Balancing: The random method of load balancing applies only to EJB and
RMI object clustering [In random load balancing, requests are routed to servers at
random]
Application Fail-over: when server is executing the process suddenly if it stops responding and
then the session information is made available to the next available managed server in the
cluster to complete cycle

How to configure a Cluster?
Click Lock & Edit: select Cluster: click new button: configure Cluster Properties


What is a Replication Groups?
A replication group is a preferred list of clustered servers to be used for storing session state
replicas.
Using replication groups we define If primary server fails which should be a secondary server to
handle the session state
Servers are maintained in different Replication Groups with ranking systems assigned using a
combination of the servers in different Geographic Locations
What is session Replication (Maintained in Socket Communication)?
WebLogic Server maintains the HTTP session state ( User Session) of a servlet or JSP accessed that across
clustered are maintained as backup in the form of JSession ID. Proxy servers will create a JSessionID for
client when request comes
WebLogic Server can maintain this JSessionID (client's HTTP session state) is stored in Common
repository (storage) mechanism set in Weblogic.xml (deployment descriptor)
In-memory replication (Session info stored both in primary and secondary servers memory,
Most commonly used in cluster setup)
File system persistence (session info stored in text file, Set the directory where WebLogic Server
stores the sessions)
JDBC persistence (session info stored in a table using database)
Memory (default session info stored in memory all session information is stored in memory
and is lost when you stop and restart WebLogic Server.)
Cookie-based session persistence (session info stored in client browser) or in URL rewriting

How many types Clustering are there? Or Environmental Architecture?
There are two types of clustering:
1) Vertical Clustering 2) Horizontal Clustering

Vertical Clustering: Grouping of available WebLogic server instances in a single physical machine as
cluster
Horizontal clustering: Grouping of multiple application servers that are run on two or more separate
physical machines. Horizontal scaling is more reliable than vertical scaling,
In Real time: Basic Tier cluster with horizontal mc1, mc2

What is your Application Architecture?
--Basic Tier Architecture with horizontal clustering
Architecture defines how various tiers of an application (Web, Presentation, and Object) are deployed
on one or more clusters.
i)Web Tier[Container] : provides static content (HTML pages). The Web tier is generally the first point of
contact between external clients and the Web application. Receiving and forwarding requests to
presentation layer [Displaying the UI to End user] and business layer
ii) Presentation Tier: provides dynamic content (Servlets or JSP) to user
iii) Object Tier [Business Layer]: provides java objects (EJB or RMI classes) and executes associated
business logic with interacting to database.

How WebLogic Servers Instances methods to Communicate in a Cluster and how server
detect failure?
WebLogic Server instances in a cluster communicate with one another using two basic network
Technologies:
1) Sockets Communication 2) Heart Beat Communication

Socket Communication: (one to one or peer to peer) each server instance will communicate with IP
socket programming for sharing the information

Heart Beat Communication: Each server will communicate with the cluster by sending the heart beat for
every 10 sec. if it does not receive a heartbeat from the server for 30 seconds or longer), the monitoring
server marks the peer server as "failed."

There are two types of Messaging Modes for external communication systems:
1) Unicast 2) Multicast (one to many)

Unicast:
When creating a cluster within a new WebLogic Server environment, it is recommended that
you use the Unicast messaging type
It works on DHCP no need to require configuring any IP Addresses; it takes the one of the IP
Address from IP Table
uses TCP protocol

Multicast:
If you are creating a cluster within an existing WebLogic Server environment or you need to
ensure backward compatibility with older versions of WebLogic Server, you must use the
Multicast messaging type.
IP multicast is a simple broadcast technology that enables multiple applications to subscribe to a
given IP address and port number and listen for messages.
Entire network we have to configure to use the same multicast IP address on same LAN using
Class - C and its range is 224.0.0.0 to 239.255.255.255.
The default value used by WebLogic Server is 239.192.0.0 this address must be unique to this
cluster and should not be shared by other applications
The multicast port is used by cluster members to communicate with each other. Valid values are
between 1 and 65535.
IP multicast broadcasts messages to applications, but it does not guarantee that messages are
actually received.
It uses UDP Protocol

Methods of Configuring Clusters?
Domain Configuration Wizard: The Domain Configuration Wizard is the recommended tool for
creating a new domain or cluster.
WebLogic Server Administration Console: It allows you to perform a variety of domain
configuration and monitoring functions.
WebLogic Server Application Programming Interface (API): You can write a program to modify
the configuration attributes. But not recommended for initial cluster implementation.
WebLogic Scripting Tool (WLST): is a command-line scripting interface that system
administrators and operators use to monitor and manage domains.

What type of Objects can be clustered and what Objects are cannot be clustered?
Can be clustered: Web applications, EJBs and RMI Objects, JDBC Connections (data sources and
multi data sources), JMS
Cannot be clustered: The following APIs and internal services cannot be clustered in WebLogic
Server:
File services including file shares 2) Time services

Types of WebLogic Server Architecture [with Horizontal Clustering]

Basic Tier Architecture:
Multi Tier Architecture

Basic Tier Architecture: The recommended basic architecture is combined tier architectureall
tiers [Web, Presentation and Object tier] of the Web application are deployed to the same
WebLogic Server cluster.


Multi Tier Architecture: multi-tier architecture uses two separate WebLogic Server clusters: one
to serve static HTTP content and clustered servlets, and one to serve clustered EJBs.



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.
Different States of SERVER LIFECYCLE?
STARTING:-
a server instance prepares itself to accept requests and perform application processing
- it retrieves its configuration data; - starts its kernel-level services; - initializes subsystem-level
services
- deploys applications; - loads and runs startup classes

STANDBY
- a server has initialized all of its services and internal applications (such as the Administration Console)
- can accept administration commands; - can participate in cluster communication
- does not accept requests from external clients.

RESUMING: - to bring back the server to running state from stand by state
RUNNING: - it offers its services to clients , - can operate as a full member of a cluster

SUSPENDING: server handles a predefined portion of the work that is currently in processreferred
to as "in-flight" work
- Upon completion of in-flight work, the server progresses from the SUSPENDING state to the
SHUTTING_DOWN state.

SHUTDOWN: - a result of a graceful shutdown or forced shutdown process
FAILED: - one or more critical subsystems have failed, the server instance sets its state to FAILED
UNKNOWN: - If a server instance cannot be contacted, it is in the UNKNOWN state.

What is WLST (WebLogic scripting tool)?
It is one of the administration tool to configure, monitor and perform administration tasksin
active and inactive domains
Based on Jython pure java implementation of python
Generally we go for scripting for automating the admin tasks, before going to WLST need Set the
class path (Environment Variables) because it is one of the java class program from
WL_HOME/SERVER/BIN/setWLSEnv.sh
Command for invoking WLST : java>bin> java weblogic.WLST c:\myscript.py
We can interact to WLST in two ways:
1) Command Based: Executing one by one command sequentially
2) File Based: Executing all commands at once writing in a one file .py extension

There are two types of connection modes:
1) Offline Mode:
Similar to configuration wizard
Read, write and access to configuration data
Uses a template to create a domain or modify non running domain
2) Online Mode:
Similar to Administration Console without GUI
Interacts with Server/Domain MBeans
Start and stop servers, view run time data, change configuration
Intended as runtime management tool: configuration, managements, monitoring, and
deployments
What Is Pack and Unpack Commands?
pack.sh & unpack.sh command Used to Create Templates for Domains in WebLogic
Pack: This command is used to create a snapshot of a domain into a domain template file [JAR file].
WL_HOME/COMMON/BIN/pack.sh
Syntax: Pack -domain=path_of_domain -template=path_of_jara_file_to_create -
template_name=template_name *-template_author="author"][-template_desc="description"] [-
managed=true|false][-log=log_file] [-log_priority=log_priority]
Default value for -managed is false
Example ./pack domain=path of the domain -template= WL_HOME/COMMON/ TEMPLATES/
DOMAINS/filename.jar -template_name=template name managed=True

Unpack: It is used to create a domain from existing domain template
Syntax: unpack -template=path_of_jara_file -domain=path_of_domain_to_be_created [-
user_name=username] [-password=password] [-app_dir=application_directory] [-
java_home=java_home_directory] [-server_start_mode=dev|prod] [-log=log_file] [-
log_priority=log_priority]
Example: ./unpack -template= WL_HOME/COMMON/ TEMPLATES/ DOMAINS/filename.jar
Domain= MW_HOME/USER_PROJECTS/DOMAINS/domain folder

What is Node Manager?
Node Manager is used for
1) Controlling and Monitoring the admin servers and Managed Servers through Remotely
(Starting, Stopping and Restarting Servers using the Administration Console)
2) Crash Recovery (Auto restart failed or crashed Admin/Managed servers that were started by
node manager)
Node Manager is Domain-Independent Node Manager resides outside the scope of a domain,
and you can use a single Node Manager process to start Managed Servers in any WebLogic
Server domain
Default Port No is 5556, Cannot used to start or stop an Administration Server
WebLogic Server provides two versions of Node Manager, Java-based and script-based
Java-based Node Manager runs within a Java Virtual Machine (JVM) process. It is recommended
that you run it as a Windows service on Windows platforms and as an operating service on UNIX
platforms, allowing it to restart automatically when the system is rebooted. More secure
Script based Node Manager on UNIX shell scripts uses ssh connections
Node Manager is configured at machines
Starting Node Manager: WL_HOME/SERVER/BIN/./StartNodeManager.sh
Important files about Node Manager:
WL_HOME/COMMON/NODEMANAGER/
Nodemanager.domain it is used to verify whether a particular domain is registered in node
manager or not
Nodemanager.Log This log file stores all data about domains including Issues information, The
Node Manager writes its own startup and status messages to a single log file
Nodemanager.properties Contains attributes and values in encryption to start and stop the
servers, node manager takes from here (Like Secure Listener=True, Crash Recovery
Enabled=False, Listen Port=5556, logfile location, log limit=0, log count=1)
DOMAIN-NAME/SERVERS/SERVER_NAME/DATA/NODEMANAGER/
boot.properties Node Manager uses this file to specify a boot identity when starting a server
startup.properties Each Managed Server instance has its own startup.properties file with
properties that control how Node Manager starts up and controls the server. Node Manager
automatically creates this file by using properties passed to Node Manager when the
Administrative Server was last used to start the server.
Server_name.pidserver_name.pid is generated by each server and contains the process ID of
the server. Node Manager checks the process ID generated by the server during crash recovery.
Server_name.addr server_name.addr stores the IP Address added when a server starts or is
migrated. This file is generated after the successfully brought online during migration
server_name.stateserver_name.state is generated by the server and contains the server's
current state. Node Manager monitors the contents of this file to determine the current state of
the server.

Order of Stopping Servers?
1) Node Manager 2) Managed Server 3) Admin Server

How to configure Node Manger?
Adding Machine is nothing but Configuring Node Manager only
Node manager is configured at time of creating a new Domain only

Open WebLogic console http://localhost:7001/console
Click on Lock and Edit
Expand Environment : Select Machines : New button: Give Name for machine and OS: Next














Configure Node Manager with properties



If Type: Plain change security Listener=Plain in Nodemanager.properties file
Click Finish: You will add a new machine as shown below
Click on Servers Tab to add particular Servers to add node manager

Click Finish: Server will added to a machine
Activate Changes

Explain the logging mechanism in WebLogic?
The logging mechanism is done at the different levels with the different settings. The levels here are
domain level, server level, node manager level, application level. The different log files generated here

What are the Important Log Files in WebLogic?
There are two types of Log Files
1) Server Logs (DOMAIN_NAME\SERVERS\SERVER_NAME\LOGS\SERVER_NAME.LOG)
2) Domain Logs (DOMAIN_NAME\SERVERS\ADMIN_SERVER_NAME\LOGS\DOMAIN_NAME.LOG)
Server Logs: The server log records information about events such as the startup and shutdown
of servers, the deployment of new applications, or the failure of one or more subsystems. The
messages include information about the time and date of the event as well as the ID of the user
who initiated the event and messages of the selected severity or higher are forwarded to the
domain log (AdminServer.Log)
Access Logs: Contains all http requests information accessed about particular server information
(like Which IP Address accessed that server) (Access. Log)
Transactions Logs: Tlog files are the files used by WebLogic to keep a trace of current
transactions, These files are not human-readable (Adminserver.Tlog)
Server_name. Outfile: If node manager is used to start the managed servers, the node manager
creates a OUT file for each of the managed servers it starts.
Domain Logs: Contains all servers information about Domain, admin server will write a logs in
Domain. Log including regarding about managed servers also

Managed server log file (soa_server1.log): The soa_server1.log file logs entries that are both
infrastructure and transaction specific. In the event that an error is found in a composite instance that is
unclear, locate the timeframe of that instance and search this log file.

Diagnostic log file (soa_server1-diagnostic.log): writes entries in the Oracle Diagnostic Logging
(ODL) format. It provides a prototype of a log message in the ODL format. This is a text file and entries in
this file conform to an Oracle standard that includes information such as timestamp, server name, error
type, component ID, user, and other log information.



Server startup standard out log file (soa_server1.out): is generated when you start up the managed
server via Node Manager or the Oracle WebLogic Server Administration Console. Review this log for
server startup issues. For example, it may include startup information such as JVM heap and the
CLASSPATH settings as well as runtime infrastructure issues errors

The HTTP access log (access.log): The access.log file is generated in the event that you do not have
the Oracle Web Tier installed. This log file logs all HTTP requests to the internal web server following the
standard Apache HTTP Server log format. Reviewing this may help in identifying all SOAP requests that
have hit your server, as this is the first touch point to the server

Transaction logs store information about committed transactions that may not have been completed.
The transaction logs provide Oracle WebLogic Server with a mechanism to recover from system crashes
or network failures. however, allows transaction logs to be stored in a JDBC store, Transaction logs can
only be stored in the default store and must be file-based.

Use of Logs in WebLogic?
WebLogic Server uses log messages to record information about events such as the deployment of new
applications or the failure of one or more subsystems.
Used for: Frequently accessed resources, Activity by day and time interval, Amount of data send
and received, IP Addresses of users accessing the site, Number of Actual hits, Problem servicing requests,
performance statistics

Log Format and different Log Levels in WebLogic?
####<Sept 22, 2004 10:46:51 AM EST> <Notice> <WebLogicServer> <MyComputer>
<examplesServer><main> <<WLS Kernel>> <> <null> <1080575211904> <BEA-000360>
<Server started in RUNNING mode>

Locale-formatted Timestamp, Severity, Subsystem, Machine Name, Server Name, Thread ID, User ID,
Transaction ID, Diagnostic Context ID, Raw Time Value, Message ID, and Message Text.

When a WebLogic Server instance writes a message to standard out, he output does not include the
#### prefix and does not include the Server Name, Machine Name, Thread ID, User ID, Transaction
ID, Diagnostic Context ID, and Raw Time Value fields.
<Sept 22, 2004 10:51:10 AM EST> <Notice> <WebLogicServer> <BEA-000360>
<Server started in RUNNING mode>


Different Log Levels or Message Severity forwarded to Domain Log:
TRACE
DEBUG
INFO used for reporting Normal Operations
NOTICE An informational message with higher importance
WARNING A suspicious operation or configuration occurred but it may not be have impact on norml
operation
ERROR a user error has occurred -debug and close issue
CRITICAL A system or service error has occurred the system is able to recover but there might be a
momentary loss,
ALERT A particular service is in an unusable state while other parts of the system continue to function
the immediate attention of the administrator is needed to resolve the problem.
EMERGENCY The server is an unusable state. Severity indicates a severe system failure or panic.
First three severity are for general information no need to bother next four severity is to solve

What is Server Boot up Process?
When StartWebLogic.sh script flow need to explain...
CLASSPATH
MEMARGS
GC parameters
To start the weblogic.Server class
Check authentication if user, password given script takes from it. if not
Check for boot. Properties


What is Log file Rotation in Web Logic?
Each time the server log file reaches this size, the server renames the log file and creates a new
SERVER_NAME.log to store new messages
By default, in production mode, log file reaches 5 MB in size then it creates a new file
.files to retain: 7 (property) it creates max 7 log files
Rotation mechanism is done by types
1) Size Based (default) 2) Time Based
We can enable only one type either size or time based,
SIZE=100mb, But TIME with 2 attributes start time and Hours
Commands used for taking backup:
gzip as000*.log; zipping all files to decrease size
tar cvf AS_Backup_09102012.tar *.gz all zip files are compressing to one file
mv filename.tar (path)

What types of files can be deployed in WebLogic?
.WAR (Web based applications); .JAR (EJB applications); .RAR (Resource Adapters/Connectors);
.EAR (Enterprise Applications [combination of above all]); Webservices[WAR/JAR]

Different Deployment Targets
Deployment targets are the servers or groups of servers to which you deploy an application or
stand-alone module
The following describes different targets and all valid deployment files
1) WebLogic Server Instance: Java EE Applications; Java EE modules; JMS, JDBC, or WLDF modules;
Java EE Libraries
2) Cluster: Java EE Applications; Java EE modules; JMS, JDBC, or WLDF modules; Java EE Libraries
3) Virtual Host: A configured host name that routes requests for a particular DNS name to a
WebLogic Server instance or cluster Web applications
4) JMS Server: A stand-alone JMS application module can be targeted to server, cluster, or virtual
host targets; queues and topics defined within a JMS module can be further targeted to a
configured JMS server.

What is Deployment Plan?
Deployment plans helps WebLogic Server configuration for deployment into to multiple, differing
WebLogic Server environments without modifying the deployment descriptor files included in the
application archive.
We can override the values of the deployment descriptors at the runtime using plan.xml.
It override context-root of the application specified in the weblogic.xml
The weblogic.PlanGenerator tool provides a quick and easy way to generate a template deployment
plan

Deployment staging modes in WebLogic?
WebLogic Server provides three different options for staging files:

Stage mode: The Administration Server copies the deployment unit files to the staging directories
of target servers and they are deployed using the local copy. This mode is useful when deploying
small or moderate size applications, and prevents having a single point of failure if the original copy
is not accessible. This is the default staging mode for Managed Servers.


Nostage mode: The deployment units are deployed using the same physical copy, which must be
accessible by the Administration Server and target servers (for example, via a shared directory). The
Administration Server does not copy the deployment unit files to the target servers, in this case. This
mode is useful when deploying very large deployments to multiple targets, and for deployments
that require dynamic updates. This is the default staging mode for the Administration Server.



External Stage mode: In external_stage mode you must copy the deployment units
manually to the correct staging directories before deployment. Use this staging mode for
deployments where you want to manually control the distribution of deployment files to target
servers. This mode prevents deployment unit information from being dynamically updated. In
this case, the Administration Server accesses the original (master) deployment unit for
validation.





Configure Deployment Staging Directory : Log in to WebLogic server Admin console and click on
Servers: Deployments Tab:

How many ways you can deploy an application?
1) Admin Console 2) WLST 3) Weblogic.Deployer 4) Ant Build Scripts

1) Deploying from Admin Console:





2) Deploying by Using Weblogic.Deployer

Syntax: java weblogic.Deployer -adminurl http://localhost:7001 -user weblogic -password
weblogic01 -deploy name companystore source d:\lab\cpstore.ear -targets mycluster,
adminserver,ms1 stage appversion version2 [-plan /myDeployments/myAppPlan.xml]

For listing apps: java weblogic.Deployer -adminurl http://localhost:7001 -user weblogic -password
weblogic01 listapps

3) Deploying Using WLST Scripts:
Set calss Path #/domain/bin/Setdomainenv.sh
Write a script file deploy.py
connect(weblogic,'weblogic,'t3://localhost:7001)
edit()
startEdit()
deploy(appln name,'/apps/survey_web.war, targets=AdminServer, stageMode=nostage,
versionIdentifier=10-2)
save()
activate()
exit()
How to execute script: WLS_HOME/common/bin/wlst.sh deploy.py


4) Deploying Using ANT scripts:
Following are the steps to be followed to create and run ant build script:
1) Set your JAVA_HOME and ANT_HOME.
2) the sample build.xml for wldeploy is as follows:

3) Make sure the weblogic.jar is copied to ANT lib directory to run the build.xml successfully.
Note: wldeploy task referring to the classname= weblogic.ant.taskdefs.management.WLDeploy will be
picked from weblogic.jar.

What are deployment descriptors in WebLogic?
Java Modules and applications have deployment descriptorsXML files contain information about
application and specifies to server
Server reads from configuration files and loads that particular class files on JVM from descriptors
WEB.XML A application specific file which defines to server that based up On request or url
which class should be executed
WEBLOGIC.XML A Server specific file which defines how named resources(Jdbc, jndi, jms) in
the web.xml file are mapped to WebLogic Server resources.
For EJB applications (ejb-jar.xml, weblogic-ejb-jar.xml); For j2EE Enterprise (application.xml)

What are the different statuses of application after deployment?
DISTRIBUTE INITIALIZING before Activate
PREPARED After Activate, Application not started (But Targets are up and running)
Active application is working fine
NEW targets which are specified is not up and running
RETIRED side by side deployment (old version status)

What is Deployment order and Deployment plan?
Deployment Order: Dependencies between two application, if A is dependent on B so first deploy B
and then deploy A
Deployment plan: updating the configuration changes and used services (JNDI) without disturbance
while moving to the different environments( dev to qa to uat) using plan.xml file in redeploy



Error Codes that we see for web applications?
1XX Informational Status Codes
2XX Successful Status Codes that requested
3XX Redirection Status Codes, server has taken request and trying to call another url
4XX Client Error Status Codes, URI which is given is not proper but trying to access uri name in server
5XX Server Error Status Codes, server taken request but able to respond back , problem is server side
due to application not started

What is side by side deployment?
It is just like Redeploy with updated version without interrupting to the end users and old
application is outdated (retired state)
It will not use the context name it uses version tag (updates only version tags)
Assigning the version tags is possible only with weblogic.deployer utility
Before using weblogic.deployer, Set Path and class path WL_HOME/SERVER/BIN/setWLSEnv.sh
Syntax: java weblogic.Deployer -adminurl http://localhost:7001 -user weblogic -password weblogic01
-deploy name companystore source d:\lab\cpstore.ear -targets adminserver stage appversion
version2
For listing apps: java weblogic.Deployer -adminurl http://localhost:7001 -user weblogic -password
weblogic01 -listapps

What is JNDI (Java Naming and Directory Interface)?
JNDI is an API which is used to associate the unique names to objects(binding) and providing access
to that objects and retrieve objects by name (lookup) such as JDBC Data Sources, EJBs, JMS(
connection factories), and based on their names even objects resides in different location.
JNDI names are stored in tree like structure called JNDI tree.

What is a Data Source?
Data source is an object associated to connection pools and used for JDBC client to obtain
database connections from a connection pools
A client retrieves a Data Source through JNDI look up and uses it to obtain a database
connection

What is JDBC (Java Database Connectivity)?
WebLogic Server uses JDBC to handle the multiple database connections from end users at a time
For this 1) creating a datasources (Generic Datasources, Multi Datasources) 2) Configuring connection
properties and for DB and then testing it, configuring values to Connection Pool

What is Connection Pool?
A connection pool is group open connections that connect to a database at all times.
These are created at WebLogic server startup, It can be dynamically resized for performance
Minimum value: 0 ; Maximum value: 2147483647





What are different types of JDBC Drivers?
There are four different types of JDBC Drivers
TYPE 1 DRIVER (JDBC-ODBC Bridge):
Requires ODBC driver to installed on client machine, usually runs on windows
Converts JDBC query into ODBC query, which is then handled by the ODBC driver.
TYPE 2 DRIVER (JDBC-Native API):
Requires a Native Driver (vender specific driver written specifically for the relevant OS) to be
already installed on the client machine
This driver converts JDBC calls to Native API calls
TYPE 3 DRIVER (Network-Protocol Driver- (Middleware Driver))
Also known as the Pure Java Driver for Database which makes use of a middle-tier between the
calling program and the database.
The middle-tier (application server) converts JDBC calls directly or indirectly into the vendor-
specific database protocol.
The middleware server (which can be a fully fledged J2EE Application server) can provide typical
middleware services like caching, load balancing, logging, and auditing
TYPE 4 DRIVER (Native-Protocol Driver (Pure Java Driver))
This driver converts JDBC calls directly into a vendor-specific database (Direct to Database)
Completely implemented in Java to achieve platform independence. They install inside the Java
Virtual Machine of the client. This provides better performance from previous drivers

Type-1 Type-2 Type-3 Type-4




How do you configure JDBC for Database Connection?
1. Login to WebLogic Server Administration console (default port 7001)
http://hostname:port/console
2. Select Data Sources under JDBC in Services section
3. Click on New button on right side as shown above
4. Enter JDBC Name, JNDI Name, Database type as shown below




Select JDBC Database Driver: type 4 for singe database


5. Select one phase commit for using sing database here but in real time two Phase commit : Next
6. Now configure Database Connection Properties as shown below



7. Now test the Database Connection
8. You can select one or more targets to deploy your new JDBC data source. If you don't select a target,
the data source will be created but not deployed. You will need to deploy the data source at a later time



Now create another Generic data source with the previous steps for adding to multi datasource

Now create a Multi-DataSource and configure it as shown below



9. select one or more targets to deploy your new JDBC Multi Data Source.
And select data source type as non-xa driver for single database using



10. Select What JDBC Data Sources would you like to add to your new JDBC Multi Data Source
And click finish




How will you monitor the JDBC Connection Pool?
Click the [Genric] DataSource you want to monitor
Go to: Monitoring tab: Statistics Tab





Here waiting for connection failure count not to be failed at any time


What is JMS (Java Messaging Service)?
In WebLogic Server the messaging service is implemented through JMS, It is an enterprise messaging
system which is used to exchange the messages between java applications. And a message can be a
request, report, alert, notification or event
If persistence store is defined, when a message is failed to send it store in database as persistent
store or if JMS server is down then it writes into file system later push to JMS
One managed server is used for JMS server completely
BY default JMS has one connection factory

What are the messaging models supported by JMS?
JMS supports two models
1) Point to Point [Queue]: One sender will send message and only one receiver will get the
message. It is Guaranteed message delivery
JMS queue:
A staging area that contains messages that has been sent and is waiting to be read.
A message is removed from the queue once it has been sent or expired
The receiver does not have to be up and running at the time the sender sends the message
Every message successfully processed is acknowledged by the consumer (synchronous)

2) Publish and Subscribe [Topic]: One publisher publishes the message and Zero or more
subscribers will receive the messages.
JMS topic:
A distribution mechanism for publishing messages that are delivered to multiple subscribers.
The publisher has to create a message topic Subscribers may register to receive messages on a
particular message topic. The subscriber has to remain continuously active to receive messages

o JMS producer/publisher: A JMS client that creates and sends messages
o JMS consumer/subscriber: A JMS client that receives messages.

o Required To send messages by JMS Creates : 1) Connection 2) Session 3)lookup Destination

Connection factory name is given for sender/publisher and receiver/subscriber to connect JMS
Server
While connecting the client look up for the connection factory with help of JNDI in messaging
model in JMS to identify the destination
A Connection Factory encapsulates connection configuration information,










Steps for Configuring JMS?




Next select the server instance or migratable target on which you would like to deploy this JMS Server.

Now create a JMS Module




The following properties will be used to target your new JMS system module.
Use this page to select the server or cluster on which you would like to deploy this JMS system module.
Next Finish


Now create the sub deployments for JMS Module, click on created JMS Module





Now create the queues and topic by going to configuration Tab clicking on JMS Module


A subdeployment is a mechanism by which JMS resources are grouped and targeted to a server
instance, cluster, or SAF agent. If necessary, you can create a new subdeployment by clicking the Create
a New Subdeployment button.


If you want to create Topic follow the same above procedure

Creating Persistence Store



Creating JDBC Store or File Store as shown below

or


What is a sub-deployment
A sub-deployment is a mechanism by which JMS module resources like 'queues, topics, and connection
factories' can be grouped and targeted to a server resource like 'JMS servers, server instances, SAF
agents, or a cluster'.

What are the main features of JMS in WebLogic Server?
WebLogic Server JMS Supports
PTP and Pub/Sub Domains two models which is used for sending messages
Guaranteed and transactional message delivery if any one operation failed rolling back the
session.
Durable Subscribers "save messages when the subscriber is inactive & sends when it is active
Distributed Destinations a group of physical queues, or topics for .Load balancing and high
availability
Recovery from failed Servers

What is Threshold and Quota in JMS?
A Threshold and a quota can be set for server and destination objects
A Quota is a limit defined for JMS administered objects, include these values
The Maximum number of bytes that can be stored
The Maximum number of messages that can be stored
Threshold is limit that triggers message paging, flow control and logged warnings using:
Upper and lower values for the number of bytes for the queue
Upper and lower values for the number of message

Explain about Security in WebLogic?
Authentication is identification an user
Authorization is granting the rights to that user to use a resources or information

There are two types of security are available in WebLogic
1. JAAS (Java Authorization and Authentication Service):
2. SSL ( Security Socket Layer ):

1) JAAS (Java Authorization and Authentication Service):
The services that provide authentication and authorization for the clients those who access the
application
It used for SSO (Single sign on) i.e., used to login the multiple applications with single sign on
It uses of a Login Module and a Principal Validation provider

JAAS can be implemented at
Domain Level : Domain Level Resources are used by Administrators , In Admin Console: +
Security Realms : My Realm : User & groups Tab for Creating Groups by default ( Administrator,
Deployer, Operator, Monitor ) and Users by (name and password) and assigning users to groups
Application Level : Application Level Resources ( The J2EE application which you are using ) are
used by End Users by storing users information at LDAP Security and using URL Pattern
Here Application Level Uses ROLE and POLICY

ROLE: Dynamic authorization while accessing to application (Depends upon user who logged
in) and it defines at Admin Console at [+Security + My Realm: URL Patterns tab]
POLICY: A policy specifies which users, groups, or roles can access the resource under a set
of conditions defines at Deployment Descriptors by developers

2) SSL ( Security Socket Layer ):
IT is Secured protocol, which used for connecting two applications over a network to
authenticate each others identity and exchanging the data in the form of encryption

SSL can be configured one-way or two-way:
one-way SSL : The server is must present a certificate to the client, but the client is not required
to present a certificate to the server, The client must authenticate the server, but the server
accepts a connection from any client
Two-way SSL : The server presents a certificate to the client and the client presents a certificate
to the server

Configuring the SSL Certificates in WebLogic
Steps to obtain an appropriate Digital certificates, Private keys and Trusted CA certificates and install
in server

1) Creating a Key store (.JKS) file by using JAVA KEY TOOL from jdk1.6/bin/
keytool genkey alias (domain name) keyalg RSA [key size 512] keystore (domainname.jks)


Now it generates a new private key entry and self-signed digital certificate in a key store
client_domain.JKS file is created in bin directory.



2) Now generate a CSR (certificate service request) to submit to CA
Keytool certreq v alias (domain name) file (filename.pem) keypass (give password)
keystore (give password) storepass (password)

Now it generates a client_domain_cert_req.pem file submit this to CA team

3) CA Team (done by CA team) Import Signed certificate reply from and they will give back
Keytool import -alias (domain name) file filename.pem keypass (password) keystore (Filename.jks)
storepass (password)

4) Now configure Server side ( .jks file)
Admin server: Configuration Tab: Key stores Tab




1. Enter the following details: configuration: keystores tab

Save it


2. Enter the following details: configuration: SSL Tab




Configuring Proxy Apache Webserver?
To avoid multiple addresses to client and including load balancing
Collect setup file of apache webserver httpd-2.2.23.tar.gz
# gunzip httpd-2.2.23.tar.gz , #tar xvf httpd-2.2.23.tar, #Cd httpd-2.2.23
#./configure -checking the files, #make -for compiling the files
#make install -for installing the apache

Now apache is installed at /usr/local/apache2
#cd /usr/local/apache2/bin
Bin# ./apachectl -k start
To chek whether it is started or not open browser and type localhost in url you will get apache page

Installing a apache plugin
Copy a file from weblogic_home/server/plugin/linux/x86_64/ mod_wl_22.so to
/usr/local/apache2/modules/
Copy a mod_wl_22.so file of related as per bit of operating system
Now stop and start your apache
Bin# ./apachectl -k stop -start restart

Now configure the file httpd.conf with
1. Load Module: loading module to apache
2. #proxy configuration: here we are adding the clustered ip addresses & port numbers to
proxy



Directory Structure of apache
Bin: contains executable files
Lib: all configuration related files
Conf: configuration files including httpd.conf
Logs: contains all server logs including [error.log-contains log if any error occurs]
Htdocs: check any error occurs here; handles static pages
Modules: supported libraries for WebLogic environment

What is the important configuration file in apache?
The Apache configuration will be defined in the httpd.conf, if required segregated weblogic.conf file can
be created. SSL enable sites requires httpsd.conf

WebLogic Server Patching: Apply WebLogic Patch
BSU or also called smart update utility a Utility (java based application) provided with the weblogic
server to apply patches.
You can find bsu script under ORACLE_HOME\utils\bsu\bsu.sh


Earlier it was possible to login and download patches directly via bsu gui console but Smart
Update patch and patch set download capability has been decommissioned by Oracle since June 10,
2011, it mean you have download patch from oracle support website first ( support.oracle.com using
your oracle credentials ), after that you have to place it under patch staging directory (which is
ORACLE_HOME\utils\bsu\cache_dir by default ),


And after either you can apply from BSU GUI console or by command line.

GUI Mode :


Console Mode :
Syntax: ./bsu.sh -prod_dir=/opt/appsvr/product/wls_103/wlserver_10.3 -patchlist=SFF2 -verbose
install
#./bsu.sh -report -To Verify WebLogic Patch











What is a Thread Dumps?
A Thread Dump is a brief snapshot in text format of threads within a JVM. Data about each thread
including the name of the thread, priority, thread group, state (running/blocked/waiting/parking). All
threads - the Java VM threads (GC threads/scavengers/monitors/others) as well as application and
server threads are all included in the dump
Its always recommended to take multiple thread dumps at close intervals (5 or 6 dumps at 10-15
seconds intervals).

Different types of Thread States?
A Thread can be in one of the following states:
o New,
o Runnable,
o Non-Runnable ,
o Sleep for a time duration,
o Wait for a condition/event,
o Blocked for a lock,
o Dead (If there are deadlocks, restart is the only option to kill the deadlock)

What are locks?
Locks ensure only one thread can execute at a time for a particular resource or to ensure ordering of
execution

Why to capture Thread Dumps?
Under what conditions should we capture thread dumps? Anytime or specific times? Capturing thread
dumps are ideal for following conditions:
To understand what is actively executed in the system when under load
o When system is slow or hangs i.e., server will not respond to coming requests.
o While sever is taking more time to restart
o When we are Getting exception like java.lang.OutOfMemoryException
o Pages take long time to load; Response time increases; For Performance tuning

How to capture Thread Dumps

In Windows, Ctrl-Break to the JVM process running in foreground can generate thread dumps
1.Kill -3 PID 2.weblogic.Admin Utility 3.Admin Console 4.WLST Scripts

1. In Unix,
Find the process id for your server
Ps ef | grep java; Kill -3 <pid>
The OutPut of the Thread Dump will be generated in the Server STDOUT.

2. webLogic.Admin utility
set the class path running <DOMAIN_HOME>/bin/setDomain.env
# java weblogic.Admin -url t3://localhost:7001 -username weblogic -password weblogic1
THREAD_DUMP
Note: Thread Dump will be printed to the servers standard out (by default, the shell in which the server
is running).
3. WLS Admin Console can generate thread dumps. Go to the Server Instance -> Monitoring ->
Threads-> Dump Thread Stack Button option


4. Using WLST (WebLogic Scripting Tool)
a. Save and execute the below snippet as ThreadDump.py next # . ./setDomainEnv.sh
************************************
connect(weblogic,'weblogic1,t3://localhost:7001)
cd(Servers)
cd(AdminServer)
threadDump()
disconnect()
exit()
************************************
Note: The thread dumps get stored in the location from where you run the WLST script
NOTE: It is recommended to capture a set of 6-7 thread dumps at an interval 8-10 seconds to find a
pattern in the thread execution.

What is a Core Dump?
A Binary file which is generated by the operating system whenever a process gets crashed. If a Java
Process gets crashed OS generates a Core Dump for Java Process.The Core Dump contains informations
of the Operating System Signals, Thread Details (Native Threads details), Native Libraries information
etc.
Systems to analyze these Core Dumps like:
Tool-1). Dr. Watson Tool in Windows OS. Windows OS Start (Button)>Run>drwtsn32
Tool-2). pstack and pmap in Solaris Operating System.
Tool-3). procstack and procmap in AIX Operating System.
Tool-4). lsstack and pmap in Linux Operating System.
Tool-5). pflag if available in HP-UX Operating System.

What is Heap Dump?
Takes For Memory Leaks Based on this analysis we can find out that what all objects are consuming
more memory inside the heap file=MyHeapDump.hprof


Take heap dump at regular interval using jmap.
jmap -dump: format=b, file=dump1.bin 5004; jmap -J-d64 heap <pid> for 64bit



To Read the Binary Heap Dump File in Eclipse Memory Analyzer Tool ( MAT ) Just u need to extract this
Zip then u can directly start (no Installation needed)




Observe the heap usage of Objects in the heap dumps. If the object instance keeps on increasing in the
subsequent heap dumps, force a garbage collection from the WebLogic Server console



What is a Stuck Thread?
WebLogic Server diagnoses a thread as stuck if it is continually working (not idle) for a set period of
time. You can tune a server's thread detection behavior by changing the length of time before a thread
is diagnosed as stuck (Stuck Thread Max Time), and by changing the frequency with which the server
checks for stuck threads. Check here to see how to change the Stuck Thread Max Time.
Expand Environment > Servers(select server) : Configuration > Tuning tab,
Stuck Thread Max Time -- Amount of time, in seconds, that a thread must be continually working
before a server instance diagnoses a thread as being stuck.
Stuck Thread Timer Interval -- Amount of time, in seconds, after which a server instance periodically
scans threads to see if they have been continually working for the configured Stuck Thread Max
Time.

What is a Garbage Collection?
The Java Garbage Collector releases Java objects from memory as long as no other object refers to this
object
This is the process to clearing the dead objects from heap in 5-6 sec

1) Using Console:
Particular Server: Monitoring: Performance Tab: Garbage Collect button



2) Using weblogic.Admin
java weblogic.Admin url t3://<Target IP>:<PORT> -username <WL Admin username>password <admin
password> INVOKE pretty type JVMRuntime method runGC







What are the tuning techniques you applied?
Tunning for JVM - chanigng -Xmx, -Xms, MaxNewSize, MaxPermSize, and if required GC algorithms
Tuning in Threads/ThreadPool -- Defining Workmanager with maximum constraint
Tuning TCP/IP connections Interface address, backlog count,
Tuing JMS -- changing queue sizes as required
Tuing JDBC - initial count, maximum capacity, increase by number of connections

What can be the various reasons for a server crash?
Native IO b) SSL Native Libraries c) JVM d) Supported Configuration e) JDBC Driver issue

What can be the reasons of Server hang?
Memory leak, database query taking a long time to return, Deadlock.

How do u trouble shoot if managed server is in FAILED state?
If any managed server is in FAILED state there could be reasons as follows:
i) Deployment failed ii) JDBC DataSource issue iii) JMS configuration issue

IF Process runs OutOfMemory?
If java heap is full, server process appears to be hung and not accepting any requests because each
request needs heap for allocating objects. So if heap is full, none of the requests get served, all the
requests fail with java.lang.OutOfMemory

GC taking long times (more than 20secs)?
This appears like a hang for end users.
In the above case, we need to tune the GC parameters.
In these scenarios, we should be trying other GC options available. In some cases (GC taking very long
times), incremental GC has been useful (-Xincgc).

Using >Java Weblogic.Admin Command

1. Starting a managed server- java weblogic.Admin -url -username -password START
2. Finding the state of a server - java weblogic.Admin -url -username -password GETSTATE
3. Shutting down a server- java weblogic.Admin -url -username -password SHUTDOWN
4. Starting a Cluster- java weblogic.Admin -url -username -password STARTCLUSTER -clustername
5. Shutting down a cluster- java weblogic.Admin -url -username -password STOPCLUSTER -
clustername
6. Finding a state if a cluster- java weblogic.Admin -url -username -password CLUSTERSTATE -
clustername









Parts of JVM and JVM Architecture Diagram?

EX:- Java Process to explain the Java Process partitions in a 2Gb process size machine.
Java Heap Area: (-Xmx and -Xms)
When a Java program started Java Virtual Machine gets some memory from Operating System, the
Memory part is called Java Heap. Whenever we create objects they are created inside Heap in Java.
Java Heap space is divided into Young Generation and Old or Tenured Generation
Java Heap dump is a snapshot of Java Heap Memory at a particular time. This is very useful to
analyze or troubleshoot any memory leak in Java or any Java.lang.OutOfMemoryError.

Young generation:
Young generation memory consists of two parts, Eden space and survivor space. Shortlived objects will
be available in Eden space. Every object starts its life from Eden space. When GC happens, if an object is
still alive and it will be moved to survivor space and other dereferenced objects will be removed

Eden Space:
Every object starts its life from Eden space; Short-lived objects will be available in Eden space.
Space allocated to objects created inside the methods is reclaimed after the method execution is over.
Some objects might live longer as references pointing to them are cleaned up by the minor Garbage
If the Eden space starts filling up then minor garbage collector runs and shifts the old objects to the
Tenured Generation space

Survive ratio: When minor GC happens, if an object is still alive in Eden Space and it will be moved to
survivor space

PermGen Space: (-XX:MaxPermSize) or Tenured Generation
PermGen is a non-heap memory area where the Class Loading happens and the JVM allocates spaces for
classes, The major Garbage collection happens in this area of JVM Memory as well. The Garbage
collection in this area is called as Class GC.

Native Area:
Native area is for the internal operations of the JVM. JVM uses this area to load libraries and for
intermediate code generation. The Size of the Native Memory depends on the Architecture of the
Operating System and the amount of memory which is already committed to the Java Heap.

Cluster Constraint for the deployment in WebLogic server
Cluster constraint specifies that deployments targeted to a cluster succeed only if all servers in the
cluster are running. If any server instance in the cluster is unreachable, the application is not deployed
to any of the Managed Servers.
By default, cluster constraints are disabled and deployment is attempted only on the servers that are
reachable at the time of deployment from the Administration Server.

To Enable Cluster Constraint:
Login to WebLogic Admin Console
Click on the domain name
Select the Check box against Enable Cluster Constraint




What is a Work Manager in WebLogic?
Prioritize the work, based on rules which we define and used for monitoring actual run time
performance statistics of a thread. This information is then used to optimize the performance of
your application
You can configure Work Managers at the domain level, application level, and module level in
one of the following configuration files, or by using the WebLogic Server Administration Console
config.xmlWork Managers specified in config.xml can be assigned to any application, or
application component, in the domain.
weblogic-application.xmlWork Managers specified at the application level can be assigned
to that application, or any component of that application.
weblogic-ejb-jar.xml or weblogic.xmlWork Managers specified at the component level can
be assigned to that component.
weblogic.xmlWork Managers specified for a Web application.

What is WebLogic Diagnostics Framework (WLDF)?
The WebLogic Diagnostics Framework (WLDF) consists of a number of components that work together
to collect, archive, and access diagnostic information [contains more detailed information about the
specific error] about a WebLogic Server instance and the applications it hosts.
This section provides an architectural overview of those components.



ADMIN CONSOLE VIEW Default Users?
ADMIN CONSOLE VIEW depends on the security role granted to the user
The four global roles are as follows:
1.Admin
View the server configuration, including the encrypted value of encrypted attributes.
Modify the entire server configuration.
Deploy enterprise applications, startup and shutdown classes, and Web application, EJB, J2EE
Connector, Web Service, and WebLogic Tuxedo Connector components. If applicable, edit deployment
descriptors.
2. Deployer
View the server configuration, except for encrypted attributes.
Change startup and shutdown classes, Web applications, JDBC data pool connections, EJB, J2EE
Connector, Web Service, edit deployment descriptors.
3. Monitor: View the server configuration provides read-only access to the WebLogic Server
4. Operator: View the server configuration, Start, resume, and stop servers by default.

Trouble shooting Commands
Vmstat : Vmstat reports virtual memory statistics of process, virtual memory, disk, trap and CPU
activity. vmstat displays a one-line summary of the virtual memory activity since the
system was booted.
Basic syntax is: vmstat interval count
option - let you specify the type of information needed such as paging -p , cache -c ,.interrupt -i etc.
If no option is specified information about process, memory, paging, disk, interrupts & CPU is displayed.
vmstat 4 will give data at each 4 seconds interval.
Count - is the number of times the data is needed.
vmstat 4 5 will give data at 4 seconds interval 5 times.
vmstat -s gives the summary of the statistics
vmstat p gives the information about paging activity


What is WebLogic Connection Filters?
A connection filter allows the server to reject unwanted connections based on some filter criteria. For
example, a connection filter would allow you to configure WebLogic to permit T3 or IIOP connections
only from within your intranet, and reject any T3 or IIOP connection request from outside the intranet.
So, connection filtering provides network-level access control.
Login into to the console. Click on the Domain Name > Security > Filter: Specify Connection Filter
Rules

What is memory leak?
Memory leak is when objects are not removed from the heap even when they are not required.

What are the various causes for OUT OF MEMORY?
a) Insufficient heap size, not able to match the extra load.
b) Objects living too long, like HTTP Sessions.
c) Memory leak in application code.
d) Full GC not happening due to JVM Bug.

OutOfMemoryError when deploying the Composite:-
OutOfMemoryError has thrown when deploying the services to SOA 11g server from UNIX using ANT.
To overcome this issue increase the client memory (ANT) by executing the below comment and
try the deployment again.
In Unix:
export ANT_OPTS=-Xms512m -Xmx1024m -XX:MaxPermSize = 512m -XX: PermSize = 512m
In Windows:
set ANT_OPTS=-Xms512m -Xmx1024m -XX:MaxPermSize = 512m -XX: PermSize = 512m

Unable to get managed connection for jdbc/datasourcename
Solution: Check ojdbc.jar in the library path

Could not commit heap memory
Error:
[ERROR][Memory] Could not commit 2097152KB heap memory at 076659000.
Could not create the Java virtual machine.
Cause:
Physical server is not able to allocate requested memory for JVM (Virtual Machine)
Solution:
Reduce the memory arguments and try
i.e. reduce xms and xmx values.

When Application is facing issue while fetching data from Database ?
1. Check from console free server memory and number of free DB threads.
2. Take thread dump and analyze server logs which will provide detailed information, if in logs
DB error codes are found, provide logs to DB team for their further analysis.
3. With the help of telnet command check whether we are able to connect to DB server or not,
issue may be from port or firewall also.
4. If not able to connect successfully, log a ticket to Firewall team and also check with UNIX team
for any OS related issue.












































What Is Oracle Fusion Middleware?
Oracle Fusion Middleware is a packaged set of Web servers, application servers, content management
systems; it includes Java Enterprise Edition 5 (Java EE) compliant environment, and developer tools, to
integration services, business intelligence, collaboration, and content management.
Oracle Fusion Middleware consists of several Oracle products, built over the years and recently
acquired, that will help build end to end solutions. Oracle has been attempting to bring all these
products under one roof. With recent release of Oracle Fusion Middleware 11g R1, I must say that it has
managed to do it pretty well.
Oracle Fusion Middleware provides fully integrated products that can be divided into four important
categories:
Data and Application Layer: Products in this category help build integration with various
databases, legacy/custom applications and ERP products.
Business Process Layer: Products in this category utilize the integrations built in the data &
application layer to create re-usable orchestrated services.
User Interface Layer: Products in UI Layer will assist in creating sophisticated user interfaces
supporting multiple delivery channels such as web, mobile etc.,
Identity Management Layer: This is the security backbone of entire Fusion Middleware. We can
easily plug-in authentication, authorization in standalone and/or distributed server
environment.

Oracle fusion middleware Components

1 2
3 4
5 6

What is a SOA Suite [service-oriented architecture]?
SOA is a part of the Oracle Fusion Middleware family; it is a collection of services and reused to
communicate with external systems to automate the business process by passing data
SOA architecture is SCA [Service Component Architecture] it is a framework for building a
Service infrastructure [BPEL, Mediator, Business Rules and Human workflow]
Oracle SOA Suite provides a complete set of service infrastructure components for designing,
deploying, and managing SOA composite applications

Difference Between Oracle SOA 10g and Oracle SOA 11g ?
Oracle SOA 10g Oracle SOA 11g
contains Service Component Architecture (SCA) No Service Component Architecture (SCA)
ORACLE SOA Suite 10g is based on Oracle AS 10g
It uses Oracle Application Server 10.1.x, OC4J,
Sun JVM, Repository tool ( irca) to create
the SOA 10g repository , Managed with
Application Server Console

It uses the Oracle WebLogic server 10gR3, Sun or
JRockit JVM, Repository Creation Utility ( RCU ) to
create or delete the SOA 11g repository , Weblogic
server console used for managing.

all the SOA Components of Project deployed into
Single Server
Each component is deployed into particular server.
Having ESB Console, BPEL Console, Application
Server Control these are all individual and not
well integrated.
Provides service monitoring across
all SOA Components Such as ESB, BPEL, Human
Workflow

What are the Oracle SOA Suite components?
Service Infrastructure: Specialized and advanced capabilities are provided by dedicated engines
that plug into this infrastructure.

Oracle Mediator : Static Routing: Mediator Routes data from service providers (BPEL process,
business rule, human task) to external partner using adapters. Using mediator you create
routing services and rules for them.

Oracle Adapters: Oracle Adapters use JCA technology to connect the external systems to the
Oracle SOA Suite. by default the following adapters are installed ( BAM, FTP, Java Messaging
Service (JMS), Advanced Queuing (AQ), Files, Message Queuing (MQ) Series )

Business Events and Events Delivery Network: Event Delivery Network allows publish-subscribe
type of loose coupling between SCA components. SOA framework neatly abstracts these details
in the Even Delivery Network so that users can purely focus on publishing and subscribing to
event

Oracle Service Bus: [Dynamic Routing depends up on request received] Oracle Service Bus is
designed to connect, mediate, and manage interactions among heterogeneous services.

Oracle Metadata Repository: Contains Schemas information which we created by RCU
[SOA_Infra, ORA Bam, ORA SDPM (UMS), MDS (inf. About all above schemas) ]

Oracle Business Rules : Oracle Business Rules enables business analysts to easily define, update,
and manage key decisions and policies governing business processes and applications..

Oracle WSM Policy Manager:

Oracle BPEL Process Manager or BPM: (BPEL is used for bringing together multiple services and
allows implementation of complex business logic). This component will take care of executing all
components in SOA into an end-to-end process flow. And provides a dehydration capability so
that the state of long-running flows is automatically maintained in a database.

Human Workflow : This component is used for approval of transactions by human interaction
(Validation manually Ex:-manual order approval)

Oracle Business Activity Monitoring: (In Built Reporting Tool) Oracle BAM enables business
users to build interactive, real time dashboards (charts), and proactive alerts. which real time
data and personalized reports are delivered to Business Users via a standard web browser

Oracle User Messaging Service: It is used to configure the E-Mail drivers to connect email
servers for sending the emails to other systems

Oracle B2B: Provides a platform to exchange standard messages between business entities. It
comes with pre-built messaging templates and samples. It is part of Oracle SOA Suite. However,
we need to separately download and install Oracle B2B Document editor

Oracle JDeveloper: Oracle JDeveloper is the integrated development environment used by
Oracle SOA Suite for building service-oriented applications

Oracle Enterprise Manager: Used to Configure, manage and monitor all components and
services. In this web-based environment, administrators can perform everything

Prerequisites for Installation of SOA?
Installation Order: Database, RCU (Repository Creation Utility), WebLogic Server with Coherence, SOA
Installation [BPM], OSB (Oracle Service Bus), Domain Creation


What is RCU how it is used?
It is a Repository Creation Utility Tool used to create the Required Schemas for Database to store related
information of SOA
Schemas are [SOA_Infra, ORA Bam, ORA SDPM (UMS) and MDS (Inf. About all above schemas)]

What are the sessions and processes in Database how do you change parameters to it?
Sessions: are the external connections to Database
Processes: executes processes which is send by sessions
Processes should be minimum 300 connections
Changing parameters:
Sql> show parameter sessions
Sql> show parameter processes
Sql> alter system reset sessions scope=spfile sid=*;
Sql> alter system set processes=300 scope=spfile;
Restart DB Service

What is the difference between Development and Production mode Installation for SOA?
Development: All SOA Infrastructure applications target would be an Admin Server
Production Mode: All SOA Infrastructure applications are installed on separate Managed Server called
(SOA_Server1)

What is farm, SOA Infra, Composite, Component and Instance?
Farm: Grouping all multiple resources or Stacks together [OSB, Web Center, BAM]
SOA Infra: While Installing SOA, template will be used to get SOA infrastructure and it used to handle
the environment like configuring and monitoring composite applications, composite Instances,
Deployments and Service Engines
Composite: Grouping multiple components as Deployment Unit.
Component: Presents Business Logic Unit used within composite
Instance: Tracking the information between payload [Actual Data] request and payload response
(Tracking the Total flow of execution) or Tracking the total life cycle of request and response

What SOA composite application contain?
SOA composite applications include service components. Service components are the basic building
blocks of SOA composite applications. Service components implement a part of the overall business
logic of the SOA composite application.
The following service components can be used in a SOA composite application:
BPEL process: For process orchestration of synchronous and asynchronous processes
BPMN process (if Oracle BPM Suite is installed): For creating and modeling business processes
using Business Process Management Notation and Modeling (BPMN)
Oracle Mediator: For content transformation and routing events (messages) between service
producers and consumers
Human task: For modeling a human task (for example, manual order approval) that describes
the tasks for users or groups to perform as part of an end-to-end business process flow
Spring: For integrating Java interfaces into SOA composite applications
Decision service: For making a decision or for processing based on business rules


What is BAM Server?
Oracle BAM provides a framework for
Creating dashboards that display real-time data flow to end users and delivers the information
in reports to users
Creating alerts, based on rules and events occurring in real-time, are delivered through e-mail.
Designing Web applications with graphs displaying active data.

What is OSB Server?
[Dynamic Routing depends up on request received] Oracle Service Bus is designed to connect, mediate,
and manage interactions among heterogeneous services.
BEAs AquaLogic Service Bus (ALSB) and Oracles Enterprise Service Bus (ESB) are now called as Oracle
Service Bus (OSB).
Create three services to connect SOA
1) External Service: give application WSDL url to integrate with OSB
2) Business Service: which service has to invoked (type)
3) Proxy Service: Client will invoke the proxy

What is BPEL?
BPEL (Business Process Execution Language) is XML based language to design business process that
integrates services into end -to-end process flow. BPEL is based on XML Schema, SOAP (Simple Object
Access Protocol), and WSDL (Web Service Description Language)
BPEL Process Manager is used to design, deploy and manage BPEL business processes.
Key components of BPEL Process Manager are
A) BPEL Server - is Server on which you deploy BPEL Process. These processes are design by developers
and contain Human Workflow (HW) , Adapters and Notification Services.
B) BPEL Console/Control - is console from which you run, test and manage BPEL Processes. This is Web
Based interface to manage, administer and debug processes deployed on BPEL Server. You also manage
BPEL Domains from BPEL Control.
C) Dehydration Store Database to store BPEL Schema.

What are Sensors:
Sensors Used to monitor specific BPEL activities, variables, faults during run time.
Sensors are used to specify BPEL activities, variables and faults that you wish to monitor during runtime.
There are three types of sensor (Activity, Variable and Fault) which can be defined either
through JDeveloper or manually using Sensor configuration file. You can view definition of sensor and its
actions using BPEL Control (BPEL Process should be configured for this)










Explain about Web service?
Web service is type of software system which is used for exchange the data and use information
from one machine to another machine through network.
Web which is used for exchange information through Internet to direct application to
application interaction.

What is the Partition in SOA?
Partitions are separate sections of your SOA Infrastructure that enable you to logically group the
composite applications for ease of management.
At least one partition is required for deploying composite applications. A default partition is
automatically included when SOA is installed
Managing partitions
You can perform several management tasks pertaining to partitions. These tasks
include:
Creating a partition
Deleting a partition, including all composites within the partition
Starting up and shutting down all composites in a partition
Retiring and activating all composites in a partition
Un deploying all composites in a partition

Different Ways to Deploy composite applications in SOA:
1) Em Console 2) WlST Scripts 3) ANT Scripts

1) Deploying Composite application using WLST Script:
Use with WLST: Offline ; setwlsenv.sh
Syntax: sca_deployComposite (serverURL, sarLocation, [overwrite], [user], [password],
[ForceDefault], [configplan], [partition])
Example: wls:/mydomain/ServerConfig> sca_deployComposite("http://stadp10:7001",
"/tmp/sca_HelloWorld_rev1.0.jar", partition="myPartition"

2) Deploying Composite Application using ANT Scripts:
You can manage SOA composite applications with the ant utility. ant is a Java-based build tool
The configuration files are XML-based
ant scripts available in the Middleware_Home\SOA_Suite_Home\bin directory.

ant -f ant-sca-deploy.xml
-DserverURL=http://localhost:8001
-DsarLocation=C:\demo\end2end-105-POProcessing\po\solutions\ch9\POProcessing\POPro
cessing\deploy\sca_POProcessing_rev6-cmdline.jar
-Doverwrite=true
-Duser=weblogic
-DforceDefault=true
-Dconfigplan=C:\demo\end2end-105-POProcessing\po\solutions\ch9\POProcessing\POProc
essing\demed_cfgplan.xml
-Dscac.user.classpath=C:\jarfolder\custom.jar
-Dpartition=partition.name
3) Deploying Composite application using EM Console:



In Option Configuration Plan section, optionally specify the configuration plan to include with the
archive. The configuration plan enables you to define the URL and property values to use in different
environments. During process deployment, the configuration plan is used to search the SOA project for
values that must be replaced to adapt the project to the next target environment

3) Click Next.
The Select Target page appears.
This page lists the available deployment targets (servers and clusters)
Select the partition into which to deploy this SOA composite application. Partitions enable you to
logically group SOA composite applications into separate sections.

4) Click Next.
The Confirmation page appears.

5) Review your selections.
Select whether to deploy the SOA composite application as the default revision. The default revision is
instantiated when a new request comes in.

6) Click Deploy.

Starting and stopping the Composite Application?



What are Dashboard, Instances, Faults and Rejected Messages and Polices Tab Sections?
Dashboard Tab: This is used to monitor the Recent Instance IDs and State of Instances whether it is
running or completed, click an instance to access a flow trace of the application and you can monitor the
Recent Faults and Rejected Messages occurred, Component Metrics, Services and References
Component Metrics: The name and type of service components used in this SOA composite application,
the number of running and total instances, and the number of recoverable and no recoverable faulted
instances for each service component
The service components like [BPEL, Mediator] in a SOA composite application appear in the component
metrics
Services and References: The name and type of service (inbound) and reference (outbound) binding
components and components and type of services [Web services ]used in this SOA composite
application, the number of binding component faults, the total messages processed, and the average
message processing time.
Binding components connect SOA composite applications to external services,
Binding components are organized into two groups:
Services: Services Provides the outside world with an entry point to the SOA composite application. The
WSDL file communicates with external applications (for example, through SOAP).
References: Enable messages to be sent from the SOA composite application to external services

Instances Tab: It is used to search the instances by Instances id, name, conversation id and start time
And used to delete the instances with criteria and you can view the log messages of composite instances

Faults and Rejected Messages Tab: It is used to Recover the errors, search by Error message contains,
fault id, composite instance id it displays including the error message, whether you can recover with
options from the fault, Delete rejected messages, the time at which the fault occurred, the fault location
(service, service component, or reference), the instance ID of the SOA composite application, and a link
to log files describing the fault.

Policies: You can attach or detach security policies to and from currently deployed SOA composite
applications. Policies apply security to the delivery of messages
You can attach and detach policies at the following levels in SOA composite applications, Service
components, Service and reference binding components
How do you Recover SOA Composite Application Faults at the SOA Infrastructure Level

You can monitor and perform individual and bulk fault recoveries for BPEL process and Oracle Mediator
service components across any number of SOA composite applications

To recover from SOA composite application faults at the SOA Infrastructure level:

1) Access this page through one of the following options:


2) Click the Faults and Rejected Messages tab.
The Faults and Rejected Messages page displays the following details for all SOA composite
application faults:
Options for selecting instance recovery actions (for example, retry, abort, replay, and others),
deleting rejected messages, and performing bulk message recovery.
Faults and rejected messages, including the error message, whether you can recover from the
fault, the time of the fault, if the fault message is classified as a rejected message (if so, a
checkmark is displayed), the SOA composite application in which the fault occurred, the fault
location, the instance ID, and a link to log files describing the fault.




3) Select faults for recovery using one of the following options. Fault recovery selection at the SOA
Infrastructure level matches the SOA composite application level and BPEL process and Oracle Mediator
service component levels.



4) Select an action from the Recovery Action list.


5) If you want to perform a bulk recovery of messages, click Recover with Options.

This page displays the Recover with Options dialog for specifying criteria for recovering BPEL and Oracle
Mediator messages of all composites directly from the database. Human workflow faults can also be
recovered, but not directly from Oracle Enterprise Manager Fusion Middleware Control. Instead, the
audit trail provides a link to the Oracle BPM Worklist
Business event and business rule messages cannot be recovered.
Specify criteria. Retry and Abort are the only recovery actions permitted

Note:
For bulk fault recovery at the SOA composite application level, a check of the state of the composite is
performed. If the state of the composite is set to off, a message is displayed warning you that a recovery
cannot be performed.
=====================================================================================
Configuring BPEL Process Service Engine Properties:
You can configure BPEL process service engine properties, which are used by the BPEL process service
engine during processing of BPEL service components.



Audit Level:
o Off: Composite instance tracking and payload tracking information is not collected.
o Inherit: Logging equals the SOA Infrastructure audit level. This page overrides or inherits the
tracking set at the SOA Infrastructure level.
o Minimal: The BPEL service engine does not capture any audit details. Therefore, they are not
available in the flow audit trails. All other events are logged.
o Production: The BPEL service engine does not capture the payload. The payload details are not
available in the flow audit trails.
o Development: Allows both composite instance tracking and payload tracking. All events are
logged. However, it may have an impact on performance. This level is useful mostly for
debugging purposes.

Audit Trail Threshold: Enter the maximum size in bytes of an instance audit trail before it is chunked
and saved in a dehydration store table separate from the audit trail. If the threshold is exceeded, the
View XML link is shown in the audit trail instead of the payload. Default 50MB

Large Document Threshold: Enter the maximum size of a generated document within a BPEL
process component instance before it is stored in a separate table in the dehydration store. Default
100MB

Dispatcher System Threads: Specify the total number of threads allocated to process system
dispatcher messages generated during runtime. Default 2
Dispatcher Invoke Threads: Specify the total numbers of threads allocated to process invocation
dispatcher messages are generated for each payload received; higher thread counts may cause
greater CPU utilization. Default 20

Dispatcher Engine Threads: Specify the total number of threads allocated to process engine
dispatcher. Engine dispatcher messages are generated whenever an activity must be processed
asynchronously higher thread counts can cause greater CPU utilization. Default 30

Payload Validation: Select to enable validation of inbound and outbound messages. This setting is
independent of the SOA composite application. If payload validation is enabled at both the service
engine and SOA Infrastructure levels, data is checked twice: once when it enters the SOA
Infrastructure, and again when it enters the service engine.

Disable BPEL Monitors and Sensors: Select this checkbox to disable all BPEL monitors and sensors
defined for all BPEL components across all deployed SOA composite applications.


==============================================================================






Configuring SOA Infrastructure Common Properties
The properties set at this level impact all deployed SOA composite applications, except those
composites for which you explicitly set different audit level values at the composite application or
service engine levels.


Capture Composite Instance State: captures the SOA composite application instance state.
Whether it is Running or Completed, If you not selected this you will get unknown state
This activates the Abort button on the Instances page of a SOA composite application. Else no

States of Composite Application: running, faulted, stale, terminated, completed, unknown

Payload Validation: Select to enable validation of incoming and outgoing messages.

Disable fetching of instance and fault count metrics: Select to disable the display of instances
(failed, completed) and fault count metrics on the following pages: - on Dashboard pages of the
SOA Infrastructure, SOA composite applications, service engines, and service components. This
setting can improve the time it takes to load pages.

Set default search criteria to fetch recent instances and faults only within a recent duration
(applies to lists of instances and faults): can search for instances. When you select this
checkbox and specify a time period, the Show All links change to Show More links - on the
Dashboard pages of the SOA Infrastructure, SOA composite applications, service engines, and
service components.
=====================================================================================
Configuring Oracle Mediator Service Engine Properties:
You can configure Oracle Mediator service engine properties, which are used by the Oracle Mediator
service engine during processing of Oracle Mediator service components.


Metrics Level: configuring the Dynamic Monitoring Service (DMS) metrics level. DMS metrics are
used to measure the performance of application components. Enabled/Disabled
Parallel Worker Threads: Specifies the number of parallel dispatchers for message processing.
Increase this parameter to increase the number of outbound threads for parallel processing.
Default 4
Parallel Maximum Rows Retrieved: Specifies the number of rows retrieved per iteration for
parallel processing. You can set the value of this parameter to 50 to 100 times
Parallel Locker Thread Sleep (sec): Specifies the idle time between two successive iterations for
retrieving rows
Error Locker Thread Sleep (sec): You can configure the error/retry infrastructure by setting this
property. This property specifies the idle time between two successive iterations for retrieving
errored out messages
The heartbeat infrastructure is a part of the Oracle Mediator service engine and detects the
absence of an Oracle Mediator service engine instance due to failure or shutdown of a node.
Container ID Refresh Time (sec): Specifies the time interval at which the heartbeat thread
periodically updates the time stamp associated with each Oracle Mediator service engine's
unique identifier.
Container ID Lease Timeout (sec): Specifies the time interval at which the heartbeat thread
periodically checks if there are unique identifiers that have not been updated for a particular
period of time.
Resequencer Locker Thread Sleep (sec): Specifies the sleep time in seconds for a deferred
locker when there is no message in the database
Resequencer Maximum Groups Locked: Specifies the maximum number of groups locked.
Resequencer Worker Threads: Specifies the number of resequencers.
What are the steps to configure External Adapters?
1) If adapter is not available then download from oracle site and deploy in Admin Console
2) Configure the adapter: Environment + Deployments: deploy particular adapter: by click install
Drill on installed adapter:
3) click configuration tab: Outbound connection pools: -
4) configure connection properties from collecting particular sys admin and save new JNDI name in
Plan.xml
5) Now redeploy the Adapter with new JNDI Name in Plan.xml and start it

Recovering the BPEL instances:-
Sometimes the BPEL instances may go to the recovery queue, the instances in the recovery queue can
be recovered manually to continue the processing.

Below are the some of the reasons the instances to go to manual recovery.
1. There are not enough threads or memory to process the message.
2. The server shuts down or crash before it finishes processing the BPEL message
3. The engine could not finish processing the message before reaching the time-out as dictated by
the transaction-timeout configuration

1) Login to EM console
2) Right click on soa-infra ,Click on Service Engine: BPEL
3) Click on Recovery tab
4) Change the Type accordingly(Invoke, Activity, Callback) and the Message state to Undelivered
and click on search
5) All the recoverable messages that match the criteria will be displayed.
6) Select the required messages and click on Recovery button.








Configuring Oracle BAM Adapter connection factory through EM console Oracle BAM 11g
Steps to configure the BAM Adapter:



Business Activity Monitoring is a tool that is useful in monitoring business services and processes. It
actively collects data, applies rules and reports information to users. When something goes wrong in
business processes, BAM can be configured to take corrective measures such as emailing
administrators/support team.

1) Login WebLogic Admin Console
2) Click Deployments in Domain Structure pane
3) Click on the application OralceBamAdapter
4) Click on Configuration tab
5) Click on Outbound Connection Pools
6) Expand oracle.bam.adapter.adc.RMIConnectionFactory.


Go TO : Weblogic Admin Console : Deployments : Bam Adapter resource File (click it)
Click eis/bam/rmi link






And configure the Connection Properties to connect BAM Server:


1) Enter the Plan file name accordingly and click on ok


After this Redeploy with New Plan.xml
Now create a Data Object in BAM by
URL for BAM Console is : http://localhost:9001/OracleBAM give username and password


Select Architect to create the Data Objects as shown below



Create folder : EmployeeTest (browse if already created)
Create Data Object: Employee
Add Fileds in Data Objects (id, name, and department) as shown below



Now Create Reports and assign Data Object to report




Create Alerts if required as shown below



Select Create A new Alert: and Select Create a Rule as shown below



Select An Event to create a rule





Next select a particular Field




Go to Em Console and copy faultmgnt appln wsdl URL and paste here and click Display
Operations and click Map parameters then give the required details of fault mgnt details




And click ok to complete the Alert

NOTE: Whenever the data filed changes in data object in BAM Server it generates an instances in Fault
Mgnt Application

Configuring Oracle BAM Server Properties
To configure Oracle BAM Server properties:
1. Go to the BAM Server Properties page by selecting the OracleBamServer node in Fusion
Middleware Control BAM folder.
2. Choose BAM Server Properties from the BAM Server menu.
3. The BAM Server Properties page opens.
4. Enter the appropriate values in each of the fields provided.
1 2 3
==============================================================================

Configuring Oracle BAM Web Applications Properties

The Oracle BAM web applications properties are configured in the BAM Web Properties page in Fusion
Middleware Control.

To configure Oracle BAM web applications properties:
1. Go to the BAM Web Properties page in Fusion Middleware Control by selecting the
OracleBamWeb node in the BAM folder.
2. Choose BAM Web Properties from the BAM Web menu.
3. The BAM Web Properties page opens.
4. Enter the appropriate values in each of the fields provided.

1) 2) 3)









Creating OSB Service with example

Login to OSB console by URL: http://localhost:7001/sbconsole and give username and password

1. Click on CREATE Button.



2. Click on Project Explorer and give Project Name and click activate and submit it




3. Select project you created and Again click Create Button and select from Create Resources
option: Resource from URL for creating External Service


WSDL URL of fault mgnt application copy to paste here





And click NEXT

i) Click Import and Activate buttons

4. Follow previous steps For creating Business Service select from Create Resources option:
Business Service
5. After selecting Business Service you will navigate to following page



6. For WSDL Web service option click on Browse button you will go to another page click
BAMExternalService next select BAMExampleProcedss_pt under Ports click submit and
save the Business service



7. Follow previous steps For creating Proxy Service select from Create Resources option:
Proxy Service and you will get next page



Give Service Name and For Business Service option filed click on Browse you will go to another page
select BAMBusinessService and click submit and save it



Now come to Resource Section by clicking of your project and click Sun Symbol In actions section for
BAMBusinessService link



A new window will be opened with xml details you give a name and dept and click execute button


Now Check the details it will be updated in BAM Server at Employee Data Object

Note: Here we are accessing the BAM Example in SOA through OSB to update the Details in BAM Data
Object
=============================================================================

What is Basic difference between BPEL and ESB (Enterprise Service Bus)?
1). An ESB on the other hand is a piece of infrastructure software that provides APIs for developers to
create services and send messages between services.
2) ESB is good for routing message to multiple destinations. It is also good for doing transformations that
have little to no business rules.
3).BPEL is used for bringing together multiple services. There is much more functionality and allows
implementation of complex business logic.
4).Exception handling can be done in BPEL.
5). ESB does not have the sensors which can be used to monitor the activities that can send actions to
BAM or DB/JMS.
6).BPEL can use Business Rules, Human Task and Notifications.
7). BPEL primarily used for Orchestration, Data enrichment and also for Human interactions where as
ESB is used for Store and forward transport data.

What are different Default Adapters in SOA?
Enable you to integrate BPEL processes with file systems, FTP servers, database tables, database
Queues, oracle applications etc.
Kinds of Adapters: File, FTP, Database, AQ, Oracle Applications, JMS, MQ
























































1) Search a file from root directory.(filename = sample.txt) find / -name sample.txt
2) Display the last 50 updated lines in file tail f 50 filename
3) How to zip a Directory gzip -r /hom/bea/app
4) How to kill a process kill -9 pid
5) How to rename a file mv oldfilename newfilename
6) Copy the content one directory to another directory cp -r dir1/file1 dir2/file2
7) Syntax for zip and unzip afile gzip filename, guzip filename.gz
8) How can display top 10 disk usage files du |sort -nr|head -10 This command will report the
space used by a directory and sub-directories in folder top 10 files
9) How to search a string in a file(filename=sample,string=weblogic)? grep weblogic sample
10) How to copyfile from one unix to other unix system and syntax (file=sample.txt,target
host=192.168.11.128,target file path=/home/bea)?
scp -rp sample.txt username@192.168.11.128:/home/bea
11) How to find out CPU utilization? top
12) How to execute ascript using nohup and &(script name=startweblogic.sh) & is used for
background process? nohup ./startWeblogic.sh &
13) what are the Advantages of nohup command?
nohup Execute Commands After You Exit From a Shell Prompt
14) zip dir1 dir2 dir3 to new_dir? tar -cvfj new_dir.tar dir1 dir2 dir3.
15) How to display the ipaddress and portnumber? netstat anp
16) how to delete directory with recursion and force? rm -rf filename.
17) How to Open a file with page to page ? more filename
18) How to Hide a file (file name=samp1)? Rename a file with . mv samp1 .samp1
19) How to unhide the file? ctrl H or rename without .
20) Display the directiory count in current dir? ls | wc l
21) Display the file count in current dir? ls *.txt | wc
22) How to append data to the existing file? cat>>filename
23) How to find out the all drives diskspace of the fileSystem df
24) Which command is used to connect to the remote server? telnet ipaddress.
25) How to display hiddean a file? ls -a.
26) How to display all cuurent running process? ps ef
27) Display all java process in Unix ps -ef |grep java
28) To just list files and directories without date and size details ls
29) To list files and directories with date and time stamp along with size details ( l: listing, t: time stamp,
r:reverse ) ls ltr
30) To list files and directories along with hidden files ls -lart
31) To check how long machine is up uptime
32) To get Fully Qualified domain name of the machine along with IP address nslookup <hostname>
33) To check host name and type of machine uname n m
34) Displays the hostname of the machine hostname
35) display information about active processes on the system taken more cpu resources prstat
36) users consuming top system resources prstat -a
37) What difference between cmp and diff commands?
cmp - Compares two files byte by byte and displays the first mismatch diff - tells the changes to be
made to make the files identical


38) The crontab utility is mostly used to run jobs at the same time every day, every month, or every
year. Every minute, the system checks a system file, called crontab, to see which (if any)
processes/jobs need to be started.
crontab [filename] ; crontab -l [username] ; crontab -r [username]

Every line in the crontab file contains six fields, each separated by a space. A field may contain
more than one value, each separated by a comma. An means ``all values".
The fields are:
1. minute: values are 0 to 59.
2. hour: legal values are 0 to 23.
3. date of the month: 1 to 31.
4. month: 1 to 12 (Jan - Dec).
5. day of the week: 0 to 6 (Sun - Sat).
6. Bourne shell command.

Here is an example of what a crontab file would look like:
0 0 * * * /usr/bin/new.messages
0,15,30,45 * * * * /usr2/people/cantin/check.mail
0 0 1 1 * /usr2/people/cantin/new.year.message
The first line on the above example runs the command new.messages at 0 minutes, 0 hours
(midnight), every day, every month (i.e., every day at midnight).
The second line runs /usr2/people/cantin/check.mail every fifteen minutes.
Finally, the third entry runs new.year.message the first of January, at midnight.

psrinfo Command
To determine the number of processors in the system and their speed use the psrinfo -v command. In
Solaris 10, -vp prints additional information.

Iostat command (Input Output statistics)
iostat reports terminal and disk I/O activity and CPU utilization. The first line of output is for the time
period since boot & each subsequent line is for the prior interval .

Basic synctax is iostat < options > interval count
option - let you specify the device for which information is needed like disk , cpu or terminal. (-d , -c , -t
or -tdc ) E gives error statistics and n expands disk names (-E, -n or En). x options gives the extended
statistics .
interval - is time period in seconds between two samples .
iostat 4 will give data at each 4 seconds interval.
count - is the number of times the data is needed .
iostat 4 5 will give data at 4 seconds interval 5 times.

Mpstat: Display the utilization of each CPU individually
If you are using SMP (Multiple CPU) system, use mpstat command to display the utilization of each CPU
individually. It report processors related statistics.

# vmstat 3 -The command vmstat reports information about processes, memory, paging, block IO, traps,
and cpu activity.

#free - Memory Usage
The command free displays the total amount of free and used physical and swap memory in the system,
as well as the buffers used by the kernel

What is the difference between cat and more command?
Cat displays file contents. If the file is large the contents scroll off the screen before we view it. So
command 'more' is like a pager which displays the contents page by page

Вам также может понравиться