Windows Server 2016 | Too early for Production environments

Hi guys

Recently for a new hardware, we opted Windows Server 2016, which was suggested by the vendor and our logical thinking that we are already by the mid of 2018 and we should have a recent server OS.

Although we bought the OS, we didn’t use it until our recent Citrix deployment for a legacy application that is 20 years old, based on Oracle forms and reports (Developer 2000 6i)

Everything went as expected, but the printing. 1st of all we were expecting some misconfigurations from Citrix & came to conclusion that we will address the direct printing requirements from the legacy mini ERP by changing few stuffs here and there.

In order to make sure that no mistakes were been made during Citrix implementation causing such a hiccup, I decided to setup a lab environment (Actually the legacy application sources I have and the latest compiled are bearing different time stamps, hence I was skeptical about recompiling those forms after changing the printing routines…)

So I picked up a Windows 2012 R2 physical server, setup Citrix following the documents provided by our implementation partner, which had minutely detailed explanations with screenshots how to install and configure Citrix XenApp 7.15.xx

After setting up the store front, I accessed the published application and the default printer was the one I have as default in my laptop! This caused me more confusion, so I decided to recreate the exact setup once again using Windows Server 2016

I built a VirtualBox VM using evaluation version of Windows Server 2016 standard edition and patched it with May 2015 cumulative update before setting up Citrix. I was able to reproduce the printing issues once again & I decided to find out what was the real cause behind two different behavior between Windows Server 2012 & 2016!

Kept on searching for any kind of information & came across couple of TechNet discussions

 https://social.technet.microsoft.com/Forums/office/en-US/d3bb9c96-d271-4eb4-b544-c2bcdc0f2e66/printer-redirection-server-2016?forum=winserverTS

 &

 https://social.technet.microsoft.com/Forums/en-US/785cbcc6-4f0b-4d88-b12f-2b1d89b85a44/remoteapp-default-printer-redirection-not-working-in-server-2016?forum=winserverTS

I dug deep into the registries of both OS after a normal RDP to confirm that Windows Server 2016 retains local printer for the key “HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows:Device” while Windows Server 2012 maps this key value with the default printer redirected from the client during a RDP session!

1

I couldn’t find a valid explanation or solution for Windows Server 2016, hence asked the implementer to redo the Citrix deployment using Windows Server 2012.

Now the topic cannot be justified just because we had some issues with an outdated legacy technology, should have more

Windows updates: I never experienced such kind of broken stuffs with Windows update that Windows Server 2016. It looks and breaks like Windows 10 & reminds me a BIG mobile phone than a real server OS

Windows Domain Administrator account has “Not enough privileges” to interact with desktop icons & more. This OS is almost 19 months old & Microsoft hasn’t fixed the above “bug” until date, so you could guess what kind of progress they might have had with this particular OS!

There could be more than what I have listed above with the OS that is still half baked. I am sure the printer related issue that I have narrated above MUST be another bug & future releases “may” address it.

So, unless you are true risk taker, I suggest to continue with Windows Server 2012 & only to use Windows Server 2012 in the test/development environments and to avoid straight away going with the OS for production deployments.

regards,

rajesh

 

Active Directory Listing Software

Hi guys

Today I am going to share a compact software that could generate moderately detailed information about the Windows active directory member computers, servers and users from a single console, that I started developing many years back.

This software helps you to export the fetched details to an excel sheet for future references. While there are no restrictions exclusively attached to the usage of this software, the source code for the application is ONLY available against written requests. Refer the readme.txt file for more details.

Please download the zip file from this link and extract to a single folder. Double click open “WpfWMI” to run the software (No installations required). We are using open source EPPlus.dll for the excel export and you must insure that the dll file is within the same folder of the executable file (WpfWMI.exe)

Pre-requisites: The computer you are running this software MUST have .Net framework 4.5 installed.

Expected bugs:

  • When you are not connected to a domain, software will show you a message “Not connected to Domain, Aborting”. However, the main application will load and trying to load objects will crash. I’ll fix this the earliest possible.
  • If your internal & external domains have same name, for example internal domain name is “abc.com” and your public website is “www.abc.com”, you may experience the above mentioned crash while connected to your network over a VPN connection.
  • Poorly designed About, help sections. I apologize for the same as I never had intensions to release it for public usage. Will try to accommodate as much with next public release.

