BizTalk Server and UDDI 3.0

One of new SOA capabilities in BizTalk Server 2009 are UDDI services. I found an article at Packt Publishing written by Richard Seroter. UDDI stands for Universal Description and Discovery Information and is a type of registry whose primary purpose is to represent information about web services. As I was reading the article it gave me an itch to try this UDDI stuff out myself. So I opened my BizTalk 2009 Sandbox (VPC environment) and noticed UDDI was not installed. To let you know what to do I decided to create this post to show how UDDI is installed on a BizTalk 2009 Development Environment.

I fired up BizTalk Server 2009 CD and installed UDDI Services on my Sandbox.

UDDI 1

I selected all available components, and clicked install.

UDDI 2

UDDI 3

After only a minute or so UDDI services were installed.

UDDI 4

After installation UDDI Services Configuration is necessary; I choose basic configuration see what needs to be done. There are three components that need to be configured:

* UDDI Services Database Component
* UDDI Services Web Application
* UDDI Services Notification Service

UDDI 5

To enable UDDI Service you only need to click component and then check 'Enable UDDI Services Database Component'. You can then choose SQL Server Instance, Database File and Log Locations and Site Name. I left everything as is except I unchecked SSL for publication of this UDDI Services Site (It is a Sandbox, so SSL is not necessary in my view). Apply configuration and off you go.

 UDDI 6

UDDI 7

UDDI 8

Next component is Web Application. Double clicked component UDDI Services Web Application, checked 'Enable UDDI Services Web Application' and left everything as is except for Self-register this site's services in the UDDI registry and Active Directory, since I do not have and AD on my sandbox. Again apply configuration and of you go.

I then ran into a problem:

Could not load file or assembly 'Microsoft.Web.Administration, Version=7.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

And solution to this is the following:

FileNotFoundException Occurs When Running ServiceModelReg.exe on Windows Vista
On Windows Vista, ServiceModelReg.exe may fail with the following message:
System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Web.Administration, Version=7.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

This is due to an incomplete installation of the Windows Activation Service (WAS). Ensure that all components of WAS are installed prior to running ServiceModelReg.exe. To do so, complete the following steps:

Open the "Turn Windows Features On or Off" dialog by clicking Start -> Control Panel -> Programs and clicking the "Turn Windows Features On or Off link."
In the tree view, select the "Windows Activation Service" checkbox.
Expand the "Windows Activation Service" checkbox and ensure the following sub-components are also selected:
- .NET Environment
- Configuration APIs
- Process Model
Click "OK" and wait for the components to finish installing.
Re-run ServiceModelReg.exe to register the WCF activation components with WAS.

These steps will install the minimal set of components required to support WCF service activation over non-HTTP protocols.

I noticed that Web Server Role was not added as a Server Role on my sandbox. I added Server Role on in my case Window 2008 Server (which is an incomplete installation of WAS). I then open commandbox and performed following command:

C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\ServiceModelReg -i.

(see screens below)

UDDI 10 

UDDI 11

Do not forget if component failed to configure to close UDDI Services Configuration and open it up again.

UDDI 9

UDDI 12

Last but not least is UDDI Services Notification. Double click this component and check 'Enable UDDI Notification Sercive'. Notice that SMTP Server is needed. In my case another Server Role. I added STMP Server and could then fill in SMTP Server and a bogus email address. I choose Anonymous authentication for convenience and applied configuration. This last step of configuration went successful.

UDDI 13

UDDI 14

UDDI 15

UDDI 16

UDDI 17

UDDI 18

To check if things are up and running I fired UDDI Services Management Console up and noticed both UDDI components (Web and Notification) were running.

image

Now I am able to check out UDDI as described in article by Richard. If you are in a situation where you want to install UDDI on a machine with BizTalk or other machine hopefully this post will give you some guidance of insight.


Technorati:

Comments

Richard Seroter said…
Looking forward to what you do next ...
Rob Plahn said…
I've had success setting UDDI in my sandbox (single server) configuration but not in the mulit-computer configuration with a remote SQL server.
The installation guide indicates that remote SQL server is supported, and mentions that if clustered, UDDI DB Comp. must be installed on both nodes.
This seems to imply UDDI DB comp. should be installed on the SQL server first (regardless of clustering).
This is what I've done but I've yet to be able to successfully connect the UDDI DB and complete the UDDI services config. from my BizTalk 2009 server. Keep getting unable to connect to DB. But connectivity is good, all of the BT2009 databases are connected the same way.
Ever see this problem?
Unknown said…
Yes, I have the exact same problem. Unfortunately I have no other solution than running BizTalk and SQL server on the same machine (after hours and hours of trying to connect to a remote SQL server when doing UDDI configuration.) //Niklas
William said…
To install the UDDI 3.0 server on a seperate machine,
1.) Install only the UDDI Servies Database component on the SQL Server instance/machine. (After install is complete, configure)
2.) Install the remaining part of the UDDI Services on your BizTalk instance/machine. (After install is complete, configure)

That should do it.

William
Avinash said…
Hi All,
While configuring UDDI services I am getting Error as:
There is already a database named UDDI3 created. You should backup this database if needed and then remove it.

What should i do to resolve this ?

Thanks.

Popular posts from this blog

DTAP Strategy: Pricing and Licensing

Table Operation on Oracle 11g XE with OracleDbBinding

Integration, the community blasting into 2017!