Sep 30, 2017

Installing Oracle BPM Quick Start 12.2.1.3 & Configuring a Standalone Domain


How to quickly start developing and testing your Oracle BPM 12c applications ?

Long story short we will need the below:
  1. JDK 8 - x64: Java SE Development Kit 8u144
  2. Oracle BPM Suite: BPM Suite 12.2.1.3
  3. create_StandaloneDomain.bat 
  4. startWebLogic.cmd
For all the below steps make sure you will use a "non empty space" location path.
Create 2 main folders: one for the JDK and one for the BPM Suite. Later, inside the main BPM Suite folder we will create more folders. The idea is to keep all the required future resources as separate as possible.

The  BPM folder structure should look like the below one:
  • 1) root folder: F:\OracleBPMSuite12213\FMW\FMW_Home  [or a different name]
inside this "root folder" create 2 more folders:
  • 1.1) Jdev_BPM_Binaries_Home - here we will keep the binaries and we will use it during the next "Install BPM Suite 12.2.1.3" step.
  • 1.2) BPM_Domains - here we will create the root folder for the future domain. Inside we can create a new folder [but this is only optional and it helps if in the future more domains will be created] like "leo_domain_home". We will use it during the next "Configuring the Standalone Domain" step. The next folders we will create  here are:
  • 1.2.1) leo_domain   [or a different name]
  • 1.2.2) leo_application [or a different name]
  • 1.2.3) Adapter_Plans [we will use this folder in some future tutorial]. Inside, create a new folder: 
  • 1.2.3.1) DbAdapter - here we will save the future "Plan.xml" file once we will start working with a Database.



Download and install the latest available JDK 8

Note: Make sure you install JDK in a "non empty space" location.
e.g.  C:\Java_64\Java_8_144_b32\JDK
Do not use the "C:\Program Files" for the JDK location.
This is a simple "Next->Next" step; no need for more details.

Download BPM Suite 12.2.1.3

Once done, you will end up with 2 zip files:  fmw_12.2.1.3.0_bpmqs_Disk1_1of2.zip & fmw_12.2.1.3.0_bpmqs_Disk1_2of2.zip.
Extract both zip files to the same location.
e.g.  F:\OracleBPMSuite12213

Install BPM Suite 12.2.1.3

First of all, make sure you select "Run as Administrator" when opening the Command Prompt.
Note: This helps so  we will have no  error message like the next one: "Unable to access or modify the system registry.  Select Run as Administrator when opening the Command Prompt and try again."

Inside the cmd window, go to the JDK/bin location:
e.g.  cd C:\Java_64\Java_8_144_b32\JDK\bin

Run the "java -jar" pointing to the "fmw_12.2.1.3.0_bpm_quickstart.jar"

e.g
java -jar F:\OracleBPMSuite12213\fmw_12.2.1.3.0_bpm_quickstart.jar

Some seconds later,  you will see some messages like the below:

Launcher log file is . . . . . . . . . . . . . . . . . . . . . . . . .
Extracting the installer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Done
Checking if CPU speed is above 300 MHz.   Actual 2496    Passed
Checking monitor: must be configured to display at least 256 colors.   Actual 4294967296    Passed
Checking swap space: must be greater than 512 MB    Passed
Checking if this platform requires a 64-bit JVM.   Actual 64    Passed (64-bit not required)
Checking temp space: must be greater than 300 MB.   Actual 207124 MB    Passed
Preparing to launch the Oracle Universal Installer from . . . . . . . . . . . . .
Log: . . . . . . . . . . . . .

From here is all about some "Next->Next" steps; the main step is where you define the new ORACLE_HOME location. In this new location/ folder you will have all the  BPM Suite 12.2.1.3 binaries. We will use this ORACLE_HOME location in the next step.







 





  
Note: If you see warnings, ignore them and just click "Next". This installation will be used for test only so all fine even if you use a non certified combination of products [OS or Java].











Note: No need to start JDeveloper.

All done.

Even if the "Standalone Domain" is a good option to use, the recommendation is to implement the steps per the "SOA-BPM 12c domain with Oracle Database XE":
  1. Create the RCU schemas
  2. Create the BPM 12c domain 

Not using the default Java DB for the future domain can really help you. For example there will be nor more errors when deploying your future BPMN projects. The reason behind all such errors is that Java DB instance will not have all the required schemas implemented - this is why we need to run the RCU tool to make sure all schemas are created. 

You can still check the below details and  create  a standalone domain if  only SOA projects will be used.  For BPMN projects you need the RCU schemas per the "SOA-BPM 12c domain with Oracle Database XE".


