Let's get the Big Questions out of the way up front: Yes, Tom Cruise sings well and is a plausible rock star onstage in Rock of Ages. However, his character is the largest problem with this adaptation of the Broadway show.
I saw the touring stage show and had a blast with it, but the trailers for the film left me meh. Director Adam Shankman did the film of Hairspray and I really liked that, but from the plot changes (out: German developer; in: hot rock-hating Catherine Zeta-Jones) to the overall vibe, something didn't click for me and for most of the movie, I was feeling let down. There were cool moments and when the dance numbers ape the look and feel of Chicago it works well, but something was dragging me down.
In post-show discussion with my girlfriend, we figured it out: It's Stacee Jaxx, the Cruise role which has been significantly enlarged over the stage show. While it's understandable to give the Big Star (not to be confused with Alex Chilton's band) more to do, what harms the movie is the approach they took. In the stage show, Stacee is a cartoon, having had an "incident with a baby llama" in his dark past, a gag which pays off at the end. For the film, though, they decided to make him into a character and not a caricature and it results in the pace and energy screeching to a halt whenever the spotlight is on him.
Cruise is fully committed to the performance and they know how silly things are when they have him singing "I Want To Know What Love Is" to Malin Ackerman's panty-clad butt in one shot, but the collective decision to play him as a slow-moving, Scotched-out, waste case who is seeking deeper meaning saps momentum. Cruise is a team-player and it would've been hella funnier if they'd gone waaaaay over the top. They have a lot of funny stuff with his baboon sidekick, Hey Man, so it's too bad they just didn't go crazy with Stacee, making him like the Aldous Snow character Russell Brand played in Get Him To The Greek.
Speaking of which, Brand is a standout as Alec Baldwin's aide-de-camp at the Bourbon Room and they get one of the best numbers together. The other stars (look 'em up; don't feel like typing) are uniformly good as well, with Mary J. Blige providing the sole genuine vocal firepower as the strip club owner who takes Sherrie in.
It's too bad they goofed with Stacee Jaxx and dampened the fun Rock of Ages could've delivered. If you get a chance to catch the stage show, check it out; it's a hoot. (Read the linked review above.)
Score: 5/10. Rent it.