Monthly Archives: January 2010

Troubles with Exchange 2010 and Exchange 2003 Routing Group Connector

We have an environment which includes a combination of Microsoft exchange server 2010 and Microsoft exchange server 2003 existing on the same domain.

The various reasons at the moment we want to leave both versions of exchange coexisting. What we have noticed is that there are at times delivery problems between the routing group connector that is automatically configured when you add an exchange 2010 server to an existing 2003 domain.

This was evident by checking the queue in the exchange 2003 server. It showed that a number of messages were pending delivery and of the status was in “retry”.

Naturally enough, Google was our first point of call on this matter and we discovered that there were many others are experiencing delivery problems between the two servers.

In our case, the problem may well have initially risen due to some necessary changes that we made with the default routing of e-mail being sent from our exchange 2003 server.

After we made the configuration changes and attempted a short-term fix to another problem by using a smart host server, we found that how playing around with the settings was likely a contributing factor to the routing group connector problem.

To solve this problem we performed the following actions.

1. We log on to the existing 2010 exchange server.

2. We started the application known as exchange management shell

3. We listed our existing exchange connectors by typing the following command

  • Get-RoutingGroupConnector

4. We expanded on this list to confirm the details by typing the following command

  • Get-RoutingGroupCOnnector | fl

the results looking something like this:

Identifying the name of the existing connector as: VSERVER13-DGM56G41

5. We use the following command to delete all remove the existing connector:

  • Remove-RoutingGroupConnector -identity “VSERVER13-DGM56G41″

6. Initially this area out referencing: Multiple Instances  So we had to look in more detail at the screen capture above of the listed connectors lost using be  |f1 command , to find the name referenced against Guid: a long string of numbers looking something like this :
8276G-736b-37698726-3782661b78

We then use the following command referencing the GUID to remove that connector:

  • Remove-RoutingGroupConnector -identity “8276G-736b-37698726-3782661b78”

7. We then checked that the existing connector was removed by a gang typing:

  • Get-RoutingGroupConnector

The showed no results and we also verified in the exchange 2003 server that the exchange routing group connector had been removed from the list there.

    8. We then created a new wrapping group connector called “VSERVER13-DGM56G41”

The two servers that we were connecting were server1 (exchange 2003) and server2 (exchange 2010). We use the following command to complete this:

  • New-RoutingGroupConnector -Name “VSERVER13toDGM56G41” -SourceTransportServers “server2.fserver4.com” -TargetTransportServers “server1.fserver4.com” -Cost 100 -Bidirectional $true -PublicFolderReferralsEnabled $truethis created

9.Then we use the “Get-RoutingGroupConnector” commandto gain verify the existence of the new connector. Once verifiedour problems were solved… or was it???

We did fix the connector and again mail was delivered. What we then found was after some time the connector would fail. WTF you say… as I did! I hit google again and again and again, found loads of people talking about similar problems but none with suggestions other than what I had done above.

Then I discovered a hidden little nugget of gold. Turns out that Exchange 2010 (and possibly Exchange server 2007) will not accept remote mail unless the pickup queue is located on a server with a minimum of 4 GB free space. By default this is the C: drive.

Now there are a few things we found that impact that.

1. After the server is rebooted, and even with less than 4 GB it will accept mail for a short time. (This I suspect is just to trick the heck out of us).)

2. The free space will shrink and grow a little with server maintenance. So don’t just look at a disk with 5 GB and say, all is well.

3. There appears from what I can see to be absolutely NO announcements in the server log files about the queue shutdown. It just stops!

So free some space, or research on moving the queue pickup to another drive. (I will not list it here, but it is easy to find in Google). Good luck and may you be blessed with low disk space as the cause of your problems as I was!

Finally Solved!

flash content and z index

Just to set up the scene, a project I am working on requires a Flash navigation set. To tackle the obvious accessibility issues, I have created a run of the mill XHTML list of links that mirrors the Flash version exactly and hidden it from visual browsers using CSS. This is all fine. I have placed the Flash navigation set at the very bottom of theXHTML and positioned it back to the top of the page using CSS, so no major problems there.

The problem really starts when I realise that the Flash content is overlapping two other elements of the page, namely a site wide search form and a logo which doubles as a link back to the home page and, as you would expect, due to it’s position within the page structure it is on the top of this ‘stack’ meaning I can’t use the search form and I can’t see the logo,let alone click it.

Flash stacked by default

