Sabtu, 25 Februari 2017

What is WSDL and difference between abstract and concrete WSDL

An official W3C standard, the Web Services Description Language (WSDL) is an XML language for describing web services. WSDL 1.1 (which is still in wide use) has five major elements--types, message, portType, binding, and service.  All these major elements may be defined 0 or more times in a WSDL document, except for <types>, which may be 0 or 1 time. Here's a short description of each:

types: This is where XML types to be used in the WSDL document are defined. Traditionally, this has meant using XML Schema, but newer versions of WSDL also support Relax NG.

message: This is the section where the input or output parts of an operation are defined, i.e. the "parameters" or "return types". It may have multiple child <part> elements, though WS-I forbids the use of more than one part per message in a document literal style service. The <part> itself may have an element (referring to a qualified XML element) or a type (referring to an XML Schema type) attribute.

portType: Here is where the operations that a web service offers are defined in terms of messages (input and output, with faults). Faults (referring to SOAP faults here) are the web service equivalent of the exception in languages like C++ or Java; most SOAP toolkits will translate SOAP faults into exceptions at runtime.

binding: This is the "how" of a service, specifying the binding of the operations defined in the portType(s) to specific protocols, such as SOAP.

service: This is the "where" of the service, specifying the address where a bound operation may be found.

Example of WSDL document:

 <?xml version="1.0" encoding="UTF-8" ?>
<definitions targetNamespace="urn:Emp" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="urn:Emp"
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:weo="http://www.example.org">
<types>
<xsd:schema targetNamespace="urn:Emp/types" elementFormDefault="qualified"/>
<xsd:schema>
<xsd:import schemaLocation="../Schema/Emp.xsd" namespace="http://www.example.org"/>
</xsd:schema>
</types>
<portType name="EmpDetailsPort">
<operation name="EmpRequestOperation">
<input message="tns:EmpDetailsPort_EmpRequest"/>
<output message="tns:EmpDetailsPort_EmpResponse"/>
</operation>
</portType>
<message name="EmpDetailsPort_EmpRequest">
<part name="part" element="weo:EmpRequest"/>
</message>
<message name="EmpDetailsPort_EmpResponse">
<part name="part" element="weo:EmpResponse"/>
</message>
<binding name="EmpDetailsPortSOAP11Binding" type="tns:EmpDetailsPort">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="EmpRequestOperation">
<soap:operation style="document" soapAction="urn:Emp/EmpRequestOperation"/>
<input>
<soap:body use="literal" parts="part"/>
</input>
<output>
<soap:body use="literal" parts="part"/>
</output>
</operation>
</binding>
<service name="EmpDetailsPort">
<port name="EmpDetailsPortPort" binding="tns:EmpDetailsPortSOAP11Binding">
<soap:address location="http://www.example.com"/>
</port>
</service>
</definitions>


Abstract and Concrete WSDLs


A WSDL document can be divided into "abstract" and "concrete" portions that by convention often are defined in two or more files (where the concrete file imports the abstract one). The abstract elements are <types>, <message>, and <portType> (or <interface> in 2.0); the concrete ones are <binding> and <service>. Separating these two sections allows for maximal reuse and flexibility in defining services.


How to increase heap size of the integrated server in JDeveloper 12c

Sometimes there may be a need to increase the heap size of the integrated weblogic server within JDeveloper. Obviously one can modify the setDomainEnv file in the domain’s bin directory.

Check the blog if you want to increase the heap size using setDomainEnv file.

You can also change it within JDeveloper, you can do this with the help of below steps:

Note: Before applying these setting, all the application should be closed in the jdevloper.

1) Open the application servers using Window -> Application Servers menu


2) Right click on Integrated Weblogic Server -> Properties.

3) A popup will get open. Go the the Launch Settings tab, Click on More Launch Settings -> Environment Variable and click New

Enter the USER_MEM_ARGS in name and -Xms4096 -Xmx4096m -XX:MaxPermSize=4096m  in value field. You can enter the max and min size as per you requirement. Click OK -> Ok -> Ok


4) Now start the server and see the heap size got changed.


Increasing the Java Heap size for a Admin Server & managed server in Weblogic

For better performance, we may need to increase the heap size for each Managed Server in our environment.

