WiFly + Temperature Sensor

I have an Arduino with WiFly shield that works perfectly when sending a static web page across the network.

I also have a temperature sensor (Spark Fun tmp102) that works perfectly when interfaced with an Arduino on its own.

However, when I combine Arduino, WiFly shield and tmp102 the Arduino connects to the network, reads from the temperature sensor once (returns -128) and gives up with no more readings.

I'm fairly sure that this is an addressing problem but I can't quite work it out. A conflict between SPI and the I2C protocols perhaps?

Code is available here

Any suggestions appreciated.