Глядя на код, в любое время
private Object createObject()
возвращает ноль, затем getPojoObject возвращает ноль.
Метод createObject имеет разумные комментарии / сообщения об ошибках для каждого случая, когда возвращается ноль.
Есть еще что-то к вашему вопросу? Например, вы возвращаете null и пытаетесь выяснить, почему?