Test it & post your comments and suggestions.

regards,

rajesh

Windows 10 | 0x80070035

Update: In my case, I was able to fix the issues by re-installing Windows using the installation media over an existing Windows 10 1709 installation. I chose to keep files and applications and once after the re-installation successfully completed, achieved the desired results.

Update: Basically this is a bug, which doesn’t affect those who were keeping on upgrading from builds to new builds (ie from 15xx to 17xx). Affects most of the users who did clean installation of 1703/1709 which is yet to be addressed by Microsoft. My case, I did an upgrade from 16xx and resetting the TCP/IP, Winsock etc did the damage for me (Well, it realized that, this issue also exists ;) )

Today, I managed to realize that by just unchecking OK, Checking again and OK combinations on File and Printer Sharing Services for the network adapter fixes the dreaded issues until a restart.

12

Here are the workaround solutions until Microsoft finally releases a patch/update for it.

http://partnersupport.microsoft.com/en-us/par_clientsol/forum/par_win/windows10-1703-file-and-sharing-printer-net-view/9569d27f-d979-4c5a-9a01-98cd9c99c4f2?page=2

Other references:

https://social.technet.microsoft.com/Forums/windows/en-US/671fdb58-7d82-4078-a372-e3b50433faa4/windows-file-sharing-stops-after-every-restart?forum=win10itpronetworking

https://superuser.com/questions/443329/windows-7-file-and-printer-sharing-doesnt-work-for-me

 

Hi guys

Recently I tried to enable mobile hotspot on my Windows 10 (1709) Pro machine at work that is a domain member. By the time I figured out that the connection issues clients connected to the ad-hoc network were purely related to some authentication issues with our UTM device…it was too late.

I did enough damage to the network stack of my box, reset winsock, rebuilt TCP/IP, resetting the firewall.. and after fixing the issues with mobile hotspot, started having issues with the HP printer and a particular folder that I share with my team.

Both the printer and shared folder cannot be accessed over network, the funniest part was from my local machine itself I couldn’t access the shared folder by calling it like

\\mymachinename\foldername

So as usual I tried to fix the issues using Windows trouble shooters and all the time I was getting the same info “0x80070035” and further diagnostics gave me:

“The device or resource <<HOSTNAME>> is not set up to accept connections on port “The File and printer sharing (SMB)”.”

I tried to find more details, especially about the above statement and unfortunately, none of the questions asked by users in relation were satisfactorily answered by Microsoft.

Then I landed on a Microsoft page @ https://answers.microsoft.com/en-us/windows/forum/windows_10-networking/windows-10-pc-rejecting-incoming-connections/a36974c7-3208-4489-ad44-962838c38b29

The last contributor asks Is “File and Printer sharing for Microsoft Networks” enabled under the properties of the network card?, for obvious reasons I was sure that this service is enabled under the network properties of my Ethernet device.

Logically, my next approach was to uninstall this service from the adaptor, re-install it. Immediately after reinstalling the service, all the shared assets from my laptop were accessible over the network.

Still not happy, I rebooted the machine, to find out that the shares were once again having the same issue(s).

0x80070035

So I uninstalled and reinstalled the “File and Printer sharing for Microsoft Networks” service and this time reset the Defender Firewall to defaults. Instead of restart I did a shutdown, waited few minutes and restarted it.

As I am drafting this post, I have checked the access it is working perfect. Will reboot one more time to insure that this fix is permanent.

I don’t know the technical reasons behind this erratic behavior, however it looks like one more time uninstalling and installing the “File and Printer sharing for Microsoft Networks” fixes the issues (minimum for now) & until a reboot.

If you are facing the same issue(s), why don’t give it a try.

regards,

rajesh

 

 

USB 3.0 External Drives | A quick alternative when disk reports errors

Hi guys

During last few years, majority of the external HDDs were introduced with USB 3.0 ports which were supposed to make the data transfer faster (& they are until everything is OK). However, these interfaces start wrecking the nerves as the disks become old & a user may come across unexplained errors in the long run. One of them being Windows/OS reporting the drive requires scan and repair to proceed. Most of the times this situation leaves the user panicked & repairing activities may error out without any positive results.

So, next time when you are hit with such an error reported by the OS, give the following a try.

Use a USB 2.0 data cable in the place of USB 3.0 data cable. Check the below images to identify the USB 2,3 portions

usb-3

