Posting Code Blocks with your free WordPress Blog

February 27, 2015

Please visit https://en.support.wordpress.com/code/posting-source-code/ for detailed information about how to post source code blocks with your free wordpress.com blog.
A tip from me: Have a look at the source code of wordpress support page opened ;) you “MAY” get more ideas. Okay I didn’t say that!
Let us look at some samples:

1

Will produce the below, syntax highlighted code block for you

your code here

2

Refer the above image, the usage of additional tags within the code tag will syntax highlight a short VB script, avoiding the gutter (line numbers)

Public Class Form1
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Dim xmlFile As XmlReader
        xmlFile = XmlReader.Create("MyVMS.xml", New XmlReaderSettings())
        Dim ds As New DataSet
        ds.ReadXml(xmlFile)
        DataGridView1.DataSource = ds.Tables(0)
        DataGridView1.Columns(0).HeaderText = "Id"
        DataGridView1.Columns(1).HeaderText = "VM Name"
        DataGridView1.Columns(2).HeaderText = "Shutoff Mode"
  
    End Sub
End Class

Avoid leaving spaces between tags inside “code” tag, as doing so could totally mess-up the code blocks. Just put everything tightly spaced like following

language=”VB” gutter=”false”, there are no spaces between language & = or = & the opening ”

The language (or lang) parameter controls how the code is syntax highlighted. The following languages are supported:

  • actionscript3
  • bash
  • clojure
  • coldfusion
  • cpp
  • csharp
  • css
  • delphi
  • erlang
  • fsharp
  • diff
  • groovy
  • html
  • javascript
  • java
  • javafx
  • matlab (keywords only)
  • objc
  • perl
  • php
  • text
  • powershell
  • python
  • r
  • ruby
  • scala
  • sql
  • vb
  • xml

If the language parameter is not set, it will default to “text” (no syntax highlighting).

Code in between the source code tags will automatically be encoded for display, you don’t need to worry about HTML entities or anything.

Configuration Parameters

The shortcodes also accept a variety of configuration parameters that you may use to customize the output. All are completely optional.

  • autolinks (true/false) — Makes all URLs in your posted code clickable. Defaults to true.
  • collapse (true/false) — If true, the code box will be collapsed when the page loads, requiring the visitor to click to expand it. Good for large code posts. Defaults to false.
  • firstline (number) — Use this to change what number the line numbering starts at. It defaults to 1.
  • gutter (true/false) — If false, the line numbering on the left side will be hidden. Defaults to true.
  • highlight (comma-seperated list of numbers) — You can list the line numbers you want to be highlighted. For example “4,7,19”.
  • htmlscript (true/false) — If true, any HTML/XML in your code will be highlighted. This is useful when you are mixing code into HTML, such as PHP inside of HTML. Defaults to false and will only work with certain code languages.
  • light (true/false) — If true, the gutter (line numbering) and toolbar (see below) will be hidden. This is helpful when posting only one or two lines of code. Defaults to false.
  • padlinenumbers (true/false/integer) — Allows you to control the line number padding. true will result in automatic padding, false will result in no padding, and entering a number will force a specific amount of padding.
  • title (string) — Set a label for your code block. Can be useful when combined with the collapse parameter.

regards,

rajesh


Windows7bugs | Script Copying Instructions

November 9, 2014

Hello guys

Once in a while we receive complaints about scripts copied from our blog causing issues. We regret those issues and apologizing to everyone who suffered due to. Our blog is totally free until date and unfortunately, different browsers behave differently while parsing the code tags.

We were using

 [ code ] [ /code ]

tag for long time, found that few scripts getting totally messed up with double quotes being showsn and &quote etc. This has forced us to start using

[ sourcecode ] [ /sourcecode ] 

and realized if we have more than one block of scripts, the 2nd and consecutive scripts blocks being totally garbled.

With reference to above said, we request you to kindly make sure that the scripts those you copy from our posts are thoroughly checked for special characters prior applied. Especially registry related scripts as such attempts could completely wreck your Windows registry databases.

We hope you read us clearly and continue supporting us.

Regards,


Linux LVM (Logical Volume Manager) | AKA Spanned volumes

February 3, 2016

Hi guys

We’ve a EBS instance that totals almost 1TB physical size hosted on a high end IBM server & periodically we clone the instance to insure that the cold backups are reliable for DR purposes.

Recently we’ve decommissioned one HP ML110 G6 server with single xeon processor, 8GB memory that was dedicated for obsolete bio-metric monitoring and reporting running Windows 2003. I thought of using the same server for future restorations of EBS cold backups & realized that the server doesn’t support RAID 5 & moreover the built-in RAID is categorized under “fakeRAID”, which uses the built-in RAID technology, depending upon the CPU for the crippled RAID processing.

Using the HP Pavilion Easy Setup CD, I created an array and to my total disappointment found that Linux doesn’t read the fakeRAID while an installation is attempted.

The above were attempted because the ML110 G6 had 4 numbers of 500GB SATA HDD drives and I needed 1TB on a single volume. My database instance size as on date is 493GB, which would scream lack of space on a single 500GB partition. So I started reading about software RAID, which was too complex to setup with my minimal exposure to Linux. Further readings brought me to LVM (Logical Volume Manager) using which one can create spanned volumes as like in Windows.

Before proceeding further, please be aware of the RISKS associated with spanned volumes AKA LVM with multiple drives

How to?

We’ll consider a fresh installation of CentOS6/RHEL6/OEL6 for the exercises

Source thread (Please, please read)

Hardware: HP ML110 G6, 8GB memory, 4x500GB SATA HDD

Linux installation details

Installed Linux on HDD#1 (/dev/sda), 10GB boot, 4GB Swap, 110G / & balance as extended partition

