avoid infinite recursion in ShiroProducer