Citrix web interface and Exchange 2010 SP1

August 27th, 2010

After updating Exchange 2010 to Service Pack 1, I had a repeat of my previous problem.  Turns out, I had to repeat the process for exppw.dll .  Only this time, I made a typo in the applicationHost.config file, resulting in numerous errors in the Application event log:

The worker process for application pool ‘CitrixWebInterface5.3.0AppPool’ encountered an error ‘Configuration file is not well-formed XML’ trying to read configuration data from file ‘\\?\C:\inetpub\temp\apppools\CitrixWebInterface5.3.0AppPool.config’, line number ’3′.  The data field contains the error code.

After finding the typo (a missing space) and restarting IIS again, everything was fine.

Citrix Web Interface and OWA

June 11th, 2010

So today I thought I’d do something a bit radical.  I already had a working Outlook Web App installation, and a working Citrix Web Interface installation.  However, they were on different servers, and I have only one IP address.  What to do?

It occurred to me I should install the Citrix Web Interface on the OWA server.  Genius!  But it turned out to not be quite so straightforward.  Because I’m running Exchange 2010, the OWA server was running Windows 2008 R2.  Citrix have only recently released Web Interface 5.3, which supports 2008 R2.

I decided to give it a go.  Firstly I needed to install J# 2.0 Release 2.  Installation of the web interface went smoothly, using the default web site.  OWA and Citrix live in separate folders, which means they would co-exist reasonably well.  Or so I thought.

After creating a citrix web interface site, I attempted to load the page, only to be met with “HTTP Error 503. The service is unavailable”.  After some investigation, log reading, head scratching, and google searching, I discovered the answer to my problem.

The pertinent error message was “The Module DLL ‘C:\Program Files\Microsoft\Exchange Server\V14\Bin\kerbauth.dll’ could not be loaded due to a configuration problem”.  The answer turned out to involve editing an IIS configuration file, “C:\Windows\System32\inetsrv\config\applicationHost.config”.

The line

<add name=”kerbauth” image=”C:\Program Files\Microsoft\Exchange Server\V14\Bin\kerbauth.dll” />

needed to be changed to

<add name=”kerbauth” image=”C:\Program Files\Microsoft\Exchange Server\V14\Bin\kerbauth.dll” preCondition=”bitness64″ />

I thought that would be enough to resolve the problem, but it wasn’t.  Turns out I had to make the same changes to the lines referring to owaauth.dll and airfilter.dll

Once I’d made those changes, and restarted IIS, everything was fine.  I was greeted with the familiar Carbon-themed interface, and a working web interface installation.  Hooray!

Google Maps API

May 29th, 2010

Tonight I’ve been doing some work on a website that needed an embedded map. Naturally, I turned to Google Maps, only to discover there’s really two ways of using them.
Firstly, the iframe method. That really sucks, because I’ve no control over how the map looks, or what information is presented.
Secondly, the API. I’ve used this once before, but only as a copy and paste job. Now I discover there’s a new version of the API, much cleaner and better written. Plus, there’s no need for the API key anymore. Perfect. Only, as I read through the documentation, I discover this is a very powerful API, with similarly obtuse documentation. There’s one example map, plus a number of contributed pages purporting to be tutorials. Some just didn’t exist any more, and others were even more confusing than the API documentation.

Fortunately, Google’s search division came to the rescue. I came across a blog that described how to use the API in multiple stages. First up, just the map. Then some settings, a marker, and an information window. Perfect. Exactly what I wanted to do, nicely explained and broken down, so someone unfamiliar with the API, and only vaguely familiar with javascript, could understand. Thanks Gabriel Svennerberg!

Lastly, I needed to work out how to put the map into a drupal node. Every example seemed to make use of the onLoad property of the body tag, which obviously wouldn’t do.

My final result was this:

<div id=”map_canvas” style=”width:400px; height:400px”></div>
<meta name=”viewport” content=”initial-scale=1.0, user-scalable=no” />
<script type=”text/javascript” src=”http://maps.google.com/maps/api/js?sensor=false”></script>
<script type=”text/javascript”>
//map generating code went in here
</script>

Back at work

April 13th, 2010

Something occurred to me as I sat at my desk yesterday. Is this really what I want to do? Go from a 20 minute commute to a 60 or 70 minute commute. Go from working with people I know, from environments I can work with in the middle of the night, from clients I have a good relationship with, from a friendly working atmosphere, to a cubicle farm, where everyone sits quietly at their desk, not interacting with people around them, working on faceless, distant client systems, that are as yet unknown to me.