Now, I am left with 3 HDDs, which are “untouched”, ie, no partitions are made

  1. /dev/sdb
  2. /dev/sdc
  3. /dev/sdd

As I have mentioned, my requirement was to have 1TB of storage for the cloning purposes, hence I chose 2x500GB (/dev/sdb, /dev/sdc)

First I created partitions using “fdisk”, the age old command line utility, even though better structured GUI is available with latest Linux distributions

Login to terminal as “root”

$fdisk /dev/sdb

n (new parition) -> p (primary partition) -> 1 (number of partitions) -> w (Write changes)

Repeated the same for /dev/sdc

$fdisk /dev/sdc

n (new parition) -> p (primary partition) -> 1 (number of partitions) -> w (Write changes)

We’ll use the following 3 commands to create our LVM

  1. pvcreate
  2. vgcreate
  3. lvcreate

create two physical volumes

$pvcreate /dev/sdb1 /dev/sdc1

create one volume group with the two physical volumes

$vgcreate VG_DATA /dev/sdb1 /dev/sdc1

create one logical volume

$lvcreate -l 100%FREE -n DATA VG_DATA

create the file system on your new volume

$mkfs.ext4 /dev/VG_DATA/DATA  #You may use ext3, based on your Linux distribution

$mkdir -p /u01

mount the volume (mount /dev/VG_DATA/DATA /u01)

That’s all folks, I have created my1st LVM aka spanned volume in Linux.

If you are planning to create logical volumes using multiple disks, be aware of the risks. You may lose millions worth data if no proper backups are taken and recovery could be a nightmare!

Not limited to total data loss, performance issues also should be considered, especially when such a setup hosts databases which require faster I/O.

for Windows7bugs

rajesh


Windows 10 | Hack to dirty desktop

January 17, 2016

 

Hi guys

Starting from Windows 8, Microsoft has clearly switched their target consumers to mobile users and snatched the clean desktop experience from power users.

Windows 10 is basically a huge PHONE OS, however, significant efforts were made by Microsoft to reduce the gap between a mobile OS and pure desktop experience by the addition of a semi effective start button. Yet it satisfy the frustrated me? Not entirely

For example, I have multiple versions of Oracle developer installed in my box, starting from Developer 6i, Developer 10g & Developer 11g in the same box & almost all elements within the developer stacks share the common names like forms developer, reports builder etc. Using the jump list was NEVER my cup of tea as it takes time, efforts to distinguish. Though the new start menu allows one to drag and drop the apps to desktop, send to desktop is a sure missing option which could truly confuse a person who switched from XP/7 recently.

I’m responsible a middle size IT infrastructure and was promoting the usage of classicshell, the free start button/ start menu alternative that brings a kind of Windows XP/7 style start button/menu experience back to both Windows 8.x and Windows 10 OS.

image

You can obtain ClassicShell here

With periodic updates, this freeware remains one of the best solutions for crippled start menu available with Windows 10 OS.

Install it, Open Classic start menu settings, check “Show all settings” & make the few settings as seen with the below images and you are all ready to enjoy a cleaner desktop experience

image

image

You can setup the most comfortable start menu style here

image

Skin allows you to disable the frames around the icons.

image

Once the above you are all good to start experiencing the classic start menu on your Windows 8/10 box

for Windows7bugs

rajesh


Oracle Weblogic | Reports 11g | cgicmd.dat | Key mapping issues

January 16, 2016

 

Hi guys

I’ve been installing and configuring Weblogic 10.3.6 & 12c (recently) and came across a peculiar issue, where the reports server failing to map the keys I’ve specified with cgicmd.dat file.

The best I could recollect from my memories was, I only added the keys to a single instance of cgicmd.dat file, as there are many instances of the same file once after classic domains are created.

Under linux installations you will find the file in 3 different locations once after the domain created and WLS_REPORTS server started.

 

[root@wls Middleware]# find /u01/Oracle/Middleware/ -name cgicmd.dat
/u01/Oracle/Middleware/user_projects/domains/ClassicDomain/servers/WLS_REPORTS/tmp/_WL_user/reports_11.1.2/uxabaw/configuration/cgicmd.dat
/u01/Oracle/Middleware/user_projects/domains/ClassicDomain/config/fmwconfig/servers/WLS_REPORTS/applications/reports_11.1.2/configuration/cgicmd.dat
/u01/Oracle/Middleware/Oracle_FRHome1/reports/conf/cgicmd.dat

[root@wls Middleware]#

image

Under usual scenarios you need to add the keys ONLY to the cgicmd.dat file present in

/u01/Oracle/Middleware/user_projects/domains/ClassicDomain/config/fmwconfig/servers/WLS_REPORTS/applications/reports_11.1.2/configuration/

folder.

With my latest installations of 12c & 11g, I had issue getting the keys mapped properly & after loads and loads of googling I decided to add the same key to all available instances of cgicmd.dat one after another.

So I started with the first instance of cgicmd.dat file, that was found under

/u01/Oracle/Middleware/user_projects/domains/ClassicDomain/servers/WLS_REPORTS/tmp/_WL_user/reports_11.1.2/uxabaw/configuration/cgicmd.dat

which is WLS_REPORTS temporary folder. I added the key, restarted the WLS_REPORTS server & the key was mapped as required!

This could be a nasty bug because I don’t remember adding the keys to multiple files while I tried out forms and reports 11g Release 2 almost 2 years back!

The most interesting part of the entire exercise is, once the key mapping happens successfully, you can remove the keys from cgicmd.dat file that in the temporary location and everything works! Could be the magic of cache Winking smile

So if you come across key mapping issues, you know where to look at for a quick fix.

for Windows7bugs

rajesh


Oracle 12c | Reports | Standalone server

January 14, 2016

 

Hi guys

One of my close associates & a person I respect as a legend, Iudith said the following with one of her recent mails to me:


