Wednesday, December 14, 2005

An Interview with Sridhar Machani - 14 Dec 2005

This is a pleasant surprise when I walk into office today - to find this published on my company portal - we had this discussion some time during the 3rd week of November. All credit must go to our Business Unit head Bharani for pushing me/Jayant for an interaction of this nature. Also, there is a correction - I've only one younger brother and no elder brothers - as mentioned in text (which otherwise depicts more or less what we discussed).

Interview @ hp on BITS

Alternate URL for those @ hp...
http://gdic.india.hp.com/IPG_Int1.htm

Wednesday, December 07, 2005

BITS Pilgrimage - 2 to 4 Dec 2005

As Assistant Dean Prof.Venkat put it, this was indeed a pilgrimage. To travel a long way (fly from Bangalore to Delhi for 2.5 hours; travel in Qualis on the adventurous roads to Pilani for around 200 kms for 5 hours); visit and explore a holy place (read BITS campus), have darshan (read project VIVA), have prasadam (read the hostel food); stay for a while (read hostel); face exciting conditions (0.6 degree celcious min temperature); delight local chai; and finally get some gyan and enlightenment. The most surprising part is that Prof. Nataraj came in to the orientation room held by Prof.Venkat before VIVA and called out my name...I raised my hand...and he said he had been reading this blog. It's surprising because I had mentioned the URL to this blog somewhere in the middle of the Final Project Report. Gosh...they do read some reports!!! :-)

A quick info...we went in Air Deccan on 2nd Dec early morning flight and reached Delhi after 2.5 hours. We had booked a Qualis for the round-trip from Delhi-Pilani-Delhi. On thw way, we had breakfast at Haldirams around Gurgaon which was a huge and neat complex. After reaching Pilani - which is a small village in Rajasthan and a native of the Birlas - we checked in to the VFAST Boys hostel and had lunch. We still had time - so explored the BITS campus. It's a city in itself with all facilities. No one needs to go outside for anything. It was exam time so we didn't see much crowd. Next day - 3rd Dec - was our VIVA. After the orientation, VIVA was over for all 5 of us by around 3.30pm. So, we went around BITS again - this time with the knowledgeable and entertaining company of Siddarth Nini (a cousin of my friend Panda). Then, we went back to a the rooms after dinner at 8 - the Sun sets at 5.15pm and then it starts chilling out rapidly. Next morning we set out to Delhi where we got to spend some time roaming around - with the help of Joshiji (our driver). We returned back to Bangalore on the flight at 10.45pm. Thanks to Venki for dropping and picking me up from the Bangalore Airport!

What I must mention is the chai we get in rady (tea stall) around BITS campus - hot and gingerly, yummy! As Jagadeesh put it - in most places we get tea but this is chai!

As they say, a picture tells you a story of a 100 words...

On Bangalore to Delhi flight - nice sky and amazing texture of clouds all the way
On Bangalore to Delhi flight

BITS VFAST hostel campus - nice comfortable place to stay and hygienic food as well
BITS VFAST hostel campus

BITS campus - neat, clean and cold
BITS campus

The famous and historic Clock Tower - which appears on all BITS magazines
The famous and historic Clock Tower

The serene and peaceful Saraswati Mandir - white marbles, peacocks and pigeons all around
The serene and peaceful Saraswati Mandir

The BITS Museum - wide range of models on all subjects
The BITS Museum

That's me - outisde the Museum
That's me - outisde the Museum

And our group which went from Bangalore together to BITS - Panda's cousin Siddarth (extreme left), Shyamtanu, Jagadeesh, Raj, Kiran and me!
Our group which went from Bangalore together to BITS

BITS library
BITS library

And then back to Delhi - where we got to spend a few hours before our flight back to Bangalore
Qutab Minar
Qutab Minar

India Gate
India Gate

Rashtrapati Bhavan
Rashtrapati Bhavan

The center of Power - Parliament
The center of Power - Parliament