Connect your USB 2.0 data cable to the USB 2.0 portion. Check the below image for a USB 3.0 external HDD that is connected using a USB 2.0 cable for data access.

usb3

Give it a try, it may get back to your very important data!

regards,

rajesh

Oracle| Altering table structures through PL/SQL block

Hi guys

Prior moving to Oracle EBS (R12) we were using a mini ERP system, that was as robust as possible, however lacked many features those were required for modern business environments. While the company that distributed the software in the market over a decade finally dissolved, we were also provided a full copy of the source codes & the same was in my custody for whole these years.

Recently I wanted to revive it, after WebLogic 12c & seeing the possibility of “JAVA WEBSTART” in small & middle scale industries.

One of the major hurdles I came across were with the columns those saved document numbers. This software which was designed during late 90s only had maximum 6 digits document numbers across modules, totaling 496 tables!

It was not a very feasible idea to go through each table & to modify them using GUI tools like Oracle SQL developer. Instead I planned for a PL/SQL procedure.

& here comes the PL/SQL block

[code language=”sql” gutter=”false”]

SET SERVEROUTPUT ON SIZE UNLIMITED;

DECLARE

CURSOR T1(OWNER_NAME VARCHAR2) IS
SELECT TABLE_NAME FROM DBA_TABLES
WHERE
OWNER=OWNER_NAME;

CURSOR C1(OWNER_NAME VARCHAR2, TBL_NAME VARCHAR2) IS
SELECT COLUMN_NAME, DATA_TYPE, DATA_LENGTH, DATA_PRECISION, DATA_SCALE FROM DBA_TAB_COLUMNS
WHERE
OWNER=OWNER_NAME
AND TABLE_NAME = TBL_NAME;

V_EXECUTE_MODIFY BOOLEAN := FALSE; –‘TRUE’ FOR TABLE MODIFY

BEGIN
FOR T IN T1(‘OPMAN’) LOOP
–DBMS_OUTPUT.PUT_LINE(T.TABLE_NAME||’—-‘||T.TNAME);
FOR C IN C1(‘OPMAN’,T.TABLE_NAME) LOOP
IF (C.DATA_TYPE=’NUMBER’ AND C.DATA_PRECISION=6 AND C.DATA_SCALE=0) THEN

DBMS_OUTPUT.PUT_LINE(T.TABLE_NAME || ‘ COLUMN NAME –>’||C.COLUMN_NAME);
–T_YR_MTH
IF (V_EXECUTE_MODIFY) THEN
IF (C.COLUMN_NAME ‘T_YR_MTH’) THEN
/*INCLUDE ALL COLUMN NAMES THOSE SHOULDN’T BE AFFECTED BY THE PL/SQL BLOCK RUN! eg:NOT IN (‘ABC’,’DEF’,’GHI’)*/
EXECUTE IMMEDIATE ‘ALTER TABLE ‘||T.TABLE_NAME||’ MODIFY ‘||C.COLUMN_NAME||’ NUMBER’;
END IF;

END IF;
END IF;

END LOOP;

END LOOP;
END;

[/code]

So what does this block do?

[code language=”sql” gutter=”false”]

CURSOR T1(OWNER_NAME VARCHAR2) IS
SELECT TABLE_NAME FROM DBA_TABLES
WHERE
OWNER=OWNER_NAME;

[/code]

This block fetches all table names from the DBA_TABLES for the owner that is passed in as a parameter, in this specific case ‘OPMAN’

[code language=”sql” gutter=”false”]

CURSOR C1(OWNER_NAME VARCHAR2, TBL_NAME VARCHAR2) IS
SELECT COLUMN_NAME, DATA_TYPE, DATA_LENGTH, DATA_PRECISION, DATA_SCALE FROM DBA_TAB_COLUMNS
WHERE
OWNER=OWNER_NAME
AND TABLE_NAME = TBL_NAME;

[/code]

The above cursor takes in two parameters, OWNER name and the table name, that comes from the 1st cursor

[code language=”sql” gutter=”false”]

FOR T IN T1(‘OPMAN’) LOOP
–DBMS_OUTPUT.PUT_LINE(T.TABLE_NAME||’—-‘||T.TNAME);
FOR C IN C1(‘OPMAN’,T.TABLE_NAME) LOOP
IF (C.DATA_TYPE=’NUMBER’ AND C.DATA_PRECISION=6 AND C.DATA_SCALE=0) THEN

