Hi,
I am looking for a way to remotely access the JBoss Portal embedded jackrabbit repository.
I am going the EJB3 programming model way and what I am able to do now is to get a local interface of the JCRCMS in my stateless session bean
@Resource(mappedName = "java:/portal/CMS")
private JCRCMS jcrCms;
And so I can do a lot of cool stuff.
As a saw how Day CRX, JCR-Explorer, JCR Viewer, JCR Controller, can explore jackrabbit repositories, I am wondering if it is possible to do so with the JBoss portal one.
I tried with the apache jcr-explorer web app running on tomcat but i had a problem with jndi name.
I also tried with the JCR BROWSER eclipse plugin (rmi access). No way!
So I took a look at
jboss-portal-2.7.2\server\default\deploy\jboss-portal.sar\portal-cms.sar\META-INF\jboss-service.xml
and realized that the unlike the JCRCMS, the jackrabbit JCR itself isn't bound to JNDI name nor has a JRMP server association.
Is it why i can't access the JCR with the tools i mentionned?
As for the JCRCMS, a remote proxy can be provided by adding
<!-- Proxy factory for CMS -->
<!-- Use the standard JRMPInvoker from conf/jboss-service.xxml -->
<depends optional-attribute-name="InvokerName">jboss:service=invoker,type=jrmp
<!-- The target MBean -->
<depends optional-attribute-name="TargetName">portal:service=CMS
<!-- Where to bind the proxy factory -->
RemoteCMS
<!-- Invoke target method instead of invoke(Invocation mi) -->
true
<!-- Comma-separated list of exported interfaces -->
org.jboss.portal.cms.CMS
<!-- client-side interceptors -->
org.jboss.proxy.ClientMethodInterceptor
org.jboss.proxy.SecurityInterceptor
org.jboss.jmx.connector.invoker.client.InvokerAdaptorClientInterceptor
org.jboss.invocation.InvokerInterceptor
(according to sohil.shah@jboss.com tested and works fine)
Can we get the Jboss Portal embedded jackrabbit JCR to the same level of exposure?