This pilgrimage to BITS, Pilani for the Dissertation (final project) VIVA completes my last formality for the MS Degree. It was an experience I will always keep close to my heart - now that I'm a BITSian! :-)

All snaps here.... BITS Pilgrimage snaps on Flickr (Updated Dec 2006)
Alternate set on Yahoo Photos

Sunday, November 13, 2005

Delhi flights booked for Viva

You might be aware - my BITS project Viva is on 3rd Dec (Sat).

I pinged yahoogroups and found 4 others in Bangalore having same Viva date. Some of them had already booked Air Deccan flight tickets - so I also booked the tickets for Dec 2 (Fri) 5.50AM flight to Delhi and back on Dec 4 (Sun) 8.10PM flight to Bangalore.

Pilani, Rajasthan is about 4 hour-drive from Delhi on road.

And once I'm back on 4th midnight, I'm on leave on 5th (Mon), 6th (Tue) and 7th (Wed) Dec 05 - my friends Deepak and Rashmi are getting married on 6/7.

Friday, November 04, 2005

Final Project Report Status

Things happen when they are most unexpected, that's what the Murphys' Laws are all about. And it was no different with me (days of insanity and 12 days later) - which led to too much of delay and pain over and above this project.

Nevertheless, with the timely help from Gun, Satish, Office folks and lots of friends - I were able to come up with a final report by yesterday (3 Nov) evening. Then, Venki ran around with me for the Xerox, binding and speed-posting until this afternoon. Thanks to India Post at Jayanagar 11th Main which is open even on a national holiday like Ramzan today!

Meanwhile, my viva date has been announced at http://www.bits-pilani.ac.in/dlp-home/viva/sshz13.htm. Look for Serial Number 73 which says it's on 3rd Dec 2005.

Email me or call me for anything you may have.

Tuesday, October 18, 2005

Cat is out of the bag: VPN

Since afternoon today, this nagging message popped up again - every time I tried to bind web services dynamically. I thought "Oh God, why am I going backwards when I dont have proper time to go forward?"

---------------------------
Error
---------------------------
The underlying connection was closed: Unable to connect to the remote server.
---------------------------
OK
---------------------------

I thought there is something I changed - oh yes, I changed the namespaces of both web services. But that did not work. I tried changing proxy settings in machine.config and web.config files. No use.

I tried running the webservice directly from their original location - http://localhost/webservice1/service1.asmx/HelloConcept - this gave me a cute string output!

All this while, I noticed from the corner of my eyes at the taskbar icons - the Skype messenger was trying to login continously - but for some reason it couldn't.

Were they co-related? You bet...I remember changing the VPN server today since my regular server disconnected twice early in the morning.

Now - I disconnected from the VPN tunnel - with just the Internet connectivity on. You know what - Skype connected!

And you know what what - my application was able to bind to web services dynamically - without any unwanted messages!

Now you know the cat is out of the bag - VPN - now I can't help wondering if this might've been the reason from some nasty errors a few days back??!!

Lesson: You never know if one's solution is a problem to something else, or if one's problem is somebody else's solution!!! So, focus on whether you want to deal with a solution or a problem - one at a time. So much for peace and harmony!

Monday, October 17, 2005

The story so far...

This is sort of building the infrastructure for the actual implementation of the project (I would say it is 80% of the hard-work!):
1)Getting IIS to host ASP.Net web services
2)Creating a web service from .Net, describe and publish it on test UDDI registry provided by Microsoft.
3)Using WSDL and UDDI SDK, I'm able to find a method exposed by all services on the UDDI registry - ie. get details of all published web services which have exposed a function/method along with their accesspoints and binding keys. I can do this at run-time or at design-time by adding a web reference.
4)In short, my application can search for a service (from UDDI registry) which does a specific task - dynamically and invoke it. All we need to know is some understanding between the service providers and my application - on the interface of the exposed method.