DBMS_OUTPUT.PUT_LINE(T.TABLE_NAME || ‘ COLUMN NAME –>’||C.COLUMN_NAME);
–T_YR_MTH
IF (V_EXECUTE_MODIFY) THEN
IF (C.COLUMN_NAME ‘T_YR_MTH’) THEN
/*INCLUDE ALL COLUMN NAMES THOSE SHOULDN’T BE AFFECTED BY THE PL/SQL BLOCK RUN! eg:NOT IN (‘ABC’,’DEF’,’GHI’)*/
EXECUTE IMMEDIATE ‘ALTER TABLE ‘||T.TABLE_NAME||’ MODIFY ‘||C.COLUMN_NAME||’ NUMBER’;
END IF;

END IF;
END IF;

END LOOP;

END LOOP;

[/code]

Let us analyze this part of the block now.

The first cursor passes the table name to 2nd cursor and the loop goes through all columns matching data type, precision and scale. I’ve checked for “Number”, precision 6 & scale 0 which are common for all columns those were defined for document numbers. However there were few instances where YearMonth (YYYYMM) values captured for month end processes, which shouldn’t be checked. As our mini ERP is a standard business application, it was designed following same nomenclature across tables while columns defined. Thus it become easier for me to isolate the columns whose were matching same data type, precision and scale & to limit the alter commands modifying only those columns which were defined for document numbers.

The above example could be further developed to easily alter tables while the entire application is modernized and to easily modify columns with bigger sizes.

Interesting? Why don’t you give it a try and post your comments?

regards,

rajesh

Learning WPF, CSharp(C#) with me | Part #2

Part #2

Subject: Why each trainer stick to console based development when my intention is to learn how to make “real” applications?

Hi guys,

Have you taken a training for development recently? If you are an established developer in any technology stack, the most frustrating thing could be the “basics”, you would groan and stir loads in the seat when a junior trainer goes through the concepts, basic commands set etc & would try to make the logic behind the approach

For example, if you want to learn C#, that you could use Web applications or desktop applications, you have a preset mind that wants to develop the applications those a user could interact with visibly. Not something that open a console and shows you few outputs and closes down.

I have asked the same question to many junior trainers during the courses and none was ever able to give me satisfactory answer. During my last attempt to refresh my C# skills I came to a conclusion towards this irritating question and it is simple like this

A console application when you want to print something on the screen, you just write a code snippet like this

static void Main(){

Console.WriteLine(“Hello World”);

}

And if you want to do the same with a Desktop application, the efforts are like this

You design a form (I will not use the real technical terms here, not at this stage)

You will add textboxes or labels to show “Hello World” (and you don’t really know how to make them at the first level)

Then you will develop the code part that should show the “Hello World” finally when the application starts

So for a trainer it becomes easy to deal with code part, which is the most important element of an application, rather than trying to teach a student the GUI development.

I will try to explain what I have assumed using real examples

Hellow World console application

[code language=”csharp” gutter=”false”]
using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace HellowWorldConsole

{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hellow World");
}
}

}
[/code]

Running the application will open a console window and show you the following

image

Now let us develop the same Hello World application using WPF

My GUI part has the following XAML Code

[code language=”xml” gutter=”false”]
<Window x:Class="HelloWorldWPF.MainWindow"
xmlns="<a href="http://schemas.microsoft.com/winfx/2006/xaml/presentation"">http://schemas.microsoft.com/winfx/2006/xaml/presentation"</a&gt;
xmlns:x="<a href="http://schemas.microsoft.com/winfx/2006/xaml"">http://schemas.microsoft.com/winfx/2006/xaml"</a&gt;
Title="MainWindow" Height="350" Width="525" Loaded="Window_Loaded">
<Grid>
<TextBox x:Name="HWorld" Margin="95,150,117,124"/>
</Grid>

</Window>
[/code]
and the code behind is

[code language=”csharp” gutter=”false”]

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows;

using System.Windows.Controls;

using System.Windows.Data;

using System.Windows.Documents;

using System.Windows.Input;

using System.Windows.Media;

using System.Windows.Media.Imaging;

using System.Windows.Navigation;

using System.Windows.Shapes;

namespace HelloWorldWPF

{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}

