How can I get Find My iPhone to work on a Jailbroken iPhone on iOS 5 with no data plan? I am using Find my iPhone on a Jailbroken iPhone 4 running iOS 5.0.1. My service does not have a data plan. It is T-mobile with only voice and SMS.

When trying to view the location in Find My iPhone, it shows my phone as "Offline" even though I am connected to an active Wi-Fi signal and have location services on. When viewing the Find My iPhone app in iOS, it displays my phone as "No location available".

I've tried all steps in Troubleshooting Find My iPhone under "'No location available' alert", but the issue persists.
Location on an iPhone requires a data plan. This is because your iPhone’s GPS downloads an “almanac” file to help locate itself. This can’t happen over Wi-Fi, as these files are not on the internet, but on the internal network of your carrier. 

As for your iPhone not using the Wi-Fi to locate itself, that’s probably because the network is not yet in Apple’s database.

There’s must be something broken if the iPhone is not showing up as online. There can be two possibilities. Either Apple has configured Find My iPhone only to use GPS or some tweak or a bad jailbreak is not allowing the findmyiphoned (process responsible for responding to Find My iPhone requests) to work or launch properly. As there can many things that can cause this problem, I would suggest first booting up in safe mode (SBSettings can do that) and seeing if the problem is resolved. If it is, that means a tweak caused a problem. If it isn’t, that means you did a bad jailbreak. In the latter case, a restore is the only option.

Source: http://en.wikipedia.org/wiki/Assisted_GPS