I'm not a fan of Johnsons either. My youngest has eczema, and it irritates his skin if I use it. And I don't like the shampoo. I switched to Mustela newborn shampoo, and loooove it. Its very gentle, smells nice, and he hasn't had any issues with it drying his scalp out, or cradle cap since we started using it.
For my older son, I use Loreal kids shampoo. It also seems to be much better on his hair than Johnsons was. When I was using JOhnsons on him as a baby, I thought it made his hair seem kind of bristly feeling, very dry and scratchy. Which is odd for baby hair. That's what made me switch.