Things to cover in this week (by 23rd - I really hope so!) - basically this is moving on to actual implementation of the project items:
1)Build the web services
2)Implement GUI - for a customer and for a Technical Support Engineer
3)Expose a web service hosted on a Linux box - this may take some time (considering I need to - get Apache web server to host web service and re-write the web service in Java).

Coming up...
1)24th to 30th Oct 05 - Prepare and validate the Final Project Report from Mentor/Examiner (mind you this is not a project demo).
2)31st Oct 05 - Courier the hard-copy of latest Final Project Report to BITS
3)Between 7th Nov to 11th Nov 05 - Demo of Project to Mentor/Examiner
4)Someday in Nov/Dec 05 - Viva at BITS Campus at a date BITS announces.

Somebody had called BITS office today and they told her BITS would announce the Viva dates by the end of this week (23rd Oct 05). That's the flash news!

On a finishing note, I even dreamt of invoking a web service for a handful of hours I slept yesterday!

Thursday, October 13, 2005

Discovery of discovery?!

Having done that, now my goal was to find a way to search for a business/service at run-time ie. programatically discover services from UBR.

On one night, I let my system download and install MS Platform SDK (~450MB) - I turned it on and woke up in the morning to find it had done it so well.

After some good amount of playing around, I realized I was adding reference to C:\Program Files\Microsoft UDDI SDK\2.0 Beta\Microsoft.Uddi.Sdk.dll instead of the latest from C:\Program Files\Microsoft Platform SDK. This I got to know when I found (or rather did not find!) some class members of microsoft.uddi.

Then, I went through C:\Program Files\Microsoft Platform SDK\Bin\UddiReadMe.htm to "%ProgramFiles%\Microsoft SDK\Bin\UddiSdkRegister" - a utility to get the latest UDDI SDK listed in the MS VS.Net Global Cache of references of assemblies. Mind you - run this from VS.Net command prompt - else it says gacutil.exe is not added to path.

Created a C# Console application to find no. of business listed on UBR:
//establish connection to UDDI server for inquiry
UddiConnection uc = new UddiConnection();
uc.InquireUrl = "http://uddi.microsoft.com/inquire";

//create an onject to find a business
FindBusiness fb = new FindBusiness();
fb.Names.Add("Microsoft");

//send the prepared find business request
BusinessList bizList = fb.Send(uc);
Console.WriteLine("Businesses found=" + bizList.BusinessInfos.Count.ToString());


Then, this is what I get:
---------------------------
Error
---------------------------
The underlying connection was closed: Unable to connect to the remote server.
---------------------------
OK
---------------------------

Tried some things on the references to this error at
http://support.microsoft.com/kb/819692/
http://weblogs.asp.net/tmarman/archive/2003/04/06/4948.aspx

But what really helped me was this one:
http://geekswithblogs.net/ranganh/archive/2005/08/29/51474.aspx

Found machine.config file at C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\CONFIG

Made changes like this at a portion which gives you instructions to add your custom settings for . Mind you - open this file in textpad or VS.Net for better indentation (notepad gave me some strong feelings!). Note that I have inter-changed the tagging characters "<" and ">" just to get these lines on this post:


>defaultProxy<
>system.net<
proxyaddress="address:port"
bypassonlocal="false"/>
>/system.net<
>/defaultProxy<
The following entry enables reading of the per user (LAN) Internet settings.
Adding additional proxy settings, without first setting to "false",
will individually override. Note that "Automatic configuration" and
"automatic configuration scripts" cannot be read.

>proxy< settings:
usesystemdefault="[true|false]" - Read settings from Internet Options (see above)
proxyaddress="[string]" - A Uri string of the proxy server to use.
bypassonlocal="[true|false]" - Enables bypassing of the proxy for local resources.


use this section to disable proxy use for matching servers
example:
>bypasslist<

>/bypasslist<



Voila - I got the result:
C:\Documents and Settings\machanis\My Documents\Visual Studio Projects\ConsoleApplication1\bin\Debug>ConsoleApplication1.exe
Businesses found=18

