Well...James was making a point about the hypocrisy of claiming to trust and believe when you show by your actions that you do not. He was pointing out hypocrisy, in my view.
A prime is example is you-know-who. He would make flowery speeches and wax long about love and forgiveness and then when he felt offended, he proved by his actions/the words from his mouth that he was a hypocrite. I am sometimes a hypocrite. I hate it when God shows it to me, but I don't just continue to proclaim that I am not a hypocrite.
James has shown me a lot. His words come back to me everytime I find myself holding a grudge and He shows me how I have done the same thing I am holding the grudge about, either in the past, or even, astoundingly, AT THE SAME TIME AS I'M MURDERING SOMEONE ELSE FOR THE VERY SAME THING!!
James' words aren't meant for everyone else but me. They're meant to me too. They convict hypocrites if they are working in a heart God has prepared. They aren't meant to convict everyone but myself. They are meant for me FIRST. They are meant to open my eyes to MY hypocrisy, not yours. (You can't help though that when you have been convicted, you spot it in others too. My point is just that the hypocrites James was speaking to are US, not THEM.)
So James was making a specific point geared to prick the hearts of the hearers. And we all know that he wasn't preaching to a bunch of people who were unbelievers. At least I don't think he was. I think he was spurring them on to be zealous to do good for others and to root out hypocrisies in themselves. Just my opinion.