Hi all,
I am trying to access the jack rabbit repository as shipped with JBoss
Portal remotely.
To do so I wrote a small MBean that during startup binds the retrieved
repository instance:
ObjectName cmsServiceObjectName = new ObjectName("portal:service=CMS");
Object repositoryAttribute =
server.getAttribute(cmsServiceObjectName, "Repository");
Repository localRepository = (Repository) repositoryAttribute;
InitialContext context = getInitialContext();
RemoteAdapterFactory adapterFactory = new ServerAdapterFactory();
RemoteRepository remoteRepository =
adapterFactory.getRemoteRepository(localRepository);
context.bind(JNDI_NAME, remoteRepository);
So next step is to write the client, the following gets hold of the repository:
InitialContext context = new InitialContext();
Object object = context.lookup(JNDI_NAME);
ClientAdapterFactory factory = new ClientAdapterFactory();
RemoteRepository remoteRepository = (RemoteRepository) object;
repository = factory.getRepository(remoteRepository);
Still no problem. The problem occur when I try to login:
Session session = repository.login();
Now I get the following stack:
Exception in thread "main"
org.apache.jackrabbit.rmi.client.RemoteRepositoryException: no such
object in table: no such object in table
at
org.apache.jackrabbit.rmi.client.ClientRepository.login(ClientRepository.java:79)
at
nl.dulsoft.jcr.client.JcrConnector.removeContent(JcrConnector.java:48)
at nl.dulsoft.jcr.client.JcrConnector.main(JcrConnector.java:26)
Caused by: java.rmi.NoSuchObjectException: no such object in table
at
sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:247)
at
sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:223)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:126)
at org.apache.jackrabbit.rmi.server.ServerRepository_Stub.login(Unknown
Source)
at
org.apache.jackrabbit.rmi.client.ClientRepository.login(ClientRepository.java:76)
... 2 more
java.rmi.NoSuchObjectException: no such object in table
at
sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:247)
at
sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:223)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:126)
at org.apache.jackrabbit.rmi.server.ServerRepository_Stub.login(Unknown
Source)
at
org.apache.jackrabbit.rmi.client.ClientRepository.login(ClientRepository.java:76)
at
nl.dulsoft.jcr.client.JcrConnector.removeContent(JcrConnector.java:48)
at nl.dulsoft.jcr.client.JcrConnector.main(JcrConnector.java:26)
Can someone tell what I am doing wrong here?
Thanks in advance.
Marcel