Don't you see I'm having fun in crumbling, faltering, getting lost, hanging on to the ropes and - then getting upto this point??!! :-)

Senor...some updates for you

They say if you dont have anything to say, then either you're rocking or else rotting so much you cant say anything.

Well, in my case thankfully it was on the side of gliding gleefully - though not exactly rocking.

There are lots of things I did in the past few days on this project. Hmm, er...let me try to document it until my patience runs out of me - you'll see a lot of posts on top of this.

To begin with, after my OS was re-installed fresh, ASP.net started dancing on the IIS floor.

I kicked off my odyssey by a simple web service (WS).

Then, I thought of hosting a personal UDDI registry for this project - but voila, it turns out we cant do that unless we're running Windows 2003 Server - it has UDDI services to do that. I pondered on a dual-boot OS on my system - but then, soon decided to use a public UDDI Business Registry (UBR) by Microsoft (MS). They have a replica on test UBR where folks like me can play around.
http://test.uddi.microsoft.com

I created a MS passport > created a provider > published tModel > published service ....and created a sample VB.Net web application with a button which invokes the registered web service on click. I found this MSDN seminar very useful to come up to this point...
Introducing UDDI in Microsoft Windows Server 2003

Monday, September 26, 2005

2 weeks of trials and errors

The same thing continued...and instead of getting any further, last weekend I went backwards. The IIS started acting up and the snap-in to the Management Console bombed.
---------------------------
Microsoft Management Console
---------------------------
Snap-in failed to initialize.
Name:
CLSID:{A841B6C2-7577-11D0-BB1F-00A0C922E79C}
---------------------------
OK
---------------------------


I went upto a point where I started madly deleting registry entries for IIS - ofcourse, after I backed it up. It gave something like this:
"Error writing encrypted data to web server's configuration database.."

I tried dumping IIS and installed Apache and ran a asp.net sample code as well.

But then, things came to a stand still - I started exploring options to install Windows Server 2003.

Today, I got IT folks to format my c drive and reinstall Windows XP Pro - it was getting too slow and too many things on it.

I dont know if I should be happy - now that IIS is up and more importantly - created and executed a sample asp.net web service project successfully!

Looks like finally some action begins tomorrow...like it never did before!!! I will sleep well today after 2 horrible weeks of madness and frustration...

:-)

Wednesday, September 21, 2005

Uninstall and Reinstall

Uninstalled .net and IIS along with framework 1.1

Reinstalled IIS first then .net.

Then tried all I could - no go. Am I at a deadend??!!

Tuesday, September 20, 2005

VS.Net update components

Got the dump of Visual Studio.Net and installed web service components - it doesn't install by default.

Then, got the original message:
---------------------------
Microsoft Development Environment
---------------------------
The Web server reported the following error when attempting to create or open the Web project located at the following URL: 'http://conceptinc/WebService1'. 'The server name or address could not be resolved'.
---------------------------
OK Help
---------------------------


Did aspnet_regiis -i

Got the familiar
Visual Studio .NET has detected that the specified Web server is not running ASP.NET version 1.1. You will be unable to run ASP.NET Web applications or services.

Saw that there was a older version folder
C:\winDOWS\microsoft.NET\framework\v1.1.3705 - deleted it.

Nogo.

Did aspnet_regiis -i and regsvr32 aspnet_isapi.dll

And then...

http://www.mastercsharp.com/India/Forums/ShowPost.aspx?PostID=700

Even came up with a nice batch file...
Echo Stop IIS

iisreset /stop
echo "----------------------"

echo "Deleting the ASPNET account."

net user ASPNET /delete

echo "----------------------"

cd C:\winDOWS\microsoft.NET\framework\v1.1.4322

echo "Reregistering ASP.NET and the ASPNET account."
aspnet_regiis -i

echo "Restarting IIS."
iisreset /start
echo "----------------------"