As per performance tuning guidelines it is good practice to start Admin server with lower JVM heap size than your other managed servers because the Admin server doesn't required much resources.
By doing this you can utilize the free memory with others where it is needed (This makes sense when you are running Admin and Managed servers on same host)

The size is set in the setDomainEnv.sh file for Linux or setDomainEnv.cmd for Windows, which is in the $DOMAIN_HOME/bin directory.

Steps to set the heap size for Admin and managed server:

1. Shutdown Admin and Managed servers

2. Take backup of setDomainEnv.sh or setDomainEnv.cmd file in case something goes wrong, you can revert the changes. It is best practice to take backup before you made changes in the servers.

3. Open  setDomainEnv file that is under the  $DOMAIN_HOME/bin directory.

4. Copy and paste the below lines in the setDomainEnv file. Make sure you paste the below line at suitable location.

 
#In case of Admin Server

if [ "${SERVER_NAME}" == "AdminServer" ] ; then
USER_MEM_ARGS="-Xms1024m -Xmx1024m -XX:MaxPermSize=512m"
export USER_MEM_ARGS
fi

#In case of osb_server1 Server

if [ "${SERVER_NAME}" == "osb_server1" ] ; then
USER_MEM_ARGS="-Xms512m -Xmx4096m -XX:MaxPermSize=4096m"
export USER_MEM_ARGS
fi


 Xms: The initial heapsize
 Xmx: The max heapsize

5. Start the Admin server and Managed server.

6. Verify the changes via weblogic console or in logs.


Prototype Design Pattern

In the prototype pattern, a new object is created by cloning an existing object. The prototype pattern can be a useful way of creating copies of objects.

One example of how this can be useful is, if an original object is created with a resource such as a data stream that may not be available at the time that a clone of the object is needed.  Another example is if the original object creation involves a significant time commitment, such as reading data from a database or over a network.


Advantages of Prototype Design Pattern


  • It reduces the need of sub-classing.
  • It hides complexities of creating objects.
  • The clients can get new objects without knowing which type of object it will be.
  • It lets you add or remove objects at runtime.

Usage of Prototype Pattern


  • When the classes are instantiated at runtime.
  • When the cost of creating an object is expensive or complicated.
  • When you want to keep the number of classes in an application minimum.
  • When the client application needs to be unaware of object creation and representation.

Let's see with the help of an example how to implement prototype desing pattern. To do so, we'll create a Prototype interface that features a cloning() method.

       
package com.rd;

public interface Prototype {

Prototype cloning();
}

       
package com.rd;

public class WeatherInfo implements Prototype {

private double temprature;
private String state;


public WeatherInfo(double temprature, String state) {
super();
this.temprature = temprature;
this.state = state;
}

public void showWeatherInfo(){
System.out.println(state+" temprature is "+temprature);
}


@Override
public Prototype cloning() {
return new WeatherInfo(temprature,state);
}

}

       
package com.rd;

public class PrototypeDemo {

public static void main(String[] args) {

WeatherInfo weatherInfo = new WeatherInfo(17, "Delhi");
weatherInfo.showWeatherInfo();

WeatherInfo cloneObject = (WeatherInfo)weatherInfo.cloning();
cloneObject.showWeatherInfo();
}

}


Factory Method Pattern

A Factory Pattern or Factory Method Pattern says that just define an interface or abstract class for creating an object but let the subclasses decide which class to instantiate. In other words, subclasses are responsible to create the instance of the class.

Advantage of Factory Design Pattern

  • Factory Method Pattern allows the sub-classes to choose the type of objects to create.
  • It promotes the loose-coupling by eliminating the need to bind application-specific classes into the code. 


Use of Factory Design Pattern

  • When a class doesn't know what sub-classes will be required to create
  • When a class wants that its sub-classes specify the objects to be created.
Let's see with the help of an example. Let's create a MobileFactory class that will return an instance of MobileType(Android, IOS, Windows) object.

package com.rn;

public abstract class MobileType {

public abstract String mobileType();
}
package com.rn;

public enum Mobile {
ANDROID, IOS,WINDOWS;
}
package com.rn;

public class Android extends MobileType {

@Override
public String mobileType() {
return "Gretting from Android, Mobile request taken and in process..";

}

}
    
package com.rn;

