This is exactly why I mentioned getting the example and building it with maven. It will make sure you have a consistent set of JARs that work (and you will be able to test that by running the unit tests in the sample). From there it should become easier to replicate a working environment for your code.
Trust me, I wasted one week because I did not want to go with maven, but it helped me solve this in a couple of hours (and I am still not using it on a day to day basis).