These three elements, for the sake of simplicity, are each contained within a uniquely identified div tag and are positioned absolutely. The obvious answer is to use z-index to move the two divs above the Flash content but (insert Eddie Izzard accent here) it does not work! The reason, as explained by Macromedia

A Flash movie in a layer on a DHTML page containing several layers may display above all the layers, regardless of the stacking order (“z-index”) of those layers.

That’s all a little bit upsetting I must say. Luckily, the same tech notefrom Macromedia goes on to explain how you can use the wmode tag to create a transparent background for your Flash content, thus allowing the layers underneath to show through. Support for this method is now pretty widespread for newer browsers (CHECK THISTECH NOTE FOR BROWSER SUPPORT DETAILS!). I am not overly worried about older browsers because, chances are, I am going to serve up a simplified version for Netscape 4 and his buddies anyway and, as I am using Flash MX specific ActionScript to deliver the content, the user will have to have Player 6 to see the content, so no worries about older versions of the player; such are the decisions you have to make when working with Flash!

Okay, so using Drew’s Flash Satay method my code for the Flash content looks something like this

  1. <object
    type=”application/x-shockwave-flash” data=”/flash/navbar.swf” 
    width=”750″ height=”90″>
  2. <param name=”movie” value=”/flash/navbar.swf” />
  3. <param name=”wmode” value=”transparent”>
  4. </object>

Line three is the key to the whole thing and adding this, as said, I can now see my logo and my search form, I still can’t get to them to use them though!

Flash with transparent background applied

This is where the tech note got a bit fuzzy for me and the reason I am making this post; it says

Newer browsers add the ability to layer Flash content with DHTMLcontent and in some cases the ability to use transparent backgrounds in the Flash content.

This, to me at least, suggests that I shouldn’t have run into the problems I did when using a newer browser, such as Firefox or Internet Explorer 6 (Update: Reading this back maybe the DHTML bit should have been a clue as to why I hit problems, I don’t have the D bit!). The z-indexing should have worked straight out of the box but it didn’t.

So, as I understand it thus far, I would say that, for the moment at least, you must include the wmode tag if you want the ability to ‘layer’ the flash content using CSS alone.

With this done and the appropriate CSS in place (e.g. #id{position:absolute; z-index:1;}. My search form, flash navigation and logo are all nestling happily together at the top of the page and I can go and have a nice glass of wine! hooray!

Flash stacked with transparent background and z-indexing

DotNetNuke Module Outlook Sync Update for IIS7

We recently discovered that on IIS7 servers that were not configured with IIS6 compatibility mode on, that the install and setup of our popular DNN Outlook Syncing program would fail. We have addressed this by ensuring that the module no longer requires features of IIS6 that are no longer in IIS7. Today we have finished testing these new features and have release update  45.05.05 of Outlook Sync.

For those of you who have not use this DNN module before, it is very similar to Outlook Contacts Pro but does not require any plugin for outlook. It will take the profile data from DotNetNuke and link with a two way sync to your outlook contacts. The established relationship is two way, and does will update data in the opposite side to where the change was made.

DotNetNuke Tell A Friend Module now on Jquery

After some time discovering that Ajax support in DotNetNuke Modules is increasingly fraught with danger, we have moved our Ajax dev over to Jquery and are loving it.

What we found was that with the way Java is used by other developers and skin designers, many of them are not experts with their code (and nor should the be as it can be a complex world in Java). The problem we faced was that our Tell A Friend DNN Module would sometimes encounter conflicts when code others code had not been properly crafted. While we could explain to agar customers trying our product that the problem lay with code used in a skin or other module, it did little to resolve the conflict and actually get our module playing nicely with the ill crafted code.

So we have been on the hunt for a reliable solution. Initially SilverLight looked to be our guiding star, and don’t miss understand, as we are totally committed to a future with Silverligt. What we are saying is that there are times where Silverlight is a sledge hammer on a nut, and for these instances we are looking for a filler solution. Something that gives use great UI with out the need to break out to Silverlight.

Our solution is Jquery, and why we love it is that it allows us to do more with less code, and resolved the conflicts with other code. Check out or New release of Tell A Friend DNN Module.

DotNetNuke.com is Down error=Index+was+outside+the+bounds+of+the+array.&content=0

I have been trying to access the DotNetNuke website for some hours today, and have only ever received this error:

error=Index+was+outside+the+bounds+of+the+array.&content=0

DotNetNuke Error


 

  An error has occurred.
An error has occurred.

Not really the best look for a CMS system. But hay… it is holidays and now they are a corporation, we cannot expect anyone to be on deck this early in the new year!