Cameron Diaz was cast first and actor Gerard Butler briefly considered the role of 'Roy Miller', but instead decided to take on the lead role in the film The Bounty Hunter. Tom Cruise then signed on to do the role opposite Cameron Diaz.
Tomorrow Cruise was shot at the beginning of the film. While the film takes place over less than a week, the next two times Cruise has his shirt off, there is no wound.