public class IOS extends MobileType {

@Override
public String mobileType() {
return "Gretting from IOS, Mobile request taken and in process..";
}

}

       
package com.rn;

public class Windows extends MobileType {

@Override
public String mobileType() {
return "Gretting from Windows, Mobile request taken and in process..";
}

}
       
package com.rn;

public class MobileFactory {

public MobileType prepareMobile(String mobile){
if(mobile.equals(Mobile.ANDROID.toString())){
return new Android();
}else if(mobile.equals(Mobile.IOS.toString())){
return new IOS();
}else if(mobile.equals(Mobile.WINDOWS.toString())){
return new Windows();
}
return null;
}
}
       
package com.rn;

public class ManufactureMobile {

public static void main(String args[]){

MobileFactory mobileFactory = new MobileFactory();
MobileType mobile = mobileFactory.prepareMobile(Mobile.ANDROID.toString());
System.out.println(mobile.mobileType());

mobile = mobileFactory.prepareMobile(Mobile.IOS.toString());
System.out.println(mobile.mobileType());

mobile = mobileFactory.prepareMobile(Mobile.WINDOWS.toString());
System.out.println(mobile.mobileType());
}
}

Run the ManufactureMobile.java and see the output:




Download the project from here

Singleton design pattern in java

Singleton Pattern says that just"define a class that has only one instance and provides a global point of access to it".

In other words, a class must ensure that only single instance should be created and single object can be used by all other classes.

Advantages of Singleton design pattern


Memory saving: Saves memory as object is created only once for all request. Single instance is used again and again.

Usage of Singleton design pattern


It's used in
  • Mutlti threaded application
  • Database application

It is used in logging, caching, thread pools, configuration settings etc.

How to create Singleton design pattern ?


To create the singleton class, we need to have static member of class, private constructor and static factory method.
  • Static member: It gets memory only once because of static, it contains the instance of the Singleton class.
  • Private constructor: It will prevent to instantiate the Singleton class from outside the class.
  • Static factory method: This provides the global point of access to the Singleton object and returns the instance to the caller.


Types of  singleton design pattern


There are two types of singleton design pattern:
  • Early Instantiation: Creation of instance at load time.
  • Lazy Instantiation: Creation of instance when required.

Early Instantiation Example:
package com.rd;

public class SingletonPattern {

private static SingletonPattern object= new SingletonPattern(); //at load time
private SingletonPattern(){

}
public static SingletonPattern getInstance(){
return object;
}

public void sayHi(String name){
System.out.println("Hi "+name);
}
}
package com.rd;

public class TestSingleton {

public static void main(String[] args) {
SingletonPattern object = SingletonPattern.getInstance();
object.sayHi("Ankur");

}

}

Lazy Instantiation Example:

package com.rd;

public class SingletonPattern {

private static SingletonPattern object= null;
private SingletonPattern(){

}
public static SingletonPattern getInstance(){
if(object==null){
object = new SingletonPattern(); // at request time
}
return object;
}

public void sayHi(String name){
System.out.println("Hi "+name);
}
}

package com.rd;

public class TestSingleton {

public static void main(String[] args) {
SingletonPattern object = SingletonPattern.getInstance();
object.sayHi("Ankur");

}

}



Design Patterns in java

Design Patterns are very popular among software developers. A design pattern is a well described solution to a common software problem.

Sensible use of design patterns results in increased code maintainability, since in addition to being a good solution to a common problem, design patterns can be recognized by other developers, thus reducing the learning curve when dealing with a particular piece of code.
Some of the benefits of using design patterns are:

  • Design Patterns are already defined and provides industry standard approach to solve a recurring problem, so it saves time if we sensibly use the design pattern. There are many java design patterns that we can use in our java based projects.
  • Using design patterns promotes reusability that leads to more robust and highly maintainable code. It helps in reducing total cost of ownership (TCO) of the software product.
  • Since design patterns are already defined, it makes our code easy to understand and debug. It leads to faster development and new members of team understand it easily.

Types of design patterns include creational, structural, and behavioral design patterns.

Creation Design Pattern

Creational design patterns provide solution to instantiate a object in the best possible way for specific situations. These includes:
  • Singleton Pattern
  • Factory Pattern
  • Abstract Factory Pattern
  • Builder Pattern
  • Prototype Pattern

