import java.util.Map;
import java.util.Set;
+import javax.jcr.NamespaceRegistry;
import javax.jcr.Repository;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
import org.apache.jackrabbit.commons.cnd.CndImporter;
import org.apache.jackrabbit.core.RepositoryContext;
import org.apache.jackrabbit.core.RepositoryImpl;
+import org.argeo.api.acr.spi.ProvidedRepository;
import org.argeo.api.cms.CmsConstants;
import org.argeo.api.cms.CmsDeployment;
import org.argeo.api.cms.CmsLog;
private boolean nodeAvailable = false;
CmsDeployment cmsDeployment;
+ private ProvidedRepository contentRepository;
public void start() {
dataModels = new DataModels(bc);
ServiceTracker<?, ?> repoContextSt = new RepositoryContextStc();
repoContextSt.open();
- //KernelUtils.asyncOpen(repoContextSt);
+ // KernelUtils.asyncOpen(repoContextSt);
// nodeDeployment = CmsJcrActivator.getService(NodeDeployment.class);
JcrInitUtils.addToDeployment(cmsDeployment);
+ contentRepository.registerTypes(NamespaceRegistry.PREFIX_JCR, NamespaceRegistry.NAMESPACE_JCR, null);
+ contentRepository.registerTypes(NamespaceRegistry.PREFIX_MIX, NamespaceRegistry.NAMESPACE_MIX, null);
+ contentRepository.registerTypes(NamespaceRegistry.PREFIX_NT, NamespaceRegistry.NAMESPACE_NT, null);
+ // Jackrabbit
+ // see https://jackrabbit.apache.org/archive/wiki/JCR/NamespaceRegistry_115513459.html
+ contentRepository.registerTypes("rep", "internal", null);
+
}
public void stop() {
this.cmsDeployment = cmsDeployment;
}
+ public void setContentRepository(ProvidedRepository contentRepository) {
+ this.contentRepository = contentRepository;
+ }
+
/**
* Checks whether the deployment is available according to expectations, and
* mark it as available.
import java.util.List;
import org.argeo.api.acr.Content;
+import org.argeo.api.acr.NamespaceUtils;
import org.argeo.cms.ux.widgets.AbstractDataPart;
import org.argeo.cms.ux.widgets.HierarchicalPart;
@Override
public String getText(Content model) {
- return model.getName().toString();
+ try {
+ return NamespaceUtils.toPrefixedName(model.getName());
+ } catch (IllegalStateException e) {
+ return model.getName().toString();
+ }
}
}
<?xml version="1.0" encoding="UTF-8"?>
-<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" activate="start" deactivate="stop" name="Node User Admin">
+<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" activate="start" deactivate="stop" immediate="false" name="Node User Admin">
<implementation class="org.argeo.cms.internal.osgi.NodeUserAdmin"/>
<property name="service.pid" type="String" value="org.argeo.api.userAdmin"/>
<service>