private void Window_Loaded(object sender, RoutedEventArgs e)
{
this.HWorld.Text = "Hello World";
}
}

}
[/code]

and the output of both portion is seen as below

image

Now, it’s a common tendency of a seasoned programmer to perfect the GUI, because it creates the initial appeal. As you could see my textbox and the text appearing is not in sync, the height of the textbox is much bigger than the text that it looks somewhat mismatch…the time spent to perfect the GUI could become a real hurdle to progress with the training which must be limited certain hours per course!

Instead the trainers would approach the course, trying to teach the student the maximum coding part, then once the students are familiar with the technology, letting them explore the GUI development (Unless the course has the GUI development exclusively listed under the curriculum)

Once the above idea settled within me comfortably, I managed to sit patiently and learn the “basics” better than ever & was able to map what I learned to GUI much easily. Interested? However, my approach with this series will be developing GUI elements along with the basic coding. Do you have a different approach? do let me know through comments.

with the 1st part of this series I have posted a complete WPF solution to demonstrate what C# with WPF could do. That solution has many issues, like I am not handling folder/file access permissions or threading which is a must requirement when a program is going to run for unprecedented periods.

Be with me and we will be looking at much of them in coming parts.

regards,

rajesh

Creating PDFs using Microsoft Word

Hi guys

Many great websites like “oracle base” let you copy the content from their site, so that you can make documents for offline references. Obviously, you need to copy, paste make sometimes format a bit here and there so that the document finally becomes worth keeping.

One of the major issues with most of the free PDF printers is the lack of ability to include the embedded urls. Once you find an interesting article and use a free PDF printer like “PDF Creator”, you will realize that whole the book marked urls are lost other than the links starting with http:// or www

With the recent versions of Microsoft Word software (Office 2010 & later) , Microsoft lets the users to save a word document as PDF, in addition to printing the documents as PDFs. So what are the main difference between printing and saving as a word document?

While printing, the engine discards all the embedded URLs and the end user gets a plain PDF file, and when saved as (From file Save as context) PDF, all underlying URLs are preserved as bookmarks and clickable links are created automatically.

Does it sounds interesting? Give it a try and let us know!

regards,

 

Windows | ORA-12560: TNS:protocol adapter error

Hi guys

Not many DBAs prefer Windows for their Oracle databases. Linux is most preferred by most of them & most of the DBAs I know setup the bash profile under Oracle user to setup the environment during each logon to the server.

Our legacy business application database runs on Windows 2003 & trust me, we never had a single database crash (Other than the physical hardware failure that forced us to recover the database once). Depending upon how huge the database and application, the choices for hosting the Oracle database differ from one business to other.

We decided to upgrade our Oracle 10g 10.1.x.x 32Bit database to 11g R2 & as usual I have replicated the environment using my home semi-server class desktop, before the Production environment at work.

Installed 10g 32Bit, created the database using dump export file (The total size of the database is less than 7GB, hence I avoided the hectic RMAN backup and restore part)

  1. Configured RMAN against the new database & made full backup for archive logs and database.
  2. Installed 11g 11.2.0.4 64Bit database (Software Only installation)
  3. Created a new Windows Service using oradim
  4. Restored the database from RMAN backups & upgraded the database to 11g

So far so good. I had to restart the computer & after rechecking the database was up and running, tried to access the instance using sqlplus & was presented with

ORA-12560: TNS:protocol adapter error

REG_SID_MISSING

I setup ORACLE_SID=SID at the CMD window & sqlplus was happy after that.

Usually, Windows doesn’t need environment variables set exclusively for the database as Windows registry takes care of it. This is very efficient when the box has only one database running. If you have more than one database or multiple Oracle homes, the scenario changes.

In addition to, Oracle always looks for the executable based on the PATH information it reads. For example my box has 10g,11g,12c database software installed without any databases created during the installation time.

Let us consider the scenario like I didn’t re-order the PATH entries after the latest installation of 12c & try to open SQL or RMAN. The call will find the executable from 12c path entry BIN as default, and a beginner could have enough confusions due to it.

In my case, I needed my 10g instance first, hence I moved the 10g folder as the 1st entry for Oracle products, and once I finished with 10g moved 11g home folder to the 1st position.

SID_Missing

Anyway, after confirming the path settings, my immediate attention was towards registry, as Oracle services completely depend upon the registry values for each service registered.