Enough of this naatak...looks like the only way out is to install IIS first and VS next - then aspnet_iis -i once. I had done it vice versa and thought there would be a workaround - but then, as always there seems to be no shortcut.

Friday, September 16, 2005

HOW TO: Configure Different Versions of an ASP.NET Application Running on the Same Web Server

Good article for a future use, but registering my test1 web service to ASP.NET 1.1 did not help.

HOW TO: Configure Different Versions of an ASP.NET Application Running on the Same Web Server

Should I look at removing all and installing IIS and VS in a sequence?

BUG: "ASP.NET Version Mismatch" Error Message When You Open an ASP.NET 1.0 Project in Visual Studio .NET 2003

BUG: "ASP.NET Version Mismatch" Error Message When You Open an ASP.NET 1.0 Project in Visual Studio .NET 2003

How it all started

PRB: "The specified Web server is not running ASP.NET version 1.1" error message when you create an ASP.NET 1.1 application and you have both ASP.NET 1.1 and ASP.NET 1.0 installed

This is error message which lead me to what ever happened yesterday.

Right now, it allows me to create a ASP.NET Web Service project under VB.NET projects. But then I get this:
ASP.NET Version Mismatch

Visual studio .NET has detected that the Web server is running ASP.NET 1.0....

and then asks me whether I want to upgrade it to ASP.NET 1.1 or make it compatible with 1.0.

Story so far

I can its been a partial success with this thing evidently giving a run to most folks (the link below will tell you that).

I tried:
1) Make sure the "Distributed Transaction Coordinator" service is running (!)
2) reinstall IIS
3) run "aspnet_regiis.exe -i"
4) run "regsvr32 aspnet_isapi.dll"

Then I reinstalled dotnet Framework 1.1 - nogo.

On the other hand, this time I tried changing the localhost in the project name to http://conceptinc/test1 - where conceptinc is the name of the website under IIS. I got another message which said web server is still using ASP.net 1.0 where as latest is 1.1. It gave me an option to upgrade to 1.1 later or make this app 1.0 compatible. When I chose the latter, I got a message saying it was unable to create project files.

It's now 2:20am and it's good enough for a day. :)

Thursday, September 15, 2005

I'm not alone...others have same problem

http://blogs.msdn.com/tmeston/archive/2003/07/08/9806.aspx

HTTP/1.1 500 Server Error

Fixed it, also configured IIS 5.1 on my Win XP pro. Getting http://localhost home page I created on c:\inetpub\wwwroot\default.htm

But when I try to create the same project, I get

---------------------------
Microsoft Development Environment
---------------------------
The Web server reported the following error when attempting to create or open the Web project located at the following URL: 'http://localhost/WebService1'. 'HTTP/1.1 500 Server Error'.
---------------------------
OK Help
---------------------------
Still trying to fix it.

ASP.NET version 1.1

Ok, now read all about SOA stuff...it;s implementation time. I try to create a ASP.Net Web Service project...and what you get

Error:
---------------------------
Microsoft Development Environment
---------------------------
Visual Studio .NET has detected that the specified Web server is not running ASP.NET version 1.1. You will be unable to run ASP.NET Web applications or services.
---------------------------
OK Help
---------------------------

Googled for a fix:
aspnet_regiis.exe -i

why another subsidiary?

concept inc is expanding and in a mood for funding an enterprise which has to implement an SOA solution (but doesn't know how to do it, yet!).

In other words, this is going to be a wierd sort of documentation of all my efforts/bugs/problems/hurdles/successess/discoveries..... while doing my project for the final semester MS (Software Systems) at BITS-Pilani. It's trying to implement an SOA solution for Knowledge Management System - taking in a specific user scenario.

This blog is exclusively aimed at **my own** use and does not try to make any sense for any one else. In short, this is for private use and if data seems haphazard, I dont intend to clean it up for any body else's sake! Crazy, isn't it???!!

It's gonna be lots of fun!