Thursday, October 26, 2006
Posted on Thursday, October 26, 2006 9:46:32 PM (Mountain Daylight Time, UTC-06:00)  Comments [1] | 
Categories: Blogging | dasBlog | General
I'm not sure what it is about fall, but for some reason I always get an itch to re-design things about now. Thus,  in addition to upgrading to  dasBlog 1.9, I've also re-cooked my look and feel. Although I have not been doing mych web work lately, for some reason my CSS seems to have stuck better than most other things. Besides the time fiddling in photoshop to come up with the look, it only took a few hours to whip up the skin.

Changes:
- More "web 2.0" overall (minus ajax)
- bigger fonts
- change style sheets (Settings section)
- tag cloud
- Nicer comment entry box
- styled comments (you can actually tell who wrote them now!)

Still to come:
- re-skin my actual ASP.NET 2.0 site and add more content (playing with OpenLayers + .NET)
- Contact page with IM and Email info
- addition of LightBox into blog for viewing large images

For those who read this via  an aggregator, here's a peek...


New "web 2.0" look complete with fades and large fonts



and a "tag cloud" - how did I ever blog without one?

I promise to post more ArcObjects goodness shortly - I'm playing doing some enterprise research & design work with ArcGIS 9.2 these days (particularly looking at SDE direct connect + windows authentication),  and we all know that ESRI will cut out my tongue should I talk about anything prior to release.


Tuesday, August 29, 2006
Posted on Tuesday, August 29, 2006 9:20:20 PM (Mountain Daylight Time, UTC-06:00)  Comments [0] | 
Categories: Blogging | dasBlog | General
I've been really busy lately, but after seeing a couple hundred posts on Windows Live Writer, I had to try it out.

It's nice and easy to install, and natively supports "dasBlog" - not specific about which version though. I'm running 1.8.5223, which is the latest release from what I can tell. And while WLW picks up the theme, and lets me do all kinds of neat stuff with images and maps, unfortunately, it throws an error when I publish...


This is not exactly useful, but it appears to be an issue with the Blogger API - either who WLW is trying to use it, or how WLW is calling it. The net result is that I can't use it. Oh well, I've been surviving using w.bloggar and the on-line editor.

Apparently it also supports Community Server, so when I find some time, maybe I'll see if it works for ArcDeveloper.net.
Monday, May 29, 2006
Posted on Monday, May 29, 2006 10:40:55 AM (Mountain Daylight Time, UTC-06:00)  Comments [0] | 
Categories: ASP.NET | dasBlog
After much messing around trying to get the dasBlog CAPTCHA to work when my blog was running under a .NET 2.0 application, I finally gave up and moved it out to it's own sub-domain (blog.davebouwman.net). This way both sites can happily coexist - one in 1.1 and the other in 2.0, and CAPTCHA will reliably work.

The main feed is via FeedBurner, so it has been updated. The other problem was avoiding 404 errors for people who have bookmarks to the site, or who come in from Google. The basic problem was how to redirect all requests to the old Url to the new Url.

The pattern looks like this:

www.davebouwman.net/blog/SomeContent.aspx -->  over to blog.davebouwman.net/SomeContent.aspx

This is just the place for a HttpHandler. The handler itself simply intercepts requests, and transforms the Url as noted above, and then redirects the client browser to the new location. Since the main site runs in .NET 2.0, I created a class in App_Code, and had it implement IHttpHandler.

The redirection code for the handler is super simple:

  public void ProcessRequest(HttpContext context)

       {

           context.Response.Cache.SetCacheability(HttpCacheability.Public);

          //re-map the Url

           string inputUrl = context.Request.Url.AbsoluteUri;

           string redirUrl = "";

        

           if (inputUrl.Contains("http://www.")) {

               //drop the /blog

               redirUrl = inputUrl.Replace("/blog", "");

               //repoint the subdomain

               redirUrl = redirUrl.Replace("http://www.", "http://blog.");              

           }

           context.Response.Redirect(redirUrl, true);

       }


Next is register the handler in web.config. The syntax for adding the handler into Web.Config is not exactly clear: Depending on where you handler is implemented, there are two ways to specify the type:

1) If the implementation is in another assembly, then you must put the assembly name after the type. This is what I most commonly found whe Googling, and is standard practice for .NET 1.1

    <httpHandlers>
      <add verb="*" path="~/blog/*.*" type="SomeNamespace.SomeHandler,SomeAssembly" />
    </httpHandlers>