Configuring the Standalone Domain

Download the below file and edit to reflect your environment:
Note: The file will ask you to define the  "ORACLE_HOME" & "JAVA_HOME" and will run the "qs_config.cmd" from the "%ORACLE_HOME%\oracle_common\common\bin" folder.

Once done with the update, run the create_StandaloneDomain.bat and follow the below pictures.
You can use the same values as below or define your own custom values.






Name: weblogic
Password: welcome1

The above credentials are very important since we will use  them for the future domain console or to create a link between the new domain and the JDeveloper.

 



Note: Make sure you uncheck the "Start Domain" box.

Download the below file and edit to reflect your environment:


Note: The file will ask you to define the  "DOMAIN_HOME" & will define new Java heap size for the future server to use [-Xms4096m -Xmx4096m] and will run the "startWebLogic.cmd" from the "%DOMAIN_HOME%\bin" folder.

Run the startWebLogic.cmd.   You will see different messages like below:

*********************************************************
** Setting up SOA specific environment for win...
********************************************************* 
 *****************************************************
** End SOA Specific environment setup  for win.
*****************************************************
Starting WLS with line: ....

<Server state changed to STANDBY>
<Server state changed to STARTING>

SOA Platform is running and accepting requests. Start up took 168720 ms.

Once  you see that "SOA Platform is running and accepting requests" then the server is up and running. Now you can go and open the Admin Console:

http://localhost:7601/console/

Note: The above  port is based on the  value you defined  in the "Administration Server Listen Port":

  

 You will use the "weblogic" +  "welcome1"  credentials:




Click on "Environment" -> "Servers" to see the details; you can also "Customize this table" to include more details about the new server:




All done.



Link the JDeveloper with the new domain

 Go into the ORACLE_HOME\jdeveloper location and run the jdeveloper.exe.
Note: You can even create a Shortcut for the " jdeveloper.exe"  and place this shortcut  on the same level [folder] as the previous "startWebLogic.cmd". This will help you to have the same location both to start the JDeveloper and the server.

Once JDeveloper is open, click on "New Application"  and select General -> Connections ->  Application Server Connection:



From here go with the custom values - you will use the previous values you defined during the "Configuring the Standalone Domain" step:








Note: Make sure the real "WebLogic Domain" name is used.



Note: Test Connection...

 
 


"Finish" and we are done.

At the end of all the above steps we have now both the JDeveloper [design time] and the WLS BPM server [run time] to go and create the new BPM 12c projects and to test them.

Sep 27, 2017

SOA-BPM 12c domain with Oracle Database XE



Once you are done with the BPM Suite Quick Start Installation 12c step you will end up with all the binaries you need to have a 100% "ready to use " Dev environment.

Based on the Oracle BPM Suite Downloads page we can see that this installer allows you to install a development or evaluation environment quickly on a single host computer. It includes Oracle BPMN Suite, Oracle SOA Suite, Oracle Service Bus, Oracle JDeveloper, and integrated WebLogic Server and Evaluation Database [aka Java DB].

The 12c pattern is to go very fast from the install step to  actually having  a run-time environment and  test the composites very fast.

Now,  for people going with the 11g patterns there might be the old question: what about using the Oracle Database XE as the RCU repository for the future domain.... And the answer is yes 😉

Note: The below details should be used only for a future  DEV domain and never for a PROD domain ! In addition, even if Oracle XE DB can be used the recommendation is to use an Oracle Database 12c. The best is to use an Oracle Database 12c even as an RCU repository for the future custom BPM Suite Quick Start domain.

Long story short we will need the below:
  1.  Oracle BPM Suite: BPM Suite 12.2.1.3
  2.  Oracle Database 11g Express Edition  
We will skip the "Next-> Next" steps for the BPM Suite Quick Start; this step is  a very straightforward one once you  click Enter for the
"java -jar fmw_12.2.1.3.0_bpm_quickstart.jar".

 

Note: For details related with the BPM Suite Quick Start 12c binaries, please check the "Installing Oracle BPM Quick Start 12.2.1.3 & Configuring a Standalone Domain" -> "Install BPM Suite 12.2.1.3" .

In addition, you will need the Oracle DB for the BPMN itself; not so much for the SOA projects but more for the BPMN projects. The reason  is the below error you will have it when deploying a BPMN project on a domain using the default Java DB:

