By Suhas Das
Author
[DFC_BOF_CLASS_CACHE_INIT_ERROR] Failed to initialize class cache.;
dfc.data.local_dir=/tmp/dmcl_cache
dfc.cache.dir=/tmp/dmcl_cache
DfException:: THREAD: main; MSG: [DFC_BOF_CLASS_CACHE_INIT_ERROR] Failed to initialize class cache.; ERRORCODE: ff; NEXT: null
at com.documentum.fc.client.impl.bof.cache.NullClassCacheManager.checkCacheConsistency(NullClassCacheManager.java:46)
at com.documentum.fc.client.impl.bof.compoundclass.CompoundClassMgr.getImpClass(CompoundClassMgr.java:66)
at com.documentum.fc.client.impl.objectmanager.AbstractPersistentObjectFactory.getCompoundClassEntry(AbstractPersistentObjectFactory.java:39)
at com.documentum.fc.client.impl.objectmanager.PObjectFactoryWithAspects.makeObject(PObjectFactoryWithAspects.java:49)
at com.documentum.fc.client.impl.objectmanager.PersistentObjectManager.newUncachedObject(PersistentObjectManager.java:100)
at com.documentum.fc.client.impl.objectmanager.PersistentObjectManager.newObject(PersistentObjectManager.java:66)
at com.documentum.fc.client.impl.objectmanager.PersistentObjectManager.newObject(PersistentObjectManager.java:52)
at com.documentum.fc.client.impl.session.Session.newObject(Session.java:948)
at com.documentum.fc.client.impl.session.SessionHandle.newObject(SessionHandle.java:901)
The error can be caused if there is more then one application trying to use this directory or if you started your application server with one user (root, i.e.) and after that you try to execute with another different user with less privileges in overwriting the files created.
Solution:
in dfc.properties, add these lines:
# dfc.bof.cache.append_name=true
dfc.data.local_dir=D:\Temp
dfc.cache.dir=D:\Temp
delete all the content in this directory (not just the files). Restart your application.