Oracle Weblogic Interview Question and Answers
Q1) What is the Weblogic server?
Ans:
- A Weblogic server is an instance of a Java process executing in a JVM. A Weblogic server is a software application that runs as a middle tier between the back-end database and related applications and browser-based thin clients.
- Two Types of servers:
- Administration server
- Managed server
Q2) What are deployment descriptors?
Ans: Modules and applications have deployment descriptors—XML documents—that describe the contents of the directory or JAR file. Deployment descriptors are text documents formatted with XML tags. The J2EE specifications define standard, portable deployment descriptors for J2EE modules and applications.
Q3) What is the default JVM used for Weblogic?
Ans: Sun Hotspot JDK default for Development installation, JRockit is for Production mode for WebLogic 11g and 12c. The operating environment also factors to select the Certified JDK JVM. If you want to change you need to specify it.
Q4) How to configure a DB connection pool?
Ans:
- Choose the DB type (Oracle, Sybase, Mysql, etc...).
- Then choose the driver type for the DB.
- Give the connection pool name.
- Give the DB Service ID, schema name, and password.
- Then it will ask for testing the connection pool/DataSource.
- After a successful connection, it will ask you to create and deploy the connection pool target to the server or cluster. After creating a new connection pool always point the JDBC store to the connection pool created. This is required because A JMS JDBC store will be used for persistent messaging.
- After each JDBC connection, we must restart the server if there are startup classes dependency exists otherwise no restart is required in WebLogic 9. x and higher versions.
Q5) What are the modes of operation for Weblogic server domains?
Ans: There are two modes: Development and production mode:
Development mode:
You use development mode while you are developing your applications. Development mode uses a relaxed security configuration and enables you to auto-deploy applications.
You can use the demonstration digital certificates provided by the WebLogic Server security services. With these certificates, you can design your application to work within environments secured by SSL.
WebLogic Server instances can automatically deploy and update applications that reside in the domain_name/applications directory.
When you start a server, the server automatically renames (rotates) its local server log file as server-name.log.n. For the remainder of the server session, the server rotates its local log file whenever the size of the file reaches 500 kilobytes.
The default number of threads available to Execute Queues is 15.
The default capacity is 15 JDBC connections.
Production mode:
You use production mode when your application is running in its final form. A production domain uses full security and may use clusters or other advanced features.
A warning message is displayed if you use the demonstration digital certificates.
The auto-deployment feature is disabled, so you must use the WebLogic Server Administration Console or the Weblogic. Deployer tool.
A server rotates its local log file after the size of the file reaches 500 kilobytes.
The default number of threads available to Execute Queues is 25.
The default capacity is 25 JDBC connections.
Q6) What is a domain template?
Ans:
- A domain template is a jar file default one is a wls.jar file, which is '/bea/weblogic81/common/templates/domains/, it has all the features that are required for the standard Weblogic domain, we can even create a domain template of our own configuration. by this template, we don’t configure every time we create a new domain.
- By using a template, we can
- Create servers
- Clusters
- Machines
- Configure services such as JMS, JDBC, and Applications
Q7) What is the function of T3 in the WebLogic Server?
Ans:
- The enhancements support for WebLogic Server messages is provided by T3. These enhancements include object replacement, which works in WebLogic Server clusters’ context and HTTP. Java Object Serialization, RMI predation is done by T3. T3 is a superset of Java Object. Serialization and RMI can be done over T3.
- Between WebLogic Servers, and between programmatic clients & a WebLogic Server cluster, T3 is mandated. To communicate between processes and WebLogic Server, the protocols HTTP and IIOP can be used and optional. The HTTP is used to communicate between a browser and a WebLogic Server. The IIOP is used to communicate between an Object Request Broker and WebLogic Server.
Q8) How do stubs work in a WebLogic Server cluster?
Ans:
- The enhancements support for WebLogic Server messages is provided by T3. These enhancements include object replacement, which works in WebLogic Server clusters’ context and HTTP. Java Object Serialization, RMI predation is done by T3. T3 is a superset of Java Object. Serialization and RMI can be done over T3.
- Between WebLogic Servers, and between programmatic clients & a WebLogic Server cluster, T3 is mandated. To communicate between processes and WebLogic Server, the protocols HTTP and IIOP can be used and optional. The HTTP is used to communicate between a browser and a WebLogic Server. The IIOP is used to communicate between an Object Request Broker and WebLogic Server.
Q9) What happens when a failure occurs and the stub cannot connect to a WebLogic Server instance?
Ans: The stub removes the instance that is failed from its list when a failure occurs. The stub uses DNS again for finding a running server and obtains a current list of instances when there are no servers left in its list. The list of available server instances in the cluster will get periodical refreshment, which allows taking advantage of new servers. This is because; the servers are added to the cluster.
Q10) What is the difference between Weblogic and Websphere?
Ans: Though the functionality of these two products is closer, there are minor differences in the standards that support it. These differences are:
- WebSphere’s focus is more on connectivity, integration, and web services whereas WebLogic’s focus are more on emerging standards and ease-of-use of J2EE.
- WebSphere’s performance is better in terms of implementations of J2EE is a little more involved, and supports more integration and transaction management.
- WebLogic is supported by the default transaction attribute – “Supports”, whereas WebSphere has not default transaction attribute.
- WebSphere strictly follows J2EE architecture.
Q11) What is WebSphere?
Ans: WebSphere refers to a brand for IBM software products. It is designed for setting up, operation, and integration of electronic business applications. These applications could perform well in a cross-platform environment. These sets of software are Java-based web technologies.
Q12) Why is there no polymorphic-type response from a create () or find () method?
Ans:
- The EJB Specification prohibits this behaviour and Weblogic. ejbc compiler checks for this behaviour and prohibits any polymorphic type of response from a create() or find() method.
- The reason they create() and find() methods are not polymorphic is similar to the reason constructors are not polymorphic in Java. The derived classes generally do not know or cannot initialize the base class properly.
Q13) Why did my JDBC code throw a rollback SQL Exception?
Ans: JDBC code may throw the following exception:
- The coordinator has rolled back the transaction. No further JDBC access is allowed within this transaction.
- The WebLogic JTS JDBC driver throws this exception when the current JDBC connection transaction rolls back prior to or during the JDBC call. This exception indicates that the transaction in which the JDBC connection was participating was rolled back at some point prior to or during the JDBC call.
- The rollback may have happened in an earlier EJB invoke that was part of the transaction, or the rollback may have occurred because the transaction timed out. In either case, the transaction will be rolled back, the connection returned to the pool, and the database resources released. To proceed, the JTS JDBC connection must be closed and reopened in a new transaction.
Inclined to build a profession as Oracle WebLogic Developer? Then here is the blog post on, explore Oracle WebLogic Training |
Q14) When deploying a resource adapter (.rar) to WebLogic Server, are its classes placed in the WebLogic classpath?
Ans: For instance, I am deploying an EJB and a resource adapter (.rar), the EJB has no dependencies on the .rar because the EJB is writing to the common client interface (CCI). The EJB client application has sends/marshals as parameter classes that are defined in the .rar. For some reason, the EJB's classloader hierarchy cannot find the definition of this .rar-specific class, even though the .rar is deploying successfully. I receive the following error on the EJB client:
java.rmi.UnmarshalException: error unmarshalling arguments; nested
exception
is:
java. lang.ClassNotFoundException:
com. my company.InteractionSpecImpl
When you pass an instance of com. my client company.server.eai.InteractionSpecImpl as an argument to your EJB, the app server needs to de-serialize (unmarshal) the object under the EJB context, and it needs the required class for unmarshalling, inside the ejb-jar(raTester.jar). So, if you include the interactionspecimpl class in your ejb-jar file, then you do not need to include those classes in your server's classpath.
Q15) What type of object is returned by ResultSet.getObject()?
Ans: WebLogic jDriver for Oracle always returns a Java object that preserves the precision of the data retrieved. WebLogic jDriver for Oracle returns the following from the getObject() method:
- For columns of types NUMBER(n) and NUMBER(m,n): a Double is returned if the defined precision of the column can be represented by a Double; otherwise, BigDecimal is returned.
- For columns of type NUMBER: Because there is no explicit precision, the Java type to return is determined based on the actual value in each row, and this may vary from row to row. An Integer is returned if the value has a zero-valued fractional component and the value can be represented by an integer.
- For example, 1.0000 will be an integer. A long is returned for a value such as 123456789123.00000. If a value has a non-zero fractional component, a Double is returned if the precision of the value can be represented by a Double; otherwise, a big decimal is returned.
Q16) How do I call Oracle stored procedures that take no parameters?
Ans:
- Here is what we use that works: CallableStatement cstmt = conn.prepareCall("Begin procName; END;"); cstmt.execute();
- where procName is the name of an Oracle-stored procedure. This is standard Oracle SQL syntax that works with any Oracle DBMS. You might also use the following syntax:
- CallableStatement cstmt = conn.prepareCall("{call procName};"); cstmt.execute();
- This code, which conforms to the Java Extended SQL spec, will work with any DBMS, not just Oracle.
Q17) State some of the features present in Websphere.
Ans:
- Supports the Servlet/JSP container functionality which runs on top of HTTP.
- Supports HTTP servers such as IBM HTTP Server, MS IIS, and Netscape iPlanet server.
- Supports HTML pages, Setvlets, Java Server Pages and XML.
- Supports the EJB component model, Workload Management. WLM supports multiple servers within a single administrative domain.
Q18) What are the applications in Websphere?
Ans: WebSphere applications use the following kinds of technologies:
- Java specifications and other open standards for developing applications.
- WebSphere programming model extensions to enhance application functionality.
- Containers and services in the application server, used by deployed applications, and which sometimes can be extended.
Q19) What is the IBM WebSphere edge server?
Ans:
- WebSphere Edge is a set of web server/application server components that are intended to improve the performance of web-based systems.
- It is part of the IBM WebSphere product suite.
- Edge Server comprises 4 basic components:
- Network Dispatcher
- Caching Proxy
- Content Distribution
- Application Service at the Edge
- Edge can be configured for high availability with a backup Edge failover server that takes over sessions if the primary Edge server fails.
Q20) What is extended deployment in WebSphere?
Ans: WebSphere Extended Deployment delivers enhanced Qualities of Service with features for optimizing IT resources.
The suite comprises 3 products:
WebSphere Virtual Enterprise:
It increases flexibility and agility to ensure business process integrity, improve service, and application performance, and better manage health.
It provides application infrastructure virtualization capabilities that lower the costs required to create, manage, and run enterprise applications and an SOA environment.
WebSphere eXtreme Scale:
It is an essential IBM software technology for conducting extreme transaction processing.
It allows business applications to process exceptionally large volumes of transactions with extreme efficiency and linear scalability.
It provides transactional integrity and transparent failover to ensure high availability, high reliability, and constant response times.
It operates as an in-memory data grid that dynamically caches, partitions, replicates, and manages application data and business logic across multiple servers.
Compute Grid:
Enables the scheduling, execution, and monitoring of batch-type jobs with enhanced service policy and workload management
Q21) What is asymmetric clustering in WebSphere?
Ans:
- Asymmetric clustering architecture is opposite to the typical stateless server farm where the entire app is replicated across machines, sometimes using distributed caching products for improving the performance.
- In an asymmetric cluster, business logic is split into partitions, where each partition can be the sole accessory of a set of underlying data
- This results in each node in the cluster implementing its own local cache resulting in high-performance reading and writing without the need to maintain a distributed cache between cluster nodes.
Q22) What is WebSphere MQ JMS Provider?
Ans:
- IBM WebSphere MQ classes for Java Message Service are a set of Java classes that enables the JMS applications to access WebSphere MQ systems.
- Both the point-to-point and publish/subscribe models of JMS are supported.
- These Java classes are available as part of the IBM WebSphere MQ client support.
Q23) Explain the attribute CHANNEL in WebSphere MQ?
Ans:
- A channel is a connection that is to establish a link between the sending channel and the receiving channel. A channel has a sender channel at the local queue manager and a receiver channel at the remote queue manager. These two channels consist of the same name and together make one channel.
- The CHANNEL attribute is used with WebSphere MQ applications, to specify the channels for receiving and sending messages in a file that defines sender and receiver channels.
Q24) Explain WebSphere MQ Real-time transport.
Ans:
- WebSphere MQ Real-time Transport is a lightweight protocol optimized for use with nonpersistent messaging.
- It is used by JMS clients and provides high levels of scalability and message throughput.
- WebSphere MQ Real-time Transport is ideal for applications where large numbers of messages need to be sent or where messages need to be sent to large numbers of client applications.
- The WebSphere MQ Real-time Transport does not provide any facilities for persistent messaging or durable subscriptions.
Q25) Explain the concepts and capabilities of ANT.
Ans:
- Open: Ant is an open-source project available under the Apache license. Therefore, its source code can be downloaded and modified. Additionally, Ant uses XML build files which makes its development easy.
- Cross-Platform: The use of XML along with Java makes Ant the perfect solution for developing programs designed to run or be built across a range of different operating systems.
- Extensible: New tasks are used to extend the capabilities of the build process, while build listeners are used to helping hook into the build process to add extra error-tracking functionality.
- Integration: As Ant is extensible and open, it can be integrated with any editor or development environment easily.
Q26) How can I use ANT to run a Java application?
Ans: The following is an example to run a Java application using ANT:
<target name=”run” depends=”some.target”,some.other.target”>
<java classname=”${run.class}” fork=”yes”>
<classpath>
<path refrid = “classpath” />
</classpath>
<jvmarg line=”${debug.jvmargs}”/>
<jvmarg line=”${my.jvmargs}”/> < BR>
<jvmargvalue=”-dname=${name}” style="padding: 0px; margin: 0px; color: rgb(0, 0, 0); font-family: Helvetica, "Open Sans", Arial, sans-serif, Verdana; font-size: 15px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><jvmarg line=”${run.jvmargs}”/>
<arg line=”${run.args}”/>
</java>
</target>
Q27) Explain how to debug my ANT script.
Ans:
- The echo can be used as the alert () of the JavaScript.
- Use project.log("msg") in javascript or custom ant task.
- Run ANT with -verbose, or even -debug, to get more information on what it is doing, and where.
Q28) What is J2ME?
Ans:
- J2ME stands for Java 2 Platform Micro Edition.
- It is targeted at small, standalone, or connectible consumers and embedded devices.
- This technology consists of both a programming language and a software platform.
- It is a highly optimized version of JRE and consists of JVM and a set of APIs, which is suitable for simple runtime environments.
- It provides a robust and flexible environment for running applications.
Q29) What is the CDC?
Ans:
- CDC stands for Connected Device Configuration.
- It is a set of tools for developing applications that run on a range of network-connected consumer and embedded devices that support the Java ME CDC application framework.
- It is a JVM that is highly optimized for resource-constrained devices.
- It is used for bigger devices, such as set-top boxes and PDAs.
- CDC has more memory and more robust network connectivity.
Q30) What is CDMA?
Ans:
- CDMA (Code Division Multiple Access) is a multiplexing technique based on the spread spectrum approach.
- This allows several users to share a bandwidth of frequencies.
- In this, a special coding scheme is used where each transmitter is assigned a code to allow multiple users to be multiplexed over the same physical channel.
- It refers to several protocols which are used in second and third-generation wireless communication.
- It employs analog to digital conversion in combination with spread spectrum technology.
Q31) What is C-HTML?
Ans:
- Compact-HTML (a subset of HTML for small information devices) was created by a Japan-based Access Company and was accepted by the W3CM in 1998.
- Devices like cellular phones have several hardware restrictions like small memory, low-power CPUs, small mono-color display screens, and restricted input methods.
- cHTML does not support JPEG images, tables, image maps, multiple fonts and styles of fonts, background colours and images, frames, style sheets, and more than two colours, typically black and white.
- The basic operations can be done by a combination of four buttons:
- cursor forward
- cursor backwards
- select
- back/stop
Q32) What is Telematics?
Ans:
- Telematics is a GPS technology that provides location-based service to track the latitude and longitude of a vehicle.
- It outputs maps in LED consoles mounted on dashboards.
- The server is connected to remote processing centers that provide data, voice, and Internet services.
- Telematics is the technology of sending, receiving, and storing information relating to remote objects, such as vehicles, and telecommunication devices.