To my utter surprise, found the 11g Service entry didn’t have ORACLE_SID string created during the instance creation using ORADIM.exe

REG_SID_MISSING

Oracle 11g 11.2.0.4 has a huge bug list and interim patches those should be applied before moving to Production instance. I really don’t know whether the missing ORACLE_SID string entry was due to one of such bugs.

So I stopped the Oracle service, added ORACLE_SID string entry with the value for my database

REG_SID_ADD

Restarted the service & sqlplus connected to the instance happily without setting up the environment variable like set ORACLE_SID=SIDNAME

REG_SID_ADDED

While the easiest solution is to setup both ORACLE_HOME, ORACLE_SID when someone wants to use the sqlplus or RMAN exclusively as a part of the database access, the above method is a definite way to deal with “ORA-12560: TNS:protocol adapter error”

regards,

rajesh

Windows | ORA-06413: Connection not open

Hi guys

If you install a 32bit application in your 64bit Windows OS, following default prompts, the installed product will be under “<drive letter:>”\Program Files (x86)” & Oracle doesn’t really like those braces :)

You should uninstall the software and install it again in a folder that doesn’t have braces or spaces in between in it’s name

eg: C:\Program Files (x86)\some software to >> C:\somesoftware

Toad and few other little utilities available for Oracle will stop complaining about “ORA-06413: Connection not open” once after that.

 

for Windows7bugs

rajesh

 

Windows 10 64Bit | Install & Configure Weblogic 10.3.6 (64Bit), Developer Suite 11gR2 using JDK 7.x

Update (19th October 2015): I’m yet to find proper solutions for screen capturing in Windows 10. My favorite OBS doesn’t render the dropdown menus while screen recorded (thread here). Once it’s done, I will make the video as promised with my last update.

Update (12th October 2015) : I’m not promising, however, if possible, I will soon post a video with my Youtube channel explaining how you can configure both forms and reports server for hosting applications. Stay tuned :)

Hi guys

There are excellent articles explaining installing WebLogic 10.3.6 64Bit on Windows. Most of the installation methods are applicable to Windows 7, 8.x & on Windows 10 also. I opted to do a factory reset (the new reset option available with Windows 10) and was forced to re-install & configure WebLogic. I thought of sharing my experiences with you, as usual :)

(There were not a single hiccup experienced throughout the installation, to say it short)

Environment: Windows 10 Professional 64Bit, i5 Processor, 8GB memory, 1TB HDD, Dell laptop

Update 12th October 2015

Weblogic server 10.3.6 has identified issues with IPV6, hence I will suggest you to disable it in case if you are expecting a better experience with your Weblogic servers (forms & reports). ISA, the firewall client also could be a problem.

Once the IPV6 disabled, if you are in a home network or domain network, ping your machine and make sure that your ping replies are coming from your IPV4 address, instead of IPV6. If your computer is a domain member, ask your administrator to delete the IPV6 DNS entries for your box, disable IPV6 in your computer and restart. Ping again to confirm the replies are from IPV4. The issues are random, I had my Windows 8.1 machine with both the protocols enabled and my Weblogic servers just ran smoothly, however my Windows 10 box was adamant and until I disabled IPV6, couldn’t get the report server functional properly.

Step 1

Install JDK 7 to a folder without spaces in between, preferably C:\ (eg: C:\jdk or D:\jdk). Avoid installing JRE that comes with the JDK package.

Step 2

Copy your WebLogic installation .jar file to a folder (eg: D:\downloads)

Step 3

Now kick start the installation, as seen with the below image. It may take a while to deflate the .jar file and the installation to start

1

1a

2

Try to install the weblogic server in a folder that doesn’t have spaces in it’s name. I always installed it in D:\weblogic

3

You don’t have a support for the product most of the times, so uncheck the “I wish…”

4

5

6

7

8

Choose the “Typical” for install type

9

As you started the installation from the JDK installation folder, the local JDK will be already chosen

10

Select the defaults for components installations(unless you know how to handle it thoroughly)

11

Install WebLogic for all users

12

13

14

15

Uncheck “Run Quickstart” and exit the installation by clicking the Close button

16

Step 4 – Install Developer Suite 11gR2

Installation media for Developer Suite 11gR2 comes as 3 disks. Download (if still available) and start the “Setup.exe” from Disk 1

1

2

3

4

Select “Skip Software Updates” which requires a paid support from Oracle. If you have one, please set it up prior going ahead with the installation