Regarding all this WebLogic issue … I have a feeling that Oracle “used a cannon for killing a fly” ………
Maybe that complicated setup creates an environment which can support all kinds of other products,I really don’t know because I have mostly just heard about it.

From Oracle’s perspectives, this approach may provide them better scalability, however how far such complexities will appease the developer crowd remains a big concern.

While the modernization of Oracle forms and reports, the maximum sought legacy development means remain a frequently sought and discussed topic, Oracle is definitely NOT doing enough to regain the confidence of mortals who spent decades developing, especially by making each and every newer versions difficult to install and setup.

Less said, let us go back to the topic, how to create and configure a standalone report server instance for 12c environment. This is my 3rd post in a row about installing and configuring 12c products related to Forms and Reports

I can’t exactly remember which document says “In-process reports server has better accountability against a standalone reports instance”. I have referred minimum couple of dozen 12c related documents and tens of blogs to setup stuffs. Without arguing whether in-process server or a standalone instance is better to cater the reports services, let me list the activities one have to perform in order to setup

  1. Create a reports tools instance (Mandatory, if you are planning to use the same box for reports development)
  2. Create a reports server instance (OPTIONAL, only if you want to host a standalone reports instance)

Start WLST(Weblogic Scripting Tool) console, and execute the below commands one after another (Make sure the node manager & the Weblogic admin server services are already started)

 
connect("weblogic","password", "localhost:7001") 
createReportsToolsInstance(instanceName='rptools1', machine='AdminServerMachine') 
createReportsServerInstance(instanceName='repsvr_MYMACHINENAME', machine='AdminServerMachine') 
exit() 

Once successfully completed, restart the WLS_REPORTS application using the weblogic admin console. Once bitten, twice shy…I always restart the weblogic admin server and other servers to make sure nothing is broken in between…(paranoid I must be)

Restarting the WLS_REPORTS server causes the weblogic server to configure the newly created instances of reports tools and reports instance. A successful completion let you

  1. Start using the reports builder
  2. Access the standalone reports server instance

You need minimal configurations for the standalone reports server instance. Just setup the reports (.rdf files) path, disable the security elements and you are online!

Assuming you have already configured the weblogic server components following the previous posts, switch to the reports instance configuration folder

eg: D:\Weblogic\Middleware\Oracle_Home\user_projects\domains\base_domain\
config\fmwconfig\components\ReportsServerComponent\repsvr_RAJESH-PC

Where repsvr_RAJESH-PC is the name of the reports instance I have created.

image

You need to modify the “rwserver.conf” file, please check the below image for details

image

Save the file and restart the WLS_REPORTS server, so that the last modifications are in place!

Now we have to start the reports instance.

Switch to DOMAIN_HOME\bin folder

eg: D:\Weblogic\Middleware\Oracle_Home\user_projects\domains\base_domain\bin

and run startComponent.cmd repsvr_RAJESH-PC

Please check the below image for details

image

Once the report server instance starts successfully, you are all set to.

Calling the new instance

http://rajesh-pc:7777/reports/rwservlet?usr&server=repsvr_RAJESH-PC&desformat=PDF&destype=cache&report=LIST_BANKS&paramform=Yes

That’s all folks, as you could see OHS automatically maps the new reports instance and directs the jobs to it.

for Windows7bugs

rajesh


Oracle 12c | Forms & Reports | Configure for deployment(s)

January 13, 2016

Hello guys

A week back I posted the procedures tested at my end (I’m excusing myself with this statement because 12c total setup could be a painful experience and may NOT be successful for many, even after following line by line instructions) here

This time I am going to list few instructions those will help you to deploy your existing forms & reports based applications to newly built 12c environment. The ONE pleasant surprise I came across during the deployment was, if your forms and reports were built and compiled used 11g R2 (not sure about 11g R1), no need to recompile them once again for the 12c deployment.

So last time we finished the topic discussing how to install and configure the 12c database, Weblogic Server, forms & reports and stopped at accessing the Oracle Enterprise Manager for Weblogic server.

If you are familiar with Weblogic Server 10 & Forms and reports 11gR2, creating a classic domain was much simpler compared to 12c. OPMN configurations were automated & once the relevant paths were setup, you are almost ready to start using the infrastructure for applications. However 12c requires more efforts from one to establish the same.

I’ll start with Oracle HTTP Server (OHS instance) that we created during the base_domain configurations. OPMN is not anymore used by Oracle 12c, hence the OHS.

As I always said, I’m not a weblogic guru, just another enthusiast who wants to try out newer products as a part of learning. Most of the stuffs I suggest here are “as how I managed to get it working”. Hence, if you find anything ridiculous or non-standard, please let me know through the comment section.

As you may already aware, forms and reports applications are deployed using own PORTs, for example WLS_FORMS server uses the port 9001 & WLS_REPORTS uses 9002 (default installation). However while you want to deploy an application, the users should be accessing both through a common interface, especially when the reports are called from forms using Web.Show_Document method. An example how the reports are called from a form using the above said method is like following:

Web.Show_Document(‘/reports/rwservlet?userlogin&desformat=PDF&destype=cache&report=’||:CTRL.REPORT_NAME||’&paramform=Yes’,’_new’);

“/reports/rwservlet?” assumes the servlet is called from the current root, for example, if you started the forms applications using the default deployment URL, it would look like the below

http://rajesh-pc:9001/forms/frmservlet?config=balaji

and an attempt to call a report from one of the forms will generate an url like following

http://rajesh-pc:9001/reports/rwservlet?userlogin&desformat=PDF&destype=cache&report=LIST_BANKS&paramform=Yes

causing URL not found error because there are NO reports application deployments at http://rajesh-pc:9001/

