"Fifty Shades of Grey" may have dominated the box office this weekend, but it wasn't exactly easy adapting E.L. James' best-selling novel for the big screen.

While Dakota Johnson and Jamie Dornan ended up playing Anastasia Steele and Christian Grey, respectively, finding the right chemistry between two actors with available schedules proved fairly difficult.

Initially, "Sons of Anarchy" actor Charlie Hunnam was cast as Christian Grey, but many fans of the book didn't approve of the choice.

A petition to recast the movie garnered 20,000 signatures on Change.org, and because of scheduling conflicts and reported clashes between Hunnam and Universal Pictures, Hunnam eventually dropped out of the project.

Just 11 days later, "Once Upon A Time" actor Jamie Dornan was cast in the role.

Amid all of the casting back-and-forth, the film's producer Dana Brunetti tweeted somewhat of an explanation:

There is a lot that goes into casting that isn't just looks. Talent, availability, their desire to do it, chemistry with other actor, etc … So if your favorite wasn't cast, then it is most likely due to something on that list. Keep that in mind while hating and keep perspective.

Brunetti was apparently hinting at the handful of actors who actually turned down the leading roles.

While "50 Shades" author E.L. James has said actor Ryan Gosling was the original prototype for Christian Grey, he doesn't do sequels.

"50 Shades" is a guaranteed trilogy.

Before Hunnam got the gig, Garrett Hedlund reportedly turned it down.

"Hedlund was heavily courted by Universal, but the 'Tron: Legacy' star passed in July because he couldn't connect with the character," according to The Hollywood Reporter.

Backing for "White Collar" actor Matt Bomer was so strong that a petition started by fans to cast him garnered almost 100,000 signatures.

Other actors in the mix included "Magic Mike" star Alex Pettyfer, who auditioned for the role; "Gossip Girl" actor Chace Crawford, who publicly said he would "love the challenge" of the role; Alexander Skarsgård, who said on "Access Hollywood" he was "born to play" Christian Grey; and Ian Somerhalder, "The Vampire Diaries" star, told Ryan Seacrest that being cast "would be an incredible thing. Hopefully that could pan out."

Fans had their own casting ideas, pushing for Somerhalder as Christian Grey and Alexis Bledel to play Anastasia Steele, in a fan-created mashup trailer that received over a million views.

The role of Anastasia Steele was also a tricky one to cast.

According to Newsweek: "'Pretty Little Liars' star Lucy Hale auditioned, as did 'The Carrie Diaries'' Chloe Bridges, but neither was quite prepared to tackle the subject matter. Hale said the audition made her 'uncomfortable.'"

Bridges, meanwhile, told Cosmopolitan the role was too risqué.

"The scene was, like, the girl telling her friends about some sexcapade she had," Bridges said. "But it goes into extreme detail and uses the word 'sperm' a couple times. I was like, 'I don’t know, guys, I have to go home to my grandparents' house in a few months at Christmas; I don't know if I can do this.'"

Despite early rumors that Emma Watson was being considered, the "Harry Potter" actress tweeted:

And so, the role went to Melanie Griffith and Don Johnson's 25-year-old daughter, Dakota Johnson, who had previously appeared only in minor but memorable roles in "21 Jump Street" and "The Social Network."

Whether "Fifty Shades" fans agreed with the Dakota Johnson and Jamie Dornan casting or not, the duo pulled in a record-breaking $266 million worldwide over Presidents Day weekend.

NOW WATCH: 14 things you didn't know your iPhone headphones could do

See Also:

7 ways to fix the 'Fifty Shades of Grey' sequels before they even happenMEET DAKOTA JOHNSON, the 25-year-old Hollywood royalty at the center of the 'Fifty Shades' phenomenonAnalysts grossly underestimated the allure of 'Fifty Shades of Grey' at the box office

SEE ALSO: MEET DAKOTA JOHNSON, the 25-year-old Hollywood royalty at the center of the 'Fifty Shades' phenomenon