<location path="" overrideMode="Allow">
which wraps the BD-installed handlers to:
<location path="Default Web Site" overrideMode="Allow">
and IIS7 came back to life. Yay me! Unfortunately, when I tried to run the BlueDragon Admin, I got a 500 error and something about a bad "ManagedPipelineHandler" in the BlueDragon configuration (and, of course, that text was nowhere to be found in the config file!).
Google turned up one reference to this, on New Atlanta's self-help mailing list. Someone called Brian had hit the exact same error back in July but no one had replied. Darn!
So I emailed New Atlanta's support and today I got a response from Lori who confirmed that the applicationHost.config settings were correct (with path="") but asked me to check a couple of things... Number one was whether I had installed ASP.NET. Hmm, I thought that was built into IIS7 so it hadn't occurred to me I'd need to set that up independently. It also hadn't occurred to me that BD7.NET would require ASP.NET but that's another story.
Lori had attached a screen shot of the same Windows program features dialog that I'd used to enable IIS7 but she showed the options I needed to check to enable ASP.NET.
Things still didn't work right but now I could figure out the solution on my own: since I'd installed BD7.NET before ASP.NET, applicationHost.config wasn't what BD expected so all I had to do was merge the BlueDragon handlers into the ASP.NET handlers. Yes, that worked as expected!
IIS7 works. BlueDragon works. I can access both from Vista and from OS X. I configured a MS SQL Server data source (to connect to the SQL Server Express instance) and that worked too! Yay!
Then I tried to configure a MySQL data source and got "Could not load file or assembly 'MySql.Data' or one of its dependencies." *sigh*
So I downloaded the Connect/NET 5.0 ADO-based driver and installed that and rebooted. Still the same error message.
Back to Google I guess...
15 responses
1 Mike McConnell // Aug 8, 2007 at 5:25 PM
I truly hope that Microsoft listens to the (many) similar complaints posted on blog after blog on the internet. If their history is any indication of what they will do (or not do as the case may be), we're screwed. Good luck with your installs. I'd be very interested to know how they turn out.
M. McConnell
2 Vince Bonfanti // Aug 8, 2007 at 6:15 PM
In any case, we need to do a better job by having the BD.NET installer detect whether ASP.NET is installed, and by updating our documentation. These will be done in the upcoming BD 7.0.1 release.
I'll follow-up on your MySQL issue tomorrow morning. I assume you installed the ADO.NET provider (driver) in the GAC (C:\Windows\assembly)? You might try creating a "bin" directory within your web server document root and placing the MySQL ADO.NET driver there.
3 Sean Corfield // Aug 8, 2007 at 7:24 PM
4 Bill Staples // Aug 8, 2007 at 7:24 PM
5 TJ Downes // Aug 8, 2007 at 9:32 PM
Not sure what version of Vista and CF you were trying to use, but I have been using CF 8 on IIS 7 for a while with no issues whatsoever. It seems pretty speedy to me.
I recommend to anyone using Vista who is a developer and can secure their own PC using Firewall and AV to DISABLE USER ACCOUNT CONTROL. Half the reason people dislike Vista is UAC, and it is a headache.
6 Sean Corfield // Aug 8, 2007 at 9:39 PM
7 Calvin // Aug 9, 2007 at 3:44 AM
8 Vince Bonfanti // Aug 9, 2007 at 7:50 AM
Regarding your MySQL issue, the default MySQL ADO.NET "installer" doesn't do anything but copy the files to your filesystem. That's not enough to make them available to BlueDragon.
The easiest thing to do is to create a "bin" directory within your web doc root (for example, "C:\Inetpub\wwwroot\bin") and copy the "C:\Program Files\MySQL\MySQL Connector Net 5.0.7\Binaries\.NET 2.0\MySQL.Data.dll" file to the "bin" directory. This will make the MySQL ADO.NET driver available only for the Default Web Site.
To make the MySQL ADO.NET driver available globally, the MySQL.Data.dll needs to be installed in the Global Assembly Cache (GAC), located at "C:\Windows\assembly". This is a bit trickier, though, due to security restrictions on the GAC in Vista.
P.S. I believe these instructions are provided on the BD admin console page when you configure a MySQL datasource. We'll review these instructions to see if they can be clarified.
9 Vince Bonfanti // Aug 9, 2007 at 10:48 AM
10 Sean Corfield // Aug 9, 2007 at 12:55 PM
The data source setup page in the admin does talk about how to install the driver (although it refers to .NET 1.1) but because the text was below the (long) table with all the MySQL options, I hadn't noticed it when I tried to add the first data source.
Guess I'll have to start learning about GAC and so on in order to use this newfangled operating system :)
11 Vince Bonfanti // Aug 9, 2007 at 1:31 PM
Think of the "bin" or "App_Code" directories as a sort of "local classpath" for your web applications (similar to "WEB-INF\lib" for J2EE webapps).
12 Sebastiaan // Aug 13, 2007 at 4:36 AM
just a question: why are you setting up BD.NET instead of the normal BD running with Apache and MySQL? By default BD comes with IIS and MSSQL support and after a little tweaking and adding a DLL it runs on the abovementioned. Or is this just a test of the real life situations you face everyday? All those people hooked on .NET and being stuck with Microsoft?
At my work, a Dutch ministry, we're obliged NOT to get stuck with one vendor and thus have chosen NOT to use only .NET, but also JAVA as a platform. Above those two platforms we will use Coldfusion for all front- and middle tier development. But as Coldfusion is native 'stuck' to JAVA most of the stuff we do is centered around JAVA. .NET only comes into the picture when we want something fast and there aren't enough Coldfusion developers available. Our second option is then to turn to the tidal wave of .NET developers and have them develop the necessary software. As you may understand from my story we see .NET as plan B, even though it's becoming harder NOT to create software in .NET. Anyways, good look with Googling ;-)
13 Vince Bonfanti // Aug 13, 2007 at 7:11 AM
If you're "obliged NOT to get stuck with one vendor," then how does your ministry justify the use of ColdFusion? Is it because you can point to BlueDragon, and say, "CFML is not a single-vendor solution"? Prior to BlueDragon how did your ministry justify using a single vendor product (ColdFusion)?
I'm not trying to cause trouble here, just curious. I've seen a similar discussion recently related to Flash, where people want to say "single-vendor, proprietary is bad" when the single vendor is Microsoft, but "single-vendor, proprietary is OK" when the vendor is someone else (such as Adobe with either Flash or ColdFusion).
14 Sean Corfield // Aug 13, 2007 at 8:48 AM
15 Sebastiaan // Aug 14, 2007 at 12:20 AM
@Vince: Fun to communicatie with the CEO of a company that produces a product I've been using for a long time and am very happy with ;-)
To answer your "non-troublesome" question:
At the ministry of Social Affairs and Work we've been using Coldfusion (CFML) for more than 7 years. From day one this was an Allaire product and the only one of it's kind. The choice was easily made at the time: CFML was the language to go, far superiour to all other programming languages and application servers at the time. Almost like clockwork we went through the different stages of professionalising our development department, until it was decided that the government and it's institutions would no longer develop in-house. During that time we made the transition from Allaire Coldfusion 4 to Macromedia Coldfusion MX (skipping 5) and are now moving towards migrating all servers to Adobe Coldfusion 7. As you know Coldfusion as a product was always locked to one vendor, be it with a different "prefix". Then came BlueDragon and all of a sudden Coldfusion was a product of one company and CFML was a common language it shared with NewAtlanta.
Privately I've been using BD since version 6, mostly because it's been a free to use CFML Application server and because it had many benefits over the sometimes heavy and inconsistent (at the time) Macromedia Coldfusion Application server. Together with a colleague at work we slowly started voicing our opinion that it might be a good idea to see if we as a Ministry could look into the possibilities that another CFML vendor, namely NewAtlanta, were offering at the time. As we both were very satisfied with the product (BlueDragon) and had found that it also operated perfectly in an Open Source environment (Apache, MySQL), we started to look into the possibility for a CFML vendor switch. As the "one-vendor-per-technology-is-bad" attitude slowly grew within Government and Open Source became the new "buzz-word", it forced us to look at our current "one-vendor" policy regarding CFML. Presently we're re-building our IT-architecture from scratch, trying to cover every aspect of our IT-platform. One aspect is the programming language we will be using on top of .NET and JAVA. As CFML is our prime language and what more than 90% of our web-based applications and websites is built on, we'll most probably stick to CFML. But it's not said that we then automagically are sticking to Adobe. As with all Government we need to check our possibilities per technology and where 7 years ago there was only one serious contender (Allaire Coldfusion - I still have their t-shirt!), today we face three serious contenders and one upcoming.
So Vince, to answer you in a nutshell: yes, "single-vendor, proprietary is OK" was the official line 7 years ago and we've actually just gone with the flow since then. Today we know better and are seriously looking at our alternatives. My personal experience with BD is only positive, but having said that, Coldfusion 8 (Scorpio) also has some very neat features ;-) The last word has not been spoken in this matter!