The one possibility to address this would be by hardcoding the root part of the url, which I never tried. However, exposing the ports of your forms and reports application servers may not be a good idea. Here, OHS instance comes in picture.

All you need to do is to register the forms and reports applications with the OHS and once the OHS instance restarted, you can start calling both forms are reports through the common URL, for example like following

http://rajesh-pc:7777/forms/frmservlet?config=balaji

7777 is the default OHS instance port, which you can change to a free port according to your requirements. You may even use port 80 using OHS (I will not discuss about changing OHS port to 80, there are many decent posts already available all over internet)

Let’s start!

Note#1: IPV6 is becoming the standard now, however many of the Oracle products have serious issues handling the IPV6 stack & you may find reference towards inet4 references raised by java while checking the log files. So we will completely disable the IPV6 stack on our Windows 10 machine. Please read Microsoft documentations to understand what kind of troubles you may get subjected by disabling IPV6

regedit -> HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters

Create a new reg_dword (32Bit) “DisabledComponents”

image

and just enter “FF” in the hexadecimal value column. Restart the computer

Note#2: If you created a Windows service for node manager using the Weblogic provided install service script, stop all WLS servers and stop the node manager service and delete the service from an elevate command prompt. I came across multiple issues related to java while using the Windows service created using the scripts.

We will use NSSM once again to create the node manager service, using the start node manager script you will find under $DOMAIN_HOME\bin folder

I’ve observed that most of null java exceptions were eliminated by creating the node manager service this way.

Note#3: Now we will setup a proper username and password for nodemanager because if you want to start the OHS instance manually later, you need to supply password (for the 1st time)

Logon to Weblogic console @ http://localhost:7001/console

Lock & Edit the domain security values, please refer the image below for details

nm

Provide a meaningful name for the node manager account and supply a password. I used the same password for the total 12c deployment, unless you are setting up a PRODUCTION instance, you may use the common password across the 12c instances for easy administration of objects when required. Shutdown the services (better)

Note#4: Once the node manager properties are changed, start the WLS admin server. Once a WLS classic domain is created, you MUST have a live database connectivity in order to start the WLS admin server. Hence make sure that before you will start the weblogic server, you can connect to the database that hold the repository information for the user domains. Start WLS_FORMS and WLS_REPORTS servers using the weblogic console to insure that the admin server can contact the node manager. The first instance of weblogic server start may take upto 8-10 minutes, so wait patiently

Note#5: Logon to Oracle Enterprise Manager console. If the servers are started properly, you will see “everything” green, else…

image

Note#6: Let us try to start the OHS instance for the 1st time, you can navigate to the OHS instance using the target navigation button, check the below image for more details

image

image

As I have already started my OHS instance I will see all details for the instance, please check the image below

image

If your OHS instance is not started yet, use the “Start up” button to start the instance. I had few failures, pointing towards JAVA while tried, most of them were related to the node manager, as described earlier by the beginning of this article.

image

Note#7: If you managed to start the OHS instance successfully, you have completed the 1st level of configurations for the application deployment. You can modify the listen address, port information etc using the OEM itself. Please check the below image for details. I will NOT try to get into the details of how to this time, though it is highly appealing, due to the fact that I need to stick to the topic (minimum once in a while)

image

Stop the OHS instance now. We need to tell the OHS instance, what exactly it is going to serve by modifying the configuration files. A bit of manual efforts are required as there are NO GUI provided by Oracle for such setups.

Move to your Oracle Home folder. I have installed Weblogic server in D:\Weblogic\Middleware folder, hence my Oracle home folder is

D:\Weblogic\Middleware\Oracle_Home\

(Adjust your paths accordingly)

Edit forms.conf file in the folder D:\Weblogic\Middleware\Oracle_Home\forms\templates\config\

By default this template file comes with commented examples, like following

#<Location /forms>
#        SetHandler weblogic-handler
#        WebLogicHost host
#        WeblogicPort port
#</Location>

You need to uncomment one of the blocks starting from <Location /forms> until </Location> & add properties specific to your deployment, for example, my computer’s name is “RAJESH-PC” and I am using default ports for both forms and reports applications, hence I have the properties set like following

<Location /forms>
SetHandler weblogic-handler
WebLogicHost RAJESH-PC
WebLogicPort 9001
</Location>

Once altered, copy forms.conf to OHS instance “moduleconf” folder. I have copied the file to following location: (Alter according to your setup)

D:\Weblogic\Middleware\Oracle_Home\user_projects\domains\base_domain\
config\fmwconfig\components\OHS\instances\ohs1\moduleconf

Now we will edit the configuration file for reports

Switch to “D:\Weblogic\Middleware\Oracle_Home\reports\conf” folder & edit “reports_ohs.conf” and add a block like following (alter according to your setup)

<Location /reports>
SetHandler weblogic-handler
WebLogicHost RAJESH-PC
WebLogicPort 9002
</Location>

Copy the edited file to

D:\Weblogic\Middleware\Oracle_Home\user_projects\domains\base_domain\
config\fmwconfig\components\OHS\instances\ohs1\moduleconf

Now the OHS instance know about the deployments and once after restarted, you can try to start the forms based application through the OHS instance, rather than calling it against the default port (9001)

Once the OHS instance is updated with the new information, try to start the OHS instance from a command prompt using storeUserConfig parameter

D:\Weblogic\Middleware\Oracle_Home\user_projects\domains\base_domain\bin>startComponent.cmd ohs1 storeUserConfig

1st run, you will be prompted for node manager password, supply the password you have setup earlier and OHS instance should start without creating a fuzz in usual scenarios

In future if you want to start the OHS instance, unless made changes to the configurations, just run

D:\Weblogic\Middleware\Oracle_Home\user_projects\domains\base_domain\bin>startComponent.cmd ohs1