5

Select “Install Software – Do Not Configure”. We’ll configure it as part of our Classic Instance setup.

6

You can ignore the error, details mentions about unsupported operating system, well that’s all our intentions

7

Unless you have specific requirements, accept the defaults

8

You don’t have a paid support from Oracle, you don’t get updates. Uncheck “I wish to …”

9

10

The installation will start now and it takes quite a while, in my case around 30 minutes. Sit back and relax

11

12

13

Exit the installation clicking “Finish” button.

14

Step 5 – Configure a Classic Instance

Even though you have installed Developer Suite 11gR2, you cannot yet use the development tools unless a classic domain is set up. Below please see how a classic domain is configured with Developer forms and reports.

A default installation of Oracle Developer Suite should create a folder “Oracle Classic 11g -Home1” under programs. You can activate the classic home setup by invoking menu item “Configure Classic Instance”

(I’m using ClassicShell start menu, I can’t really work with the latest “Start Menu”, so don’t get confused with the below image. You can use the search to find “Configure Classic Instance”)

0

0a

1

Select “Configure for Deployment”

2

Skip the below by unchecking the “I wish to …”

3

4

Unless mandatory, accept the defaults

5

Provide a alphanumeric password for “weblogic” account for the domain. Please note it down, incase if you fear of forgetting it (I do many times)

6

Important: By default “Oracle Forms and Reports 11g R2” is unchecked, You must check this option to install the developer tools. After checking, proceed with the configuration

7

Select “Auto Port Configuration”

8

Select “Do not use proxy settings”. Proxy settings could make weblogic experiences cumbersome. I suggest you use a computer that doesn’t require proxy settings

9

We are not going to use the Identity store for a local development machine, if you do, please provide the details.

10

Initiate the configurations by clicking “Configure” button

11

Configuration should complete in around 30 minutes, so sit back and relax

12

13

14

15

16

The above concludes the installation of WebLogic Server 10.3.6 & Developer Suite 11gR2 64Bit on Windows 10.

You can access the WebLogic server console by visiting http://localhost:7001/console/login/LoginForm.jsp

Let us checkout few essentials those will make sure that you have a seamless experience with the fresh installation.

Unlike the 32Bit, 64Bit installation of WebLogic server doesn’t install node manager Windows service. So you must install the windows service using the scripts provided by the installation process. If you didn’t change any of the default paths while installing the WebLogic server, the node manager windows service installation script file will be available …\wlserver_10.3\server\bin path

Best practice

Shutdown all running servers using the WebLogic console and restart the computer, this will avoid any sort of complication that could arise while the below exercise are executed.

From an elevated command prompt, running “installNodeMgrSvc.cmd” script will create this node manager windows service for you, which is mandatory for the WebLogic console to maintain your forms & reports servers (start, shutdown)

Once you created the node manager service, you should create a service for WebLogic admin server as well. This will help you from running the batch files manually & having a cluttered desktop later. More than, once created these services can restart themselves whenever you restart the box!

[code language=”text” gutter=”false”]
echo off

SETLOCAL

set DOMAIN_NAME=ClassicDomain

set USERDOMAIN_HOME=D:\WebLogic\user_projects\domains\ClassicDomain

set SERVER_NAME=AdminServer

set WL_HOME=D:\WebLogic\wlserver_10.3

set WLS_USER=weblogic

set WLS_PW=pass123

set PRODUCTION_MODE=true

set MEM_ARGS=-Xms512m -Xmx512m

call "%USERDOMAIN_HOME%\bin\setDomainEnv.cmd"

call "%WL_HOME%\server\bin\installSvc.cmd"

ENDLOCAL
[/code]

Copy the above script to a text file and save with a name like “InstallAdminServer.cmd” or with a name that ends with .cmd extension. I will always prefer saving the file in the same folder where we had the node manager service installation script.

Now, from an elevated command prompt, run the script, which should create Admin Server Windows Service for you.

srvc

If you followed the instructions, you should see all the services as listed above. You can start the ones which are not running, Please wait a while before trying to access the WebLogic admin console after starting the service. It takes few minutes for the admin server to come online.

I do hope this post will help you to install and configure WebLogic Server and Developer Suite 11gR12 on Windows 10 successfully. Have questions or problems? please update me with the comment section.

for Windows7bugs

rajesh