You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jackrabbit.apache.org by Nedim <ne...@eu-softing.com> on 2009/09/15 17:34:46 UTC

RMI XASession exception

When i want to connect to my content repository over a RMI i get this error:

Exception in thread "main" java.lang.NoClassDefFoundError: 
org/apache/jackrabbit/api/XASession
        at java.lang.ClassLoader.defineClass1(Native Method)
//10.0.0.174:1099/jackrabbit.repository
        at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
Before reposiotry.login.
        at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
        at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
        at 
org.apache.jackrabbit.rmi.client.ClientAdapterFactory.getSession(ClientAdapterFactory.java:104)
        at 
org.apache.jackrabbit.rmi.client.SafeClientRepository.login(SafeClientRepository.java:121)
        at 
org.apache.jackrabbit.rmi.client.SafeClientRepository.login(SafeClientRepository.java:131)
        at rmisimulation.Main.main(Main.java:126)
Caused by: java.lang.ClassNotFoundException: 
org.apache.jackrabbit.api.XASession
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
        ... 16 more
Java Result: 1


My access code is:

        String ip = "10.0.0.174";
        String port = "1099";
        System.out.println("Accesso RMI su ip:" + ip + " porta:" + port);
        String jackrabbitApplicationName = "jackrabbit.repository";

        ClientRepositoryFactory factory = new ClientRepositoryFactory();
        Repository repository;
       // URL url = null;
        String repoUrl = "//" + ip + ":" + port + "/" + 
jackrabbitApplicationName;

        repository = factory.getRepository(repoUrl);

        System.out.println(repoUrl);

        Session session = repository.login(new 
SimpleCredentials("admin", "admin".toCharArray()));  //in this line the 
exception apears

On the server side i have only configure the web.xml. Do I have to code 
somthing or is this enoght.

thx



Re: RMI XASession exception

Posted by Alexander Klimetschek <ak...@day.com>.
On Tue, Sep 15, 2009 at 17:34, Nedim <ne...@eu-softing.com> wrote:
> When i want to connect to my content repository over a RMI i get this error:
>
> Exception in thread "main" java.lang.NoClassDefFoundError:
> org/apache/jackrabbit/api/XASession
>       at java.lang.ClassLoader.defineClass1(Native Method)
> //10.0.0.174:1099/jackrabbit.repository
>       at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
> Before reposiotry.login.
>       at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
>       at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
>       at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
>       at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>       at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
>       at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
>       at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
>       at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
>       at
> org.apache.jackrabbit.rmi.client.ClientAdapterFactory.getSession(ClientAdapterFactory.java:104)
>       at
> org.apache.jackrabbit.rmi.client.SafeClientRepository.login(SafeClientRepository.java:121)
>       at
> org.apache.jackrabbit.rmi.client.SafeClientRepository.login(SafeClientRepository.java:131)
>       at rmisimulation.Main.main(Main.java:126)

Hmm, not sure if it should be required when not accessed directly, but
it looks like the jackrabbit-api jar is missing on your client side.

Regards,
Alex

-- 
Alexander Klimetschek
alexander.klimetschek@day.com