Above concludes the 1st of level of configurations for Oracle forms based application. You can use Weblogic 12c Enterprise Manager to configure most of the forms environment related parameters like forms path and other, while I am yet to find out relevant configuration areas for reports. I’ve opened a thread with Oracle community inquiring the same and yet to receive any leads.

image

You can manually modify the formsweb.cfg & default.env files to start with as well

While forms based application hasn’t changed much (other than the OHS part), making the reports working for you could be really a painful experience.

Regardless whether you are going to use the in-process report server or a stand alone instance of the reports, many changes should be made to the configuration files, so that you can call the reports server from a Forms module

Generally we will be modifying n configuration files, I will try my level best to provide the exact locations for the files which you should change according to your installation preferences

Configuration files path

D:\Weblogic\Middleware\Oracle_Home\user_projects\domains\base_domain\
config\fmwconfig\servers\WLS_REPORTS\applications\reports_12.2.1\configuration

  1. rwservlet.properties – Servlet specific properties
  2. rwserver.conf – Server properties
  3. cgicmd.dat – key mapping file

1. As far you are using in-process reports server, nothing much to alter with “rwservlet.properties” file. Basically you should see entries like following in the opened file:

image
2. rwserver.conf (Please check the below image)

image

3. cgicmd.dat: Many values we supply to call a report using Web.Show_Document method could potentially expose vital information like the database details & many other. “cgicmd.dat” file helps us to map such values to keys and later use them wherever applicable. With this example, I will demonstrate, how the database username, password and service name are mapped using a key. Please check the image attached below

image

Once these configurations files are altered, please restart the WLS_REPORTS server using Weblogic admin console. You may optionally restart the WLS_FORMS server as well

Basically these many configuration should let you go online with your application. One of the pleasant stuffs about 12c forms and reports is, you don’t have to recompile the existing forms modules, just copy them to a new folder, update your formsweb.cfg and default.env files, restart the WLS_FORMS server and you are all set to go.

I’ve successfully configured a stand alone report server instance as well. I think I should separate it from this thread and post it as a fresh one to avoid confusions.

I been working from last few weeks to get these whole stuffs in a single place and cannot remember whether I’ve missed anything vital. If you get stuck anywhere, please let me know through the comment section and I will be more than glad to look into such.

for Windows7bugs

rajesh


Oracle 12c | Database | Weblogic | Forms & reports

January 5, 2016

Hi guys

This time, I will try to explain how you can setup few 12c products for your testing and developing needs in Windows 10, Microsoft’s latest desktop operating system  (The same should be applicable for Windows 8.1 as well)

My scenario

  1. OS: Windows 10 64bit Professional
  2. Memory: 16gb
  3. Processor: i7
  4. Storage: Around 4.6 TB (4 Disks)

Software downloads required for the setup

  1. Oracle database 12c
  2. JDK
  3. Middleware aka Weblogic Server 12c
  4. Forms and reports 12c

You can download the above software packages from Oracle’s repositories

Why Oracle Database 12c?

Unfortunately, Weblogic server 12c doesn’t support database versions below 11.2.0.4, which will require an existing 11g R2 (11.2.0.2) to be upgraded. This upgrade (patch, full installation) is only available for customers with valid support subscriptions, hence the best option available is installing Oracle 12c database in order to setup Weblogic 12c with Forms and Reports 12c

Part 1 – Oracle database 12c Installation

The software package you download will have 2 zip files & You must extract both the zip files to a single folder

dv12c1

For example, as you could see with the above image, I have two zip files for the Oracle database and have created a folder called “Installer”. I extracted  the 1st zip file inside the “Installer” folder (by pointing to the extract folder explicitly, else usually the unzip utility will create a folder within “Installer” with the zip filename. Make sure once after the extraction, under “Installer” folder, you have ONLY ONE folder called “database”

 

dv12c2

Now extract the 2nd zip file to “Installer” folder, and Windows will merge the folders and finally you should see within “database” folder items as listed below

dv12c3

Failing to follow the above will fail your attempts to install the database. You will see few images below those are due to extracting zip files into different folders

Execute the setup.exe

clip_image001

 

clip_image003

You don’t have Oracle support, so uncheck the “I wish to…” and smile at the warning that Oracle never forgets to display

clip_image005

Recently I realized that creating a database once after the Oracle software installation gives me more options to setup archive logs, automated backups etc. So I will proceed with “Install software Only” option

clip_image007clip_image009

Add the languages you want to use with the database

clip_image011clip_image013

Oracle has a new approach with who starts the Oracle software in Windows environments and I think it is better to have a dedicated user to start the Oracle services, which provides better security. I created a user called “Oracle” and my password is:

clip_image015

Old fashioned, I prefer the database installation path to start with “Oracle”, hence I chose “D:\Oracle” for the installation. You can accept the default and proceed with the installation

clip_image017clip_image019clip_image021

Now, comes the errors related to “missing” files, which are due to the wrong extraction method I have mentioned by the beginning of this post. You get a number of read errors for files with strange names…

clip_image023clip_image025clip_image027clip_image029clip_image031clip_image033clip_image035clip_image037

Once you extracted the files as suggested into a single folder, the Oracle database software installation should progress without giving any kind of errors, keep accepting the JAVA security prompts

clip_image039clip_image041clip_image043

Very easy, no hacking at all involved with the installation. Usually a novice (and ME) could get confused reading Oracle’s documents asking the user to extract the zip files to a single folder ;)

Once the software installed, use DBCA to create a new database.

 

Part 2 – JDK Installation

Download and install JDK 8 (Preferably to a folder like C:\Java, D:\JDK) etc. Shortest the path will help you to easily configure many things at later stages. If you have earlier versions of JRE for some specific reasons, deselect JRE from the feature listing

j

j1

j2

j3

 

Part 3 – Weblogic 12c Installation