2) If the implementation is in App_Code (ie it's in the running assembly), you do not need to specify the assembly name. This makes sense as in ASP.NET 2.0, there is no assembly name! But this is not exactly clear.

     <httpHandlers>
      <add verb="*" path="~/blog/*.*" type="BlogRedirectHandler" />
    </httpHandlers>

After I got this sorted out, everything was working smoothly on my home system. However, when I moved the code to my hosting provider (www.webhost4life.com), the handler would not work.

Solution
I'll jump to the conclusion, and if you're having strange problems with web.config & HttpHandlers, read the Details section below.

The underlying issue was the in order to have dasBlog live inside a .NET 2.0 web site, I had to create a separate .NET application at www.davebouwman.net/blog. Even though I removed the folder, IIS was still thinking that the application existed. Since it's a hosted system, and I did not have direct access to the IIS manager, I had to muddle around in their ".NET Application" tool - where I finally saw that the application was still mapped in IIS. Once I deleted this application, everything worked.

More Details...

I had moved the /blog folder out of my main site, and did not intend to have a /blog folder at all - the HttpHandler would match the Url pattern, and handle the request without needed a real folder. Only when I made a request, I got an ASP.NET Error stating that the requested folder does not exist. While technically accurate, this seemed like an odd error because I did not get it on my home system.

I then re-created the /blog folder, when I got a "Could not create type" error, which would show the handlers section from web.config. No matter how I setup the handler  - in App_Code or external assembly, it would not load the handler.

So, I suspected that this was somehow related to the fact I used to have an application in /blog, so I changed the path in the handler to /junk/*.* and fired off a request. And it worked. This narrowed it down to something related to the /blog folder. From there I just banged around in the site manager tools that I have access to, and finally was able to delete the ".NET Application".

So - if you are having issues with httpHandlers, getting "Could not Create Type" or "could not create assembly" errors, make sure the path you are trying to handle is not registered as it's own application.

Friday, May 19, 2006
Posted on Friday, May 19, 2006 7:06:10 PM (Mountain Daylight Time, UTC-06:00)  Comments [0] | 
Categories: dasBlog | General
I had turned CAPTCHA off in dasBlog, as it was acting flaky running under a .NET 2.0 web site. I expected some spam to creep in, at which point, I'd deal with it. I've been out of town this week, and more or less off line. I just got back to find that I now have 1000's of spam comments! Conveniently, dasBlog stores the comments separately from the content (in the dayfeedback.xml files), so cleaning up is not that big a deal - just find the big ones (50k as compared to the usual 1k) and delete them.

But, I guess it's time to deal with the problem and get this working consistently under .NET 2.0.


Wednesday, February 22, 2006
Posted on Wednesday, February 22, 2006 8:04:17 AM (Mountain Standard Time, UTC-07:00)  Comments [0] | 
Categories: dasBlog | General
This is weird. On my development system, the Captcha images show up when adding comments into dasBlog. However, on this live site, they do not. No errors, but also no images. I have no idea what's gone wrong, and I don't have a lot of time to track this down now.

Thus, comments are likely down for a while.

UPDATE- Banged around in web.config a bit, and re-started IIS, and it's working again.
Tuesday, February 21, 2006
Posted on Tuesday, February 21, 2006 3:04:42 PM (Mountain Standard Time, UTC-07:00)  Comments [0] | 
Categories: dasBlog | General
Just updated the blog skin to keep with the theme on the main part of the site. With this, I think I'm finally done with the main parts of my site update - still adding content into the main area, but most of the picky CSS / photoshopping is complete.
Monday, February 13, 2006
Posted on Monday, February 13, 2006 12:56:06 PM (Mountain Standard Time, UTC-07:00)  Comments [0] | 
Categories: .NET | ASP.NET | dasBlog | Software
Whoa! I just tried to follow the link to my main page on the previous post, and I got an ASP.NET config error! doh!

This is strange because when I hit the page, it will load and run - so this is somehow related to coming from dasBlog.?!?! Anyhow, this is something dasBloggers may want to be aware of...

UPDATE: This was due to a mangled URL that had a space on the end. Check your URLs when you copy/paste into the FTB "Create Link" tool, as you can't see the "space" tacked on the end.


Saturday, February 11, 2006
Posted on Saturday, February 11, 2006 10:39:55 AM (Mountain Standard Time, UTC-07:00)  Comments [0] | 
Categories: .NET | ASP.NET | dasBlog
Just a quick note on some issues I ran into getting dasBlog running in a subfolder under an ASP.NET 2.0 app that uses membership, roles , master pages and themes...

The first step to getting dasBlog running under a .NET 2.0 is to make the suggested changes in your web.config. Search this file for "2.0" and make those changes. In many cases, this may be all you need to do.

Membership & Role Providers
On my new site, I'm using the 2.0 membership and role capabilities. Since I'm trying to keep the site very lightweight, I'm using some read-only, XML based providers that I got from MSDN.

Links:
Read-Only XML Membership Provider,
Read-Only XMl Role Provider

These providers are setup in the web.config of the main application:

web.config for main application
<membership
  defaultProvider="AspNetReadOnlyXmlRoleProvider">
 <providers>
  <add name="AspNetReadOnlyXmlMembershipProvider"
     type="ReadOnlyXmlMembershipProvider, CustomProviders"
    description="Read-only XML membership provider"
      xmlFileName="~/App_Data/theUsers.xml"/>
  </providers>
</membership >
   similar section for the roles...


Since the xmlFileName is an app relative path, the file can not be found when running in the /blog subfolder. Not sure if this is the "best" way to get past this issue, since I could not find another way to disable the membership provider, I simply added this into the web.config in the /blog folder, and cleared the providers...

web.config for dasBlog
<membership defaultProvider="none">
 <providers>
   <clear />
  </providers>
</membership >


The Roles were much easier - I just set the enabled property to false in the dasBlog web.config...
web.config for dasBlog
<roleManager enabled="false" />


Of course this means that you have to log into the blog separately from the main site, but I can live with that for now.
Themes
As I mentioned, the main site uses themes. While struggling with themes, I had specified the theme this up in the <pages tag in the web.config, but when I hit dasBlog, ASP.NET would throw an error saying it could not find the theme ( another app relative path thing). I was able to get it working by simply removing the theme element from the pages tag. This worked for me because I'm also specifying the theme in the master page. If you are applying a theme directly to your pages without a master page, this could be a problem.
At this point, it's all working on my local machine, but I still have to upload it to my host (webhost4life) and see what happens there!
Monday, November 28, 2005
Posted on Monday, November 28, 2005 9:02:29 PM (Mountain Standard Time, UTC-07:00)  Comments [0] | 
Categories: dasBlog
I've done a little more tweaking with my dasBlog theme. The idea was to avoid Jakob Nielsen's Weblog Usability: Top 10 Design Mistakes.

A quick review of the lists says I'm still missing an #1 - an Author Biography, #5 - my "classic hits" are still buried, and #6 - my navigation to older posts is abyssmal (I don't even have a calendar!) :-(

Anyhow - for anyone running dasBlog and interested in making these same mistakes, my theme is downloadable from the navigation bar on the left.
Wednesday, October 26, 2005
Posted on Wednesday, October 26, 2005 9:47:34 PM (Mountain Daylight Time, UTC-06:00)  Comments [3] | 
Categories: dasBlog
On a whim I was poking around my dasBlog event log, and noticed that it was basically blocking all requests from everywhere. The feeds have been working, but I guess links from any other site would get a 404...

TimeCodeMessage
10/26/2005 9:36:53 PM501Info ItemReferralReceived:
Item referral received for The GIS Longtail - Google, MSN, Yahoo and ESRI from target http://www.spatiallyadjusted.com/2005/10/dave_bouwman_on_the... originating at IP Address 67.176.39.182
10/26/2005 9:36:03 PM503Info ItemReferralBlocked:
Item Referral blocked for Unit Testing in ArcGIS... making headway from http://www.google.com/search?hl=en&q=john+cowardin originating at IP Address 67.176.39.182 because of ""
10/26/2005 9:35:56 PM503Info ItemReferralBlocked:
Item Referral blocked for Unit Testing in ArcGIS... making headway from http://www.google.com/search?hl=en&q=john+cowardin originating at IP Address 67.176.39.182 because of ""


That's a little more exclusive that I was going for! It seems that checking "Use Movable Type Black List" currently bans almost all inbound links, for the informative reason of "" (see above). I originally checked this because I was getting a lot of Poker and other comment spam. I've un-checked it for now, and I'll how it goes.
Saturday, February 12, 2005
Posted on Saturday, February 12, 2005 4:53:27 PM (Mountain Standard Time, UTC-07:00)  Comments [61] | 
Categories: dasBlog

Spent some time wheedling with Themes for dasBlog. About all this did for me was make me realize that I need "CSS for Idiots". So, for now, I'll leave it like this - just a very simple re-coloring of the default dasBlog theme.