We are having a project requiremnt where in which Apache DS java API is used to communicate with Heimdal KDC to create the principals.
We are using heimdal-1.5.2 and Open LDAP as Back end for storing the Principals.
We are able to add principals using add (of kadmin) and authenticate using kinit from Terminal.

Please find the attached krb5.conf and source code.