Once again, Weblogic 12c doesn’t require any specific hacks for installation in Windows 10. Switch to the folder from command prompt where you downloaded “fmw_12.2.1.0.0_infrastructure.jar” and call java to install the package. Please check the below image for details

(I’m leaving the images untouched, so that you will able to see possible errors we can make while typing in commands)

w1

w2

As usual you will skip the updates

w3

Structuring Oracle Home is going to be a logical call, if you are familiar with Oracle’s suggested folder structure, go with it. Usually I install Weblogic in a folder like C:\Weblogic or D:\Weblogic

w4

Now select the first option, Fusion Middleware Infrastructure

w5

w6

Skip the below, and the installation should be completing within few minutes time without making any errors.

w7

w8

w9

w10

w11

w12

Part 4 – Forms & Reports 12c Installation

Forms 12c allows a stand-alone installation, however, our requirement is to deploy applications through weblogic server. Hence we will be doing the standard installation processes facilitating the application deployments.

1

2

3

4

As usual We will skip auto updates

5

Make sure you select the same folder where you installed WebLogic server for “Oracle Home”

6

Select Forms and reports deployment

7

8

9

10

11

12

It could take a while until the installation is completed. Usually the total installation process never errors out. I hope the same for you also :)

13

Part 5 – Create a REPO(?!)

As I mentioned earlier, I am not a Weblogic geek, Oracle says a database repo is required for Weblogic 12c, so I created one as per their instructions & I suggest you better do that as well ;)

Browse to your “D:\Weblogic\Middleware\Oracle_Home\oracle_common\bin” folder and execute rcu.bat file as “Administrator”

1

The creation of repo is pretty straight forward

2

Make sure your database & listener services already started and you can TNSPING, connect to the instance using SQL etc, to insure that the repo creation will NOT fail

Fill in your database instance details (Service name, host name, PORT etc)

3

If the utility could establish a connection to the database, you will be taken to rest of the configurations in next steps.

4

By default when you are trying to create your 1st repository (for each new domain, you must create a new repo, there were claims that someone managed to use the same repo with his 2nd domain as well, however, 1st domain being offline) You will be offered to create a new prefix, by default ‘DEV’. You can change it to JON, MARTA or PROD according to your requirement. Just make sure that you note it down or remember it while configuring your forms and reports instance at later stages

Select the components as seen with the image below (The selected are mandatory to configure forms & reports domains)

5

6

Use a single password for all the schemas those will be created as a part of the repo creation. I have used the same password across 12c products. For a lab, it is okay, however when you are deploying the solution for production environment, follow the recommendations for passwords. I created a password like “Abcprod123”, it has CAPITAL letter, lowercase letters & numbers

7

8

9

10

11

12

That’s all, you have created a new repo for your new domain that you will create later.

Part 6 – Configure your forms & reports domain.

Most important

Make sure your PATH environment variable has your JDK\bin folder as the first value, else you will NEVER manage to get your forms and reports builders configured properly, Oracle has made sure of it ;)

Check the below images and cross check your computer’s PATH value

path

path1

You can start the “config.bat” either from the start menu or from the “D:\Weblogic\Middleware\Oracle_Home\oracle_common\common\bin” folder (Please change the path according to your installation preferences, for example I opted “D:\WebLogic” for my WebLogic server installation and rest of the paths were created automatically during the installation process)

 

1

Select the default “Create a new domain”. You will see that “base_domain” folder is selected by default, which you can change according to your requirement.

2

Select the component for your domain (Select all the components listed with the image below)

3

You will be provided a window showing your current domain name, physical location etc

4

Leave the Weblogic account name as “weblogic” & supply an Alpha Numeric password for the account

5

Select Production & keep the JDK pointed towards your specific JDK installation, which is automatically selected.

6

Now you have to supply the repo details you have created earlier. Make sure you are not making mistakes with supplying the details & click “Get RCU Configuration”

7

You can proceed to next level only once after populating the RCU Configurations, if errors you will not able to proceed

8

Make sure all the listed elements hare having same Service, HOST, PORT names and the password columns are automatically filled. If any one of the listed row has different value, cancel the installation. It means you made some mistakes while creating the repo.

9

10

Once the repo connectivity confirmed, you will be provided a number of components those you could configure as the part of the forms & reports configuration.

Select the components as shown with the image below

11

Accept the defaults for Administration Server

12

Next screen you should be shown two components

  1. WLS_FORM
  2. WLS_REPORTS

 

13

Accept the defaults

14

15

16

17

You need to add the “AdminServer” from the left pan “Servers” to the node under “Machines”

18

This page, as we select OHS as a component, you should add one OHS instance using the Add Button and give it a meaningful name like “ohs1” or “ohs_1”. Make sure the Component Type is “OHS”

19

 

20

You may enter localhost as Listen address for the ohs instance in the next page.

21

Now add the “ohs1” component from the “System Components” to “Machines” Node

22

23

Click the “Create” button to start configuring the forms & reports domain

24

25

Once the configuration is over, you will be provided a confirmation screen as seen below. Don’t close this window. We need to perform few more stuffs prior finishing the configuration, said you can close this window by clicking the “Finish” button, just make sure that you have copied the URL, and the foot note shown by the bottom of the window. That note clearly asks you to execute a specific command using WebLogic Scripting Tool, for OHS

26

Start the node manager from your newly created domain\bin folder (Check the below image for details)

27

Now, you need to start the weblogic server. When prompted, supply your weblogic username and password

28

Keep monitoring the weblogic server window, Once the server enters into RUNNING mode, you will notice that items are getting added to “Oracle FMW 12c Domain -base_domain” Start Menu folder.

29

Now you have to start the Weblogic scripting tool & run the instructions provided with the last Window of forms and reports configuration

 

30

Please see the below image(s) for details

31

32

33

