Posts
245
Trackbacks
0
August 2010 Entries
Incompatibilities around BizTalk Server 2009

This is a quick post … after a lot of challenges with a recent deployment of BizTalk Server 2009, it is important to keep the following very much in mind.

BizTalk Server 2009 and SQL Server 2008 R2 are not the best match, work with SQL Server 2008 with SP1.

.NET 4.0 has the ability of breaking a not yet configured BizTalk deployment.  Where?  Enterprise SSO configuration will refuse to talk to the SSODB (mind you, the process will create the DB).

There are fixes for this last one, just make sure you are aware in case someone runs Windows Update or maybe it was configured to run automatically (not best practice to do this in production, but we are past that lesson Smile ).

The fix:

You will need to run regasm.  The path to it?  If you are working on a 64-bit system:  C:\Windows\Microsoft.NET\Framework64\v2.0.50727.  32-bit would be here C:\Windows\Microsoft.NET\Framework\v2.0.50727.  It is not just regasm, there is something you need to let it register.

Again, if you have a 64-bit system you will need to register both the 64-bit and 32-bit files.

32bit:  regasm “C:\Program Files\Common Files\Enterprise Single Sign-On\win32\ssosql.dll”
64bit:  regasm “C:\Program Files\Common Files\Enterprise Single Sign-On\ssosql.dll”

Also, you will need to update your Enterprise SSO.

More information on this can be found here:  http://support.microsoft.com/kb/2252691/

Posted On Tuesday, August 31, 2010 11:20 PM | Comments (0)
August and my intro to Azure Diagnostics

August for some reason has been the busiest month I recall in a while.  It has had a good doze of the products I love to work with, and it has given me the opportunity to get into one more, Azure.

There has been BizTalk Server, SharePoint, SQL Server and Team Foundation Server and the surrounding tools.  But I have been enjoying working with Azure.  It’s a nice complexity full of good stuff (so far).

In working with a client’s deployment the task came to needing to monitor the implementation.  And since I am not the developer in this, I am the admin, it became a tad odd for the developers to be receiving code from an “admin” dude; mind you I have done Microsoft app/web dev for the last 18 years.

Quickly discovered that even though Azure logs data, it is not persisted until you tell it to.  But, then again there are some pretty cool tools, like Cerebrata’s Azure Diagnostics Manager that will just work in an amazing way. Thank you to Gaurav Mantri for pointing out those tools.

To make sure there is a fair assessment on the Azure MMC and Cerebrata, I will make my first posts in September do just that.

So, we say goodbye to a great month of August and hope to have a great September as well, maybe a little cooler … but that is up to a different type of cloud to help.

Posted On Tuesday, August 31, 2010 11:02 PM | Comments (0)
Something on LightSwitch and using SharePoint as a Data Source

LightSwitch has indeed come an shown some of that good old RAD model.

How about some SharePoint as the Data Source?

Posted On Monday, August 23, 2010 8:28 PM | Comments (0)
Visual Web Developer 2010 and SQL Server Express User Instances “Issues”

The road to learning is such an awesome thing!

Yesterday, while browsing the MSDN Forums, I came across some people having frustration with SQL Server Express, Visual Web Developer 2010 and the Web Installer.

The Issue

After installation, if you create a New Website with VWD 2010, follow the steps below:

  1. Access the Web Site Administration Tool (Solution Explorer Toolbar)
  2. Click on Provider Configuration (Once the Web Site Admin Tool opens)
  3. Click on Select a single provider for all site management data
  4. You will find AspNetSqlProvider, click Test.
  5. Ready?  Frustration, here it comes …

    image

 

The Analysis

I took it as a call to research what in the world was going on. Went ahead an ran the Web Platform Installer, installed SQL Server 2008 R2 Express.

Note: You do not install two versions of SQL Server, you are just installing the SQL Server 2008 R2 Express engine, and the SQL Server 2008 Objects (as in API)

image

 

Everything ran fine, got installed and voilà (say it this way for maximum effect, boy-lah, I know that is not how it’s pronounced).  Anyway back to the issue at hand.

I go on to repeat the steps above and baaam, there it was.  The issue had been found.  What makes it more frustrating is the fact it gives you a hint on what to do, but no true identifier as to what is really going on.

Since we see that connection attempt fail, what can we blame?  You thought about it, SQL Server!  Remember, frustration is in the house.

What to do?  Likely you ran aspnet_regsql, went through the process of creating the membership database, went back ran the Test connection again, and it showed no difference.

 

Resolution

Maybe not 100% resolution, but in my IT career I have discovered that if you hold attitude against a specific product, product will win and it will get back at you with a vengeance.  It does not matter how many degrees, certification and such you have, none of this is in question (until you bring it up), the question then becomes yet again … What to do?

What makes this situation even worse is the fact you can go to the Security area within the Web Site Admin Tool, and switch authentication from Windows to Forms.  You can create users, roles, then assign the users to the roles.  You can also create Access Rules.  And to make it even more frustrating?  The Web Application works!  It authenticates you when you run the app in the browser.  What gives?

When looking at web.config for the site (and so far it is the same for a File System or HTTP hosted site), this is what I see:

 <connectionStrings>
    <add name="ApplicationServices"
    connectionString="data source=.\SQLEXPRESS;
Integrated Security=SSPI;AttachDBFilename=|DataDirectory|
\aspnetdb.mdf;User Instance=true"
providerName="System.Data.SqlClient" /> </connectionStrings>

So, it looks ok, right?  Correct, everything is fine.  BUT??!!??  The following section:

   AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true"