Structural Design Pattern

Structural patterns provide different ways to create a class structure, for example using inheritance and composition to create a large object from small objects. These includes:
  • Adapter Pattern
  • Composite Pattern
  • Proxy Pattern
  • Flyweight Pattern
  • Facade Pattern
  • Bridge Pattern
  • Decorator Pattern

Behavioral Design Pattern

Behavioral patterns provide solution for the better interaction between objects and how to provide lose coupling and flexibility to extend easily. These includes:
  • Template Method Pattern
  • Mediator Pattern
  • Chain of Responsibility Pattern
  • Observer Pattern
  • Strategy Pattern
  • Command Pattern
  • State Pattern
  • Visitor Pattern
  • Interpreter Pattern
  • Iterator Pattern
  • Memento Pattern


Follow the blogs for the example:


Singleton design pattern


Factory Method Pattern


Prototype Design Pattern






Kamis, 23 Februari 2017

OSB 12c step by step installation

In the series of blogs, we are gonna to look step by step instructions on how to setup OSB 12c on the linux/unix machine

There are some prerequisites that you need to fulfill before staring the  installation.

Below table summarizes the pre-requisites that need to meet before starting this series of blogs:

S.no
Product
Version
Reference
1
Oracle Database 11g R2
11.2.0.4.0
2
Oracle Weblogic server 12c
12.1.3
3
Oracle OSB 12c
12.1.3
4
Putty

5
XMing

6
JDK
1.7 update 60 or higher

Xming is used to work with GUI if you are doing installation from windows machine.

Follow the blogs to install and configure Oracle Service Bus.
Check the Oracle official documentation to know more in depth:

Preparing to Install and Configure Oracle Service Bus







.

OSB Domain Creation

This blog provides instructions of how to configure a OSB domain by using the configuration wizard.

1) To begin the domain configuration, navigate to the ORACLE_HOME/oracle_common/common/bin directory and start the WebLogic Server Configuration Wizard and run the below command:

./config.sh

2)  On the Configuration Type screen, select Create a new domain. In the Domain Location field, specify your Domain home directory.


3) On the Templates screen, make sure Create Domain Using Product Templates is selected, then select the following templates:

Oracle Service Bus - 12.1.3.0 [osb]

Selecting this template automatically selects the following as dependencies:
  • WebLogic Advanced Web Services for JAX-RPC Extension - 12.1.3 [oracle_common]
  • Oracle Enterprise Manager - 12.1.3.0 [em]
  • Oracle WSM Policy Manager - 12.1.3.0 [oracle_common]
  • Oracle JRF - 12.1.3.0 [oracle_common]
  • WebLogic Coherence Cluster Extension - 12 1.3.0 [wlserver]
  • ODSI XQuery 2004 Components - 12.1.3.0 [oracle_common]


4) On the Application Location screen, select the location in which you want to store your applications associated with your domain. This location is also referred to as the Application home directory. Let the default value as it is and click Next.


5) Enter the password for weblogic user and click Next


6) On the Domain Mode and JDK screen:
  • Select Production in the Domain Mode field.
  • Select the Oracle HotSpot JDK in the JDK field. 


7) Select RCU Data to activate the fields on this screen. The RCU Data option instructs the Configuration Wizard to connect to the database and Service Table (STB) schema to automatically retrieve schema information for the schemas needed to configure the domain.


8) Click Get RCU Configuration when you finish specifying the database connection information. The following output in the Connection Result Log indicates that the operating succeeded:



Verify that the values on the JDBC Component Schema screen are correct for all schemas. If you selected RCU Data on the previous screen, the schema table should already be populated appropriately.


To complete domain configuration for the topology, select the following options on the Advanced Configuration screen:
  • Administration Server: This is required to properly configure the listen address of the Administration Server.
  • Node Manager:This is required to configure Node Manager.
  • Managed Server, Clusters and Coherence
This is required to configure the Oracle Service Bus Managed Server.


On the Administration Server screen, select the drop-down list next to Listen Address and select "All Local Addresses." and click Next


The Node Manager screen can be used to select the type of Node Manager you want to configure, along with the Node Manager credentials.

Select Per Domain Default Location as the Node Manager type, then specify the Node Manager credentials.