<Oct 12, 2017 > <Error> <oracle.soa.services.workflow.persistency> <BEA-000000>  exception.code:30257
exception.type: ERROR
exception.severity: 2
exception.name: Error while Querying workflow task metadata.
exception.description: Error while Querying workflow task metadata....
Caused By: java.sql.SQLSyntaxErrorException: Column 'WFTM.PACKAGENAME' is either not in any table in the FROM list or appears within a join specification and is outside the scope of the join specification or appears in a HAVING clause and is not in the GROUP BY list. If this is a CREATE or ALTER TABLE  statement then 'WFTM.PACKAGENAME' is not a column in the target table.

The below steps will target a very simple DEV domain: 1 server only with BPM and SOA. We  will ignore for now the OSB. 
 

Create the RCU schemas

Make sure that Oracle XE is up and running.
Note: If you already have an  Oracle 12c Database instance then you can follow the same below steps to create the RCU repository.

Go into the "Jdev_BPM_Binaries_Home\oracle_common\bin" and click on the "rcu.bat".







 

Note: My port is "1522" for the Oracle XE since the default "1521" is already used by my Oracle Enterprise Edition DB.

 


Note: We will "Ignore" all such messages since by default the Oracle XE Database should not be used for a BPM-SOA 12c domain.







Note: We can use  the "BPM12213" or "DEV" or "TEST". The idea is not to end up using an already defined "prefix".




Go with "welcome1" for all schemas:























Note: We will "Ignore" all other future error messages.







All done !

Now that we have the RCU repository we can go and define/create the BPM 12c domain.

Create the BPM 12c domain

Go into the "Jdev_BPM_Binaries_Home\oracle_common\common\bin" and run the config.cmd.

Once more, we will keep it as simple as possible: 1 server only and only SOA-BPM.

Define a new root location/ folder   for the future domain. It can be for example: "BPM_Domains\XE_TEST_DOMAIN".
Keep the new folder far from the FMW Binaries location !

In this new root folder create 3 new folders:

  1. test_domain  -> this will be used in "Page 1"
  2. test_application  -> this will be used in "Page 4"
  3. test_nm [or test_nodeManager] -> this will be used in "Page 13"
You will understand all the above 3 folders rule idea after less than 1 minute 😉

 Back to the wizard now....

 

The location is the above "test_domain" one.

Note: This "Domain Location" will also define the new domain name so if you want a different name then go with a different name for the last folder: "X_domain" or "BPM_domain" and so on...



Select only the "Oracle BPM Suite" - all other options will be automatically selected. Next






As  we can see the "_application" folder is now used.



You can always go with "welcome1".



Keep it on development and you can use the already defined JDK or you can even select a new JDK8.



Make  sure you update here the DB host, service name, port and password. For the schema use your own prefix but keep the "_STB" !  Get RCU Configuration and Next.





Double check that all fine - no need to go with updates here since this is why the previuse "_STB" test was done.



There should be no errors here and Next....







Select the above 3  options.




Define a port for the "http" and "https" options and use "localhost".

Since we want only 1 single server we will select the above "SOA-MGD-SVRS" option !




We can go again with the "welcome1" password and use the "_nm" folder.



Remove the current "soa_server" and keep this list empty. Next



Next







You can use the default Coherence port or change the number to something new...Next.





Since is 1 single server no real need for this step but you can keep the Machine and use "localhost" + the default port or a new one... Next





Place the "AdminServer"  below the Machine.
Next -> Next from here:







Create !









DO NOT  "Start Admin Server" !

Go inside the DOMAIN_HOME\bin folder [XE_TEST_DOMAIN\test_domain\bin] and  open the "setDomainEnv.cmd" text file in Notepad++ and add the below:


set USER_MEM_ARGS=-Xms4096m -Xmx4096m %MEM_DEV_ARGS% %MEM_MAX_PERM_SIZE%

This will define a 4 GB heap size for the server. If you want less or even more then go with a different value. Make sure both Xms and Xmx have the same value.

Where to add the above ? You can place the new details below the "set EXTRA_JAVA_PROPERTIES=-Djavax.management.builder.initial" row.

Now run the "startWebLogic.cmd" and you will have the server up and running.

Once the server is up then go into the main 2 Consoles:

  • http://localhost:7321/console
  • http://localhost:7321/em
Note: Of course the host and port will be based on your own values defined.

What if you do not remember them ?

 Open the "config.xml" file from the test_domain\config folder and check for the "<listen-port>" and "<listen-address>".

Note: make sure you check the <listen-port> defined outside the "<ssl>" element.

Username & password: weblogic+ welcome1 [or whatever the password you defined].

Now that you have the new domain you can link it with the JDeveloper tool per the details from the "Installing Oracle BPM Quick Start 12.2.1.3 & Configuring a Standalone Domain" -> "Link the JDeveloper with the new domain".