NameComponent name = n[0];
// we need the resolveObject() and bindObject() calls to be consistent, so
// synchronize on this
synchronized (this) {
// see if we have this bound already...can't replace these.
BindingTypeHolder type = new BindingTypeHolder();
// for a rebind, we must have an object, and it must be a real object
if (resolveObject(name, type) != null) {
// it has to resolve to a real object. If it is a naming context,
// then this is the wrong binding operation.
if (type.value.value() == BindingType._ncontext) {