This code is not necessarily correct in its JNDI usage(IE, I would probably use createSubContext, not bind to create the DirContxt objects in JNDI. IANAJE)
See also: JndiDynamicMockObjectTestCode JndiAccessForDynamicMockObjectExercise
{{{/*
- Created on Feb 11, 2004
*/
package xputah.feb;
import javax.naming.NameNotFoundException; import javax.naming.NamingException; import javax.naming.NoPermissionException; import javax.naming.directory.DirContext;
public class JNDIUtility {
DirContext theCtx = null; /**
- @param ctx
- /
public JNDIUtility(DirContext ctx) {
- theCtx = ctx;
- /
public Object getConfiguration() throws NamingException {
- Object obj = null; try {
- obj = theCtx.lookup("cn=configuration,o=myorg");
} catch (NoPermissionException e) {
throw new NoPermissionException("no rights to read cn=configuration,o=myorg");
catch (NameNotFoundException e) {
- // this is ok; we'll create it later.
- obj = createObjectInDirectory();
private Object createObjectInDirectory() throws NamingException {
- try {
- Object obj; obj = new Object(); theCtx.bind("cn=configuration,o=myorg", obj); return obj;
catch (NoPermissionException npe) {
throw new NoPermissionException("no rights to create cn=configuration,o=myorg");
}
}}}
