The item will not be written to Elasticsearch if there are no events for it in the EventServer. Are you erasing data in the EventServer between training times? Or starting from all new data, dropping the old?
If you once had events, an item will be written to Elasaticsearch, but if later there are no events it will disappear because the Elasticsearch index is replaced on every train. The EventServer is meant to accumulate data over time, not to be erased before every train.
BTW you should upgrade to the new PredictionIO v0.9.6 and Universal Recommender v0.3.0. These must be upgraded together and taken from these repositories.
https://github.com/actionml/PredictionIO
https://github.com/actionml/template-scala-parallel-universal-recommendation