It is using SQL Server Express User Instances!  So, big deal, right?  NOT!!

Click the links in the References portion to understand the limitations and constraints of this. Among some things mentioned in those articles:

  • You can't find your database in Management Studio.
  • You can't attach to your database in the location where Visual Studio creates it.
  • If you manage to attach the database in Management Studio, your application can not longer user it.

Now that the “issue” is identified we have two options:

  1. Move about the web site development, knowing that clicking to Test the provider will fail but the environment is connected to a membership db.  I have not found how to have it pass the test with this configuration.
  2. Run aspnet_regsql to create an aspnetdb on the SQLEXPRESS instance installed earlier.  Then, once the aspnetdb database exists, modify the connection string on the web.config file to look like this:

    <connectionStrings>
    <add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS;
    Initial catalog=aspnetdb;Integrated Security=SSPI" providerName="System.Data.SqlClient" /> </connectionStrings>

Reloaded the Web Site Admin Tool, and then when validating the provider it showed a Successful connection.  With that said, the magic or root of the issue resides in the connection string.  And of course knowing where to go and look for in the effect of weirdness, can somewhat save the day.

References

http://blogs.msdn.com/b/sqlexpress/archive/2006/11/22/connecting-to-sql-express-user-instances-in-management-studio.aspx

http://msdn.microsoft.com/en-us/library/ms254504.aspx

Posted On Saturday, August 21, 2010 8:39 PM | Comments (0)
Some notes on encrypting connection strings that reside in Machine.config

In needing to apply this to a number of sites due to the need to standardize and centralize a connection string that is shared across multiple services, had to dive into what was involved in getting this in place.

Here is what I found:

A great patterns and practices document: http://msdn.microsoft.com/en-us/library/ff647398.aspx

But for some reason, I couldn’t find something that went along with the directive found by calling the help parameter for aspnet_regiis.

So, read the guidance but my command ended up looking like this:

aspnet_regiis -pe "connectionStrings" -prov "DataProtectionConfigurationProvider" –pkm

Where:

-pe: Section to encrypt

-prov: provider to use DPAPI or RSA

-pkm: This is the setting the help info defines as needed if you are targeting Machine.config

Posted On Friday, August 20, 2010 12:02 PM | Comments (0)
Another TFS 2008 to TFS 2010 migration, more lessons learned. Part 1 of 2.

The good on the story is that migrations just keep on getting better, and actually never have been bad.  This time around there was a curveball, and it came from the SharePoint side of things.

SharePoint, it is no secret, can be temperamental when it comes to patches and cumulative updates.  Add to that temperamental side a version migration/upgrade, now this just elevated concern and risk.

Now, for the time being, I had to do what was best for the situation, and that warranted an uninstallation, and rebuild with WSS 3.0 and not SharePoint Foundation.  After all, the most important part of this was access to the information that was stored in the Content DB. There is a lot of shoulda, coulda, woulda.  But success was achieved.

Now, another roadblock, this time, since SharePoint extensions had been configured to SharePoint Foundation 2010, and that was taken away … well, what to do?  I have seen this asked on the MSDN Forums quite a bit.

Here is the lesson learned. TFS deploys web services and additional components to SharePoint.  And how would this be done you ask?  How about using WSP files (SharePoint solutions)?  That would be the path and the way to go.

Where are the WSP files?  I used the C:\ drive for deployment, therefore the path is C:\Program Files\Microsoft Team Foundation Server 2010\Tools\Templates.

Combine that location with the WSP files, and use stsadm to deploy.

Files? 

image

Process?

If you do not have the “12 hive” in your path, then

  1. Open a command prompt as Administrator
  2. Change directory to %programfiles%\Common Files\MIcrosoft Shared\web server extensions\12\bin
  3. execute stsadm –o addsolution –filename <path to one of the files above>, example C:\Program Files\Microsoft Team Foundation Server 2010\Tools\Templates\Microsoft.TeamFoundation.SharePoint.wsp.
  4. Repeat step 3 for all WSP files.
  5. Next comes the process of deploying the solutions to take effect and “unleash their goodness”, yeah or being technical, get the web services for integration in place.
  • Option 1: use stsadm –o deploysolution –name <name of solution>, there are several parameters to work with. http://technet.microsoft.com/en-us/library/cc262459(office.12).aspx
  • Option 2: use Central Admin to deploy. This means, once you access Central Admin, go to Operations, then from Global Configuration, click on Solution Management.  At this point, you will need to click each of the deployed solutions in the previous steps, make sure they deploy successfully.
Next, we will look into the Configuration from Team Foundation Administration Console.
Posted On Thursday, August 19, 2010 9:31 PM | Comments (2)
How do you manage your Azure?

Recently in preparation for a project, I was pointed to the Azure MMC.

This is a great tool, while the portal gives you the capabilities that come with managing the creation and basic upkeep of the environment, the MMC tool gives you the option of looking at metrics and understand performance elements of what you are running and running against in terms of performance.

Give it a download and then try it out. When you download, it is an executable files that will deploy a project.  When that deployment is done you will come to find an open folder with 3 folders in it, and a command script called StartHere, double click and the actual MMC snap-in deployment takes place then.  http://code.msdn.microsoft.com/windowsazuremmc

Take some time (about 15 minutes) to review the feature and configuration video.  Click here to watch the video.

Posted On Sunday, August 1, 2010 7:25 PM | Comments (1)
Disclaimer: The views expressed on this blog are my own and do not necessarily reflect the views of my employer.

Creative Commons License


Check out my about.me profile!

INETA Community Speakers Program

Follow enriquelima on Twitter
Locations of visitors to this page