These people I’ve been working with the past 3 years are my family. Even though I’ve almost never seen them outside work hours, spending 40 hours a week with these people has turned them into family. Family that I’m going to miss working with. Some of the clients I work with I know well enough to consider extended family in this analogy. I know who to call, and in many cases I’ve called them so many times I don’t even have to look up their phone number.

As I slowly pack up my belongings, it’s like I’m packing up my life. Separating bits of it into boxes, to be stored away for an indeterminate period of time. In less than two weeks, I’ll likely never see these people again. I’ll never again come home to this place I’ve lived the last three years. So many memories that will slowly drift away.

People will fade from reality into the mists of time. I’m going to miss them all – the annoying project managers, the incessant SDMs, the hapless users, the incompetent help desks, the colleagues that range from people to admire, to people that must surely struggle to find their way to work every day. They are the colour in this tapestry of life. A tapestry that will shortly be put away, incomplete, slowly unraveling.

What to write?

April 10th, 2010

I’m sitting on the couch at my sister’s place in Wellington, with the sun is streaming through the window, warming my feet. Right now, I’m wondering what to write. It’s been quite some time since my last post, a shortcoming I feel I should correct.

My life has been full of upheaval of recent times, something that’s not going to change in the short term. Moving cities is never easy. Moving cities within 30 days even less so. I’ve never moved all my possessions in such a short time before.

Right now though, that worry awaits my return to Australia. I’ve been in New Zealand since 1st April, firstly for a church youth camp on the book of James, and subsequently for a visit to my sister and her husband. It’s been a nice relaxing time. The weather has varied somewhat, between nice warm sunny days at the start, to cold, cloudy and occasionally rainy days in the middle, and back to warmish sunny days. I’ve caught up with old friends, made some new acquaintances, and become more familiar with Wellington.

Korea, the final chapter

February 7th, 2010

Ok, so I still haven’t filled in the gaps from my last couple of posts. I’ll get there eventually. Maybe.

Right now, I want to write about my trip home. For my last two days in Korea, I stayed with Matthew and Priscilla, their two children, two hamsters, and Priscilla’s parents, in the biggest apartment I’ve seen in Korea. I’m sure there are larger, but not that I’ve been inside. Anyway, less than 10 minutes walk from their apartment is a collection of bus stops, including one for a bus that travels to the airport.

The bus I caught to the airport was clearly different to the standard buses. For one, it had the names of the airports it stops at written in English on the side. There were the huge luggage compartments underneath, where the driver stowed suitcases. Then there was the price. Where an average bus fare would be 1500 or 2000 Won, this fare was 8000 Won. Hardly extravagant, especially compared to public transport costs in Australia, but still higher than normal. Priscilla told me the trip would take about an hour, something I was a bit surprised about – the map at the bus terminal showed there were just 11 stops between where I was, and Incheon International Airport. She explained there was about 30 minutes between the last two stops – knowledge I was very grateful to have.

Clambering aboard, I paid my 8000 Won and settled in to a seat near the back. With the outside temperature around -1 or -2 Centigrade, the windows quickly fogged up. More and more passengers got on the bus as we travelled, and after about 30 minutes, we stopped at an airport. Fortunately I noticed a sign in English that had the name of the airport written on it. I don’t remember which airport it was, but it wasn’t Incheon International. That, combined with the unexpectedly short trip to this airport, and the majority of passengers remaining seated, was a pretty good indication I didn’t want to get out here.

Eventually I arrived at the airport, checked in, and navigated customs and baggage screening. I took a bit of a look around, and made my way to the gate in time to queue up to board the plane. In a repeat performance of my experience last year, after presenting my boarding pass and heading down the aerobridge, I had to present my checked on baggage for a cursory inspection. I’m not sure what the point of this inspection is – hand luggage had already been X-rayed as we entered the sterile section of the airport, and it wasn’t an overly thorough inspection. I wonder whether the workers there were paying more attention to passengers’ body language than what they were seeing inside the bag.