On the Managed Servers screen, a new Managed Server named osb_server1 is created:

In the Listen Address drop-down list, select All Local Addresses. Verify that OSB-MGD-SVRS-COMBINED is selected in the Server Group.

If you want to have OWSMPM in a different server from the OSB server, select OSB-MGD-SVRS-ONLY. This targets only OSB but not OWSMPM to the server.


Click Next as we are not doing clustering as part of this article

 Click Next

Use the Machines screen to create a new machine in the domain. A machine is required in order for the Node Manager to be able to start and stop the servers.

Click Add to create a new machine.
  • Specify UnixMachine_1 in the Name field.
  • In the Node Manager Listen Address field, select All Local Address.
  • Verify the port in the Node Manager Listen Port field.
  • The port number 5556, shown in this example. Replace this port number with your own port number as needed.



Use the Assign Servers to Machines screen to assign the Administration Server and Managed Servers to the new machine we just created:


The Configuration Summary screen contains the detailed configuration information for the domain you are about to create. Review the details of each item on the screen and verify that the information is correct.


Screen shows the domain creation progress. Click Next


The Configuration Success screen will show the following items about the domain you just configured:
  • Domain Location
  • Administration Server URL



You must make a note of both items as you will need them later; the domain location is needed to access the scripts used to start the Node Manager and Administration Server, and the URL is needed to access the Administration Server.

Click Finish to dismiss the configuration wizard.

Follow the oracle blog to know more..

Rabu, 22 Februari 2017

OSB Schema Creation Using Repository Creation Utility (RCU)

This blog describes how to create schemas that is mandatory to run Oracle Service Bus successfully. We can use Repository Creation Utility (RCU) to create the necessary schemas.

The RCU or the Repository Creation Utility is an Oracle utility that creates the schemas required for Oracle products to work along with the Weblogic server and OSB. We have to create the schemas needed by OSB using this utility. The RCU will be run from the Oracle middleware directory where the weblgic server installed.

In my previous blog i have installed the Oracle Service Bus 12.1.3.

RCU comes bundled with Oracle SOA Suite 12c installation and can be run from the $MIDDLEWARE_HOME/oracle_common/bin folder. For windows its rcu.bat and for Linux its rcu.sh.

Before installation, make sure database is up and running.

1) Install Xming on the machine from where you want to make the installation. Xming is used to work with the user interface during installation.

2) Xming must be up and running on the machine from where you want to make the installation

3) Enable GUI using putty via Connection-> SSH->X11




4) Login into the putty with the suitable privileges. Navigate to oracle_common/bin and execute RCU


5) Click Next on the welcome screen


6) Select “System Load and Product Load” under “Create Repository” section and click Next.

There are more options compared to the previous version 11g.

Select a Method of Schema Creation
  • System Load and Product Load: Use this option if you have SYSDBA credentials.
  • Prepare Scripts for System Load: This option will generate an SQL script, which can be provided to your database administrator.
  • Perform Product Load: Select this option to load and create procedures, functions, tables, indexes and other objects within schema and run any action if you have a user with limited database privileges.
  • Drop Schema: Drop Schemas that are already created in the database.


7) Provide the database connection details for RCU to connect to your database. You must provide the following information:
  • Database Type
  • Host Name
  • Port
  • Service Name
  • Username
  • Password
  • Role


8) Select Create new prefix, specify a custom prefix(OSBPROD), then select the SOA Suite schema. This will automatically select SOA Infrastructure, along with the following schemas as dependencies:

  • Metadata Services
  • Audit Services
  • Audit Services Append
  • Audit Services Viewer
  • Oracle Platform Security Services
  • User Messaging Service
  • WebLogic Services



 9) Provide a password for your schema and click Next


10) Specify the custom variables for the SOA Infrastructure schema. For the Oracle Service Bus standard installation topology, accept both default values for the Database Profile (SMALL) and Healthcare Integration (NO). But we have changed Database Profile value to MED as per the requirement.

Remember: you can use this screen for

