I was having the same problems as well as a few others and it really is a Sprint problem caused by the iOS 5.1 update. Apparently something about visual voice mail isn't 100% compatible with their system. They know about it and "are working on it" [eyeroll] but this is what I did to get mine working.
Since I don't have another phone to use I used Sprint Chat on my laptop. I had them reset my voicemail server (or something - just ask them to reset your voice mail). They will ask you to power your phone off before they do that. Once you let them know the phone is off they will do something on their end then ask you to power the phone on again. Now - the tech I had on chat wasn't that great so at that point it still wasn't fixed so I was asked to call the tech support number from another phone and talk with "advanced tech" because advanced tech can't help if you call them on the phone that has the problem. So I got off the chat. Then I found some things online so once the voicemail was reset on Sprint's end this is what I did.
Update your profile. Go to Phone keypad and put in ##UPDATE# [a.k.a. ##873283#] and press call. It will say "this will update your profile" and you press OK. Then when it's done it will say "profile updated" or something like that and you press OK. Then watch the upper left - in a few seconds it will say "searching" and when it says Sprint 3G the update/reload is done. Now you would think that's it but not quite.
NOW you need to call someone and ask them to call you back and leave you a voice mail. Once someone leaves you a voice mail the visual voice mail should reappear. You might need a couple of voice mails for the reset to work but mine only took one.
So in summary:
1. Have Sprint reset your voicemail
2. Update your profile
3. Have someone leave you a voice mail
4. It should be fixed.
Hope it works for others.