The inspection over, I headed into the plane, and took my seat. I was towards the front of economy – row 15, so I sat back and watched people pouring in, and disappearing into the depths of the aircraft behind me. Eventually, I discovered who I would be sitting next to for the next 10 hours. Two young kids, probably around 10 and 5, with the 5 year old boy sitting next to me. Wonderful. Then, to complete my nightmare, their mother disappeared towards the front of the plane. I was almost outraged, that a mother would travel business class and abandon her two children to the mercies of the strangers surrounding them in economy. Then I figured they’d probably sleep for most of the flight, something I planned to do also, so it wouldn’t matter so much.

The next 15 or 20 minutes weren’t much fun. The kids seemed to have one Nintendo DS between them for entertainment, and in between tirades of Korean, the DS was swapped between the two. Fortunately the kids got tired of this soon after take off, and the boy lay down across the two seats, with his head in his sisters lap. I was greatly relieved – the next 10 hours wouldn’t be so bad after all.

Then about 10 minutes after take off, one of the air hostesses came to chat to me. She said the mother of the two children was in business class, but wanted to know if I’d swap seats with her, so she could mind her children. I was understandably very reluctant to give up my cramped economy seat for the luxuries of business class, but soon I was on my way. What an experience business class was! Reclining seats, about as many hostesses for the 10 rows of business class as there were for the entire economy section, and a delicious four course dinner complete with tablecloth, glassware, menus, and some great wine. Later there were blankets, pillows, bottles of water, and the discovery that the reclining seat would stretch out almost flat, although still on an angle.

Business class was a great experience, one that I would almost consider paying for next time. It certainly makes the flight much more enjoyable. The perfect way to cap off a great holiday.

The contradiction of Korea

January 26th, 2010

We’ll return to the story of my trip in the next post, but I wanted to take some time to write about the feel and culture of Korea.

Korea itself is a place of contradictions, of opposition and compromise. As a nation, they’re fiercely nationalistic, with good reason. Thousands of years of culture, and occupation by Japanese and Chinese, have left the nation very closed to outsiders. Except for the very rich, everyone drives Korean cars, trucks, and busses. Probably scooters too, but I didn’t catch the manufacturer of any of the numerous scooters around. There’s almost no foreigners around – except for the people I’m travelling with, I could spend a whole day out visiting tourist locations, travelling busses and subway trains, and not see another white person.

Yet this is a country where tens of thousands of US troops have been stationed for decades, where English is taught in school, and speaking English is often a requirement for a job. One would expect the ‘Western influence’ to be quite prevalent. And in some ways it is – misspelt English adorns signs (want some cooffee?) and labels in an attempt to differentiate themselves, English words written phonetically in Korean letters, busses and trains include announcements in American-accented English.

But in many ways Koreans ignore outside cultures. Although English is taught in schools, and required to differentiate oneself from the myriad of other jobseekers, for the most part people lack a sufficient grasp of English to interact in the most basic of conversations. Where American culture is apparent, it’s still heavily influenced by Korean culture. Numerous American restuarants exist, serving foods from an American heritage, albeit with a Korean twist. Steak with a side of Kimchi anyone?

Kids from university that we met at haeundae beach, having spent years learning English, can manage only basic questions – where are you from, how old are you, what’s your name. I’m not sure whether they understood our replies at all.

I find it amusing that one of the questions I was most frequently asked was about my age. Korean culture includes a deeply-ingrained respect for those older than them, typically using completely different words when speaking to someone older. They have difficulty guessing the age of foreigners, hence the question.

I’m sure there are many other examples of Korean culture that strike me as odd, I just can’t think of them right now. Milk comes in cartons of 930ml – just under 1 quart. Why not one litre? Standard international units of measurement are used, but frequently just converted from other forms of measurement.

I’m not sure how much sense this post makes, I’ll probably read it later and be horrified at my grammar and flow of thought.

Korea continued

January 24th, 2010

I realise it’s been nearly 10 days since I posted last. I’ve done loads of stuff since then, but I haven’t gotten around to writing about it. It doesn’t help that I’m relying on the generosity of people to provide open wireless access points for me to use.

So I’m currently in Incheon, but up until Thursday 21st I was still in Busan. I caught the 13:13pm KTX (Korean fast train) to Incheon on Thursday, and I’ve done a few touristy things here since then, in addition with catching up with people.

Quick summary of what I did in Busan:
Saturday – trip on subway to Busan tower, fish market, mueseum of musical instruments
Sunday – trip to Daegu ecclesia
Monday – trip to the end of subway line, paris baguette, then to haendae beach, had a look around, dinner at Bennigans above starbucks
… I can’t remember after that. I’ll have to think back. I’m leaving very soon to go to Lotte World (at least, I think that’s how it’s spelt). More details will be coming when I have a chance.