The Database Profiles custom variable SMALL or MEDIUM and LARGE.
  • If you enter SMALL or MEDIUM as the database profile, that means the RCU performs no special actions when the schema is created. this options should be selected for informational purposes only.
  • If you enter LARGE as the database profile, that means the RCU creates the SOA Infrastructure schema using an Oracle database feature called Interval Partitioning. which  improves the efficiency of the database when large numbers of composite applications must be processed.
  • If you have Healthcare Integration set the value to Yes. If you do not set this value now, the Healthcare Integration user interface will not work properly 


11) Verify the default table spaces and click Next. Customize table spaces by clicking Manage Table Spaces if required.


12) Click OK to confirm table space creation.


 13) Verify the details on the summary screen and click Create


14) Schema creation is in progress


15)  Verify the status of schema creation for each component and click close.


For more information, please look the oracle blog

Oracle Server Bus installation

This blog provides instructions for installing and running the Oracle installer for Oracle Service Bus 12.1.3.

Oracle Service Bus 12.1.3 supports Oracle JDK 1.7.0_55+ version. Oracle JDK can be downloaded from the Oracle Software Delivery Cloud.

This article assumes you have an existing server (real or virtual) with either Oracle Linux 5.x or 6.x installed on it.

Let's see how to install, Oracle Service Bus 12.1.3 on linux machine.

1) Install Xming on the machine from where you want to make the installation. Xming is used to work with the user interface during installation.

2) Xming must be up and running on the machine from where you want to make the installation

3) Enable GUI using putty via Connection-> SSH->X11



4) Login into the putty with the suitable privileges, navigate to the location where you have kept the Oracle Service Bus installer and run the below command from putty.

/data/jdk/jdk1.7.0_60/bin/java -d64 -jar fmw_12.1.3.0.0_osb.jar

5) After successfully extracting of .jar file, Oracle Service Bus installation will be started as shown in the following screen shot. Simply click the OK  button:


5) Upon execution, the installer starts preparing the OUI install program and displays the Welcome screen. Simply click Next


6) On Installation Location, provide a location for the weblogic home where you have installed weblogic server


7) Click Next


8)  The installer runs Prerequisite Checks and shows progress. If the checks are successful, click the Next button.

9) The screen summarizes the component that will be installed as part of the Oracle Service Bus installation. Click Install


10) As the installer begins a progress bar is displayed on the screen and displays the new features of the Oracle Server Bus 12c.


11) Click Finish on the Installation Complete screen



Oracle Weblogic Server installation

This blog provides instructions for installing and running the Oracle installer for Oracle WebLogic 12.1.3.

Oracle WebLogic 12.1.3 supports Oracle JDK 1.7.0_55+ version. Oracle JDK can be downloaded from the Oracle Software Delivery Cloud.

This article assumes you have an existing server (real or virtual) with either Oracle Linux 5.x or 6.x installed on it.

Let's see how to install, Oracle Weblogic Server 12.1.3 on linux.

1) Install Xming on the machine from where you want to make the installation. Xming is used to work with the user interface during installation.

2) Xming must be up and running on the machine from where you want to make the installation

3) Enable GUI using putty via Connection-> SSH->X11


4) Login into the putty with the suitable privileges, navigate to the location where you have kept the weblogic installer and run the below command from putty.

/data/jdk/jdk1.7.0_60/bin/java -d64 -jar fmw_12.1.3.0.0_infrastructure.jar

5) After successfully extracting of .jar file, Oracle Weblogic installation will be started as shown in the following screen shot. Simply click the OK  button. This is the inventory path.



5) Upon execution, the installer starts preparing the OUI install program and displays the Welcome screen. Simply click Next


6) On Installation Location, provide a location for the home for this installation of WebLogic.


7) On Installation Type, select the type of installation you wish to perform.

In this blog , it is assumed you select the Fusion Middleware infrastructure type, which installs the Oracle WebLogic. However you can choose different option as well. Click Next


8) The installer runs Prerequisite Checks and shows progress. If the checks are successful, click the Next button.




9) The Configure Security Updates window appears. Enter your email address and My Oracle Support password to receive security issue notifications via email. If you do not wish to receive notifications via email, deselect "I wish to receive security updates via My Oracle Support". Click Next to continue. Click "Yes" in the confirmation window to confirm your preference.




10) The screen summarizes the component that will be installed as part of the weblogic server installation. Click Install


11) As the installer begins a progress bar is displayed on the screen and displays the new features of the Oracle WebLogic 12c.


12) Click Finish button