OHS instance should get activated and updated without any issues by the end of the process.

Now you can close the last window of forms & reports configuration and access Weblogic console & Enterprise Manager through the following URL(s)

http://localhost:7001/console & http://localhost:7001/em

 

34

35

You can use the EM console to start your OHS instance (OPMN depreciated) as well. Once started, the OHS instance will be configured to start automatically.

Now We will create the Node Manager Service for Windows. Please check the below image for details

36

I’ve used “NSSM – the Non-Sucking Service Manager” to create the Weblogic Admin Server Service. You can download NSSM from here. Issue a command like nssm.exe install “WebLogic Admin Server” will popup a GUI where you can select the “….\Oracle_Home\user_projects\domains\base_domain\bin\startWebLogic.cmd” as the executable for the service.

37

Now, we will configure the last element in this configuration section, Reports Tools instance so that you can start using the report developer 12c. From Weblogic Scripting Tool Console, you can create a new tool instance. Please refer the below image for details.

38

Restart the WLS_REPORTS server using Weblogic Admin console and the reports tool will be configured once after the WLS_REPORTS enters RUNNING status

While the Forms developer could be invoked from the Start Menu folder “Oracle FMW 12c Domain -base_domain”, calling reports builder is pretty awkward. You have to browse to “…\Oracle_Home\user_projects\domains\base_domain\reports\bin\” and execute the batch file “rwbuilder.bat”. Better, you create a shortcut for the batch file on your desktop.

So, that concludes the 1st level installation and configuration of 12c database, WebLogic, forms & reports. I will get back to the thread, with details about how to configure forms and reports elements and deploy modules at a later time.

Hope you will find the above useful for your 12c installation attempts

for Windows7bugs

rajesh

 

 

 


Virtualize your desktop/laptop computer

January 3, 2016

Hello guys

This is my first post for the year 2016. Actually I have more drafts than posts this time with me and I truly hope that I will able to finish all of them in few weeks time. I’m sure you are interested about Oracle 12c products on Windows platform. Stay tuned, am on it

Coming back to the topic, I have a decent desktop computer that could be called a “half server” with the following configurations

  1. i7 processor 2nd generation
  2. 16GB DDR3 memory
  3. Around 4.5-5 terabyte of storage
  4. windows 10 64Bit Professional

I came across VMWare always 8 years back, liked it, and used it until they started charging for everything. Then Oracle VirtualBox (Earlier JAVA VirtualBox) started giving tough fight and it has become quite famous among developer communities where NOT many were truly able to afford VMWare’s paid software.

VMWare is altogether a different standard made for sophisticated environments, hence we will never compare both the products here. Our intention is to point you towards the advantages of using Virtual Machines that could less clutter your rig, give you better exposure to different technologies and a bit of networking etc

So our product of interest for this post is Oracle VirtualBox and we will see how we can utilize our existing desktops/laptops to run multiple virtual machines at the same time and thus utilize the available hardware to the maximum extends

So prior attempting to virtualize your existing computer, you need to know what kind of hardware you have and whether your computer meets minimum requirements to support virtualization.

So today is 3rd January 2016 & if your computer is 4 years old or less,  99.9% chances that your rig sure supports virtualization. Most of BIOS comes with the virtualization enabled by default.

Yet we should make sure that our computers support virtualization. Read the instructions provided here to find out whether your current processor supports virtualization OR

Just install Oracle VirtualBox and try to create a VM. You will immediately come to realize whether your rig really supports virtualization ;)

Well, that’s the brute force way of doing stuffs, adapt the one that defines you. If you are using Windows 10, I’ve noticed that many default installations enable Hyper-V by default. You need to disable it from add remove windows features console, so that you can create 64Bit VMs using Oracle VirtualBox. This post explains how to enable it, just do the opposite to disable it

Before anything else, you need to identify your processor, it’s capabilities. A nice comparison is available here for i3, i5 & i7 processors and definitely, the author favors i7 processors. Please spend few minutes to read about the differences between these three different processors.

A ripoff from http://www.pcadvisor.co.uk

What the difference between Core i3, i5, i7: Hyper-Threading

A thread in computing terms is a sequence of programmed instructions that the CPU has to process. If a CPU has one core, it can process only one thread at once, so can only do one thing at once (as before, it’s actually more complex than this, but the aim here is to keep it simple and understandable).

Hence, a dual-core CPU can process two threads at once, a quad-core four threads at once. That’s twice or four times the work in the same amount of time.

Hyper-Threading is a clever way to let a single core handle multiple threads.

A Core i3 with Hyper-Threading can process two threads per core which means a total of four threads can run simultaneously. The current Core i5 range doesn’t have Hyper-Threading so can also only process four cores. i7 processors do have it, so can process eight threads at once. Combine that with 8MB of cache and Turbo Boost Technology, and you can see why it’s good to choose a Core i7 over an i5 or i3.

Now, you should know how much physical memory you have. More, the merrier. Starting with Windows 7, computers started shipping with a minimum of 4GB as a standard. So, 4GB is enough for your OS and proposed virtualization? It’s going to be a tight fit. I will suggest an additional 4GB minimum, making the total physical memory 8GB so that you won’t have to sacrifice performance.

Finally the storage. Most of the branded PCs and laptops are coming with 500GB HDD as standard & extending the storage of a laptop is complex than of a desktop computer. For the later, all you need is another HDD which you can plug to one of the available SATA ports and configure. With a laptop, you may need to replace the HDD with a higher capacity one or use an external HDD for your additional storage requirements.

My current Virtualizations are mostly for Oracle technologies. I am a forms and reports developer, doing a certain level of .NET development & manage Oracle EBS R12 instances (“NOT a DBA”). Further I try almost all the database, weblogic versions & currently learning ASMM & RMAN. I have never attempted other areas of Oracle technologies, so my VMs run

  1. Oracle EBS R12 cloned instances
  2. Oracle database(s)
  3. Oracle weblogic server(s) with forms and reports (supported)