Busan, Korea

January 15th, 2010

So it’s been another couple of days since I’ve been able to write a blog post. For some reason I’ve been unable to use international data roaming on my phone for internet access, which is probably not such a bad thing considering the cost. I’ve had to wait until I could find a reliable open wireless access point to connect to the internet.

I’m sitting up in the circular shaped bed in this bizarre motel, which, based on past experience, is pretty much normal for the Korean versions of motels. The room is 3-4 metres square, with a small bathroom. It looks fairly old, and the bed is fairly hard, but hey, it beats sleeping on the floor like I’ve been doing since I got to Korea. It’s on the second floor of a mid sized building, with what I imagine to be the owners, an elderly couple, living in what doubles as their office on the ground floor. The only source of heat seems to be the electric blanket, but it isn’t too cold – unlike the weather outside.

I’ve been pretty cold for the last few days – I’m not sure whether that’s because of my cold, or just because the temperature is really low. Tonight I wore five layers: my ski jacket, a hoodie, a jumper, a long sleeved thick tshirt, and finally my thermal undershirt. Along with my neck warmer thing (I’m sure there’s a technical term, but I don’t know it) and my ski gloves, I wasn’t too cold.

We left the ski resort at Yong Pyong yesterday after lunch, then drove to Chong Seong (I’ve no idea on the correct spelling for that). That was an interesting trip to say the least. The hired van in which the 11 of us were travelling wasn’t running properly. After initial consultation with the hire company and a mechanic, it was thought it just needed to warm up more. One hour and some very rough driving later, things hadn’t improved. The diesel powered van seemed to have no power – it would coast fine downhill, but under any sort of load it, for lack of a better term, bunny-hopped along. The sort of driving style one would expect for an inexperienced driver with a manual gearbox, but constantly. The general consensus among the mechanically minded of us was that there was water mixed in with the diesel somehow. Anyway, another visit to another mechanic later, with the fuel filters replaced, the van returned to normal, and we continued our journey.

Like last year, we stopped at Chong Seong overnight, and visited a national park this morning, complete with frozen river and waterfalls. After lunch we continued south to Busan, stopped temporarily at the apartment some of us had been living in for the past 6 weeks or so, before going to the motel. Having organised our accomodation, we went out for dinner. I had a cheesy spaghetti, having eaten Korean food for the past few meals. Korean food, although for the most part edible enough, doesn’t seem to do a great job of satiating my hunger.

After dinner, we handed out some packs of refresher towels, with a sticker advertising the bible seminars here in Busan. It took around 30 minutes to hand out 1,000 of them! We warmed up in the starbucks nearby, before catching the bus back to the motel. The bus driver seemed to think he was driving an amusement park ride, with sudden and aggressive acceleration, braking, and lane changes. It made me very thankful when a seat became available.

And now, time for bed. Tomorrow is certain to be a long day, and I don’t know when I’ll be able to post here again.

A big shout out to Claire, and anyone else who happens to be reading this.

Ski camp in Korea

January 12th, 2010

It’s been a couple of days since my last post. I’ve been really busy since I got here, so only now do I have a chance to write an update.

When I arrived in Incheon, there was some light snow falling. Snow was everywhere, at the airport, on the streets, the footpaths, the roofs. It might sound pretty, but mostly it was muddy and annoying. Sarang and Gun-woo met me at the airport, and we took a series of trains to get to the ecclesia in Seoul, before going to Gun-woo’s place, where we spent the night.

Early sunday morning (well, not that early, everyone slept in), we piled into a minivan to drive to Yong Pyong. We were staying in a much nicer building in Yong Pyong, even closer to the snow fields than last year.

Today we’ve had a couple of studies on 2 Timothy, followed by two skiing sessions. I started off fairly badly, but quickly got the hang of it again. My turns are getting better, but still nowhere near as graceful as some highly skilled children that fly past me on the slopes. There’s a lot more snow than last year, which has madethe skiing a lot more enjoyable.

The smell of some korean food makes me queasy now, smells similar to the ones I remember when I caught my stomach bug last year. It’s annoying at meal times, so I’ve been sticking with the ‘western’ food – various curries and port cutlets. I’m feeling quite tired after such a long day, I think it’s time for bed.