The current deployment options for RepositoryStartupServlet bind a local repository to JNDI and/or register a remote ServerRepository via RMI using an RMIServerSocketFactory and LocateRegistry.
The LocateRegistry mechanism does not appear to work by default in a Weblogic environment.
I would like to request the option of binding a ServerRepository in registerRMI() to JNDI using the servlets current context instead of attempting LocateRegistry.createRegistry() and then LocateRegistry.getRegistry(). This JNDI binding option could use a different name so as to not interfere with the JNDI binding attempted in registerJNDI().
For example, if requested in the web.xml config, registerRMI() could bind the following using it's reference to a ServerRepository:
Context ctx = new InitialContext();
ctx.bind(repositoryName + "Remote", remote);
This allows for easy remote access using weblogic's native T3 protocol using the following on the client with:
Context ctx = new InitialContext(); // with say -Djava.naming.provider.url and -Djava.naming.factory.initial set
Object ref = ctx.lookup(repositoryName + "Remote");
LocalAdapterFactory laf = new ClientAdapterFactory();
Repository remote = laf.getRepository((RemoteRepository) ref);
From the initial tests I have done this appears to work well inside the Weblogic container.