My EBS R12 VM has the following configuations

8GB memory out of 16GB physical, 4 processor out of 8 logical processors & almost 850GB of storage out of 4.5 terabyte total storage. Our instance has 400GB database size, 175GB application instance & the VM responds to requests instantaneously once after scheduled jobs are completed after a restart of the application. Usually I find the application responding better after 3 hours of settling down & the performance is assured throughout days and weeks until a restart.

My Weblogic, database VMs have the following configurations

4GB memory out of 16GB physical, 4 processor out of 8 logical processors & almost 250 GB of storage out of 4.5 terabyte total storage. I have my weblogic VM running 11gR2 64bit database as well. I get instant responses from both the Weblogic server and Oracle database 11gR2 from a client system, whenever accessed

Recommendations

Even though you can run multiple VMs at the same time, I would suggest, based on your hardware, limit them. Example

When I run my EBS R12 VM (8GB memory, 4 processors) my HOST computer is left with only 8GB free memory and 4 logical processors. If I start a Windows XP VM (2GB memory, 2 processors) to check the application performance, I feel my rig start slowing down and couple of times my computer shutdown with a high thermal point.

So make sure that you do tweaking to your VMs in order to make sure that your HOST doesn’t breakdown due to overload.

I always make sure that my HOST always has half of the hardware resources reserved for it, ie, 8GB memory, 4 processors regardless how many VMs I run at the same time! This is by using the VirtualBox console to alter the parameters of VMs before they are started

1

All the settings for the VMs could be altered using the settings, like increasing or decreasing the memory, processors, adding and removing storage devices etc.

2

Below you watch how fast my VM running EBS r12 responds to requests from another VM running Windows XP

Advantages of using Virtualization

The most important advantage for me is: I’ve a less cluttered HOST, said, I am NOT installing all the technologies to one OS, breaking it with conflicting versions of services and libraries and processing load.

Other advantages

  1. I can backup (copy) my entire “machine” and restore it during a total mess up or loss of data, rather than rebuilding the entire computer
  2. I get a sand-boxed environment & without fearing my attempts will break my main OS, continue the experiments
  3. I can make a VM, for example, running Oracle Enterprise Linux, copy and keep the OS installed disk somewhere and copy it to new VMs whenever required! Say, you install the OS only once and whenever you need to create a new VM with same OS, just duplicate the disk that has the OS! (Make sure you make a backup of the OS disk prior installing and configuring additional software into it)

Finally my suggestions for you, in case if you are considering to build your 1st VM using Oracle VirtualBox

  1. Majority of the Oracle geeks prefer Linux against Windows for database, weblogic deployments. So if you are NOT familiar with Linux, I suggest you start learning, regardless whether you FEEL very comfortable with it or NOT. You may be joining a firm that has reservations towards Windows OS running Oracle products, especially Oracle DBAs who have valid points like block corruptions, difficulties to recover from a crash are complex in the case of Windows OS.
  2. Install OS in a separate disk. 40GB dynamic size should be more than enough for any recent Linux distros. Avoid Linux 7 if you are truly new to Linux. Oracle Linux 6.7 should be your friend.
  3. Install 64Bit OS, so that you can take the advantage of your 64Bit processor and physical memory
  4. Install Oracle supported Linux distros (RHEL, OEL & certain versions of Debian. CentOS is not at all supported)
  5. Install the complete desktop, you are hardly going to complete the installations on pure CLI mode.
  6. Add SCSI interface to your VM and for Oracle database etc, use SCSI disks. I had a huge argument with VirtualBox guys about the performance difference between SATA VDI disks and SCSI VDI disks. I found the SCSI VDI disks performing better, however I was dismissed saying as far both the types are created on the same HDD, it must be more psychological :O
  7. Use 1TB 7200 RPM disks in the place of 2TB 5400 RPM disks. Later ones are best for data storage, when the previous ones give you better I/O. Create fixed size VDI for databases & applications, that means you will NOT able to increase the size of the disk once after created, however, it gives you faster I/O and better performance.
  8. Update your OS. As soon as the VM is built, update your OS prior installing database, weblogic etc. RHEL will NOT allow you to update the packages without subscription, hence Oracle Enterprise Linux should be your best choice of Linux distro. Please note, you shouldn’t use Oracle Linux in a production environment without acquiring sufficient licenses. Whatever I suggest here are limited for study/evaluation purposes and I don’t encourage any kind of illegal usage of software!
  9. Use Oracle’s pre-install packages to install database, EBS etc prerequisites rather than trying to download individual components from different download sites.
  10. Use shared folders between HOST and Guest (VM) so that you don’t have to sacrifice storage. Not just that, when you want to keep the backup of some files from the VM, the shared folders will make it as easy as possible
  11. Use bridged network, with Promiscuous Mode “Allow All” so that you can communicate with the VM from network
  12. 3
  13. Disable IPV6, firewall, SELinux on your Linux VM
  14. If you creating a Windows VM, I’m sure you better know how to configure your guest so that you can access it from a network.

Finally recommendations for a DESKTOP computer to try virtualization

  1. i7 processor + good quality heat sink. Your HOST and VMs are going to create loads of heat!
  2. 16GB Memory (DDR4 is the new standard, do not ignore it)
  3. 1×2 TB HDD

Few years back, such a configuration looked impossible for me, well, I saved bit by bit and made my dream computer. I’m sure you can also do it :) & trust me, a good computer opens a new world for you.

All the best and wish you all a very successful year ahead!

for Windows7bugs

rajesh

 

 

 

 

 

 

 


Follow

Get every new post delivered to your Inbox.

Join 61 other followers