You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jackrabbit.apache.org by bgiles <bg...@coyotesong.com> on 2009/05/08 18:08:23 UTC

stupid jndi question

I have set up RMI on my dev server and know it's a good URL 
(http://10.10.6.12:8080/rmi) since I can connect with 
URLRemoteRepository from within my app.

But when I try to connect using ClientRepositoryFactory via JNDI I get 
an Malformed URL exception (message: InvalidURLScheme).  Ditto if I 
create the factory explicitly and use its getRepository(url) method.

I'm stumped since the fact that I can connect with URLRemoteRepository 
means that all of the necessary bits are in place.  It's not a class 
loader issue since all of the jcr and jackrabbit libraries are in 
tomcat's 'common' directory, not the webapp's WEB-INF/lib directory.

Ideas?

Bear

Re: stupid jndi question

Posted by bgiles <bg...@coyotesong.com>.
That was it, thanks!

Stuart Bingë wrote:
> On Friday 08 May 2009 17:08:23 bgiles wrote:
>   
>> I have set up RMI on my dev server and know it's a good URL
>> (http://10.10.6.12:8080/rmi) since I can connect with
>> URLRemoteRepository from within my app.
>>
>> But when I try to connect using ClientRepositoryFactory via JNDI I get
>> an Malformed URL exception (message: InvalidURLScheme).  Ditto if I
>> create the factory explicitly and use its getRepository(url) method.
>>     
>
> I'm not sure if this is the problem you're experiencing but we've recently had 
> something similar:
>
> It appears URLRemoteRepositoryFactory (and hence URLRemoteRepository) is used 
> when accessing Jackrabbit over HTTP-RMI (i.e. your URI above, 
> http://10.10.6.12:8080/rmi) whereas ClientRepositoryFactory (and hence 
> ClientRepository) is used when accessing Jackrabbit over standard JVM-RMI, 
> i.e. your URI would instead look something like rmi://10.10.6.12:1099/my_repo
>
> We've also been using URLRemoteRepositoryFactory and have recently switched to 
> ClientRepositoryFactory as an example; when we did so we had to enable 
> Jackrabbit's JVM-RMI interface in order to communicate with the server over 
> this protocol.
>
>   
>> I'm stumped since the fact that I can connect with URLRemoteRepository
>> means that all of the necessary bits are in place.  It's not a class
>> loader issue since all of the jcr and jackrabbit libraries are in
>> tomcat's 'common' directory, not the webapp's WEB-INF/lib directory.
>>
>> Ideas?
>>
>> Bear
>>     
>
> HTH,
> --
> Stuart Bingë
>
> ______________________________________________________________________
>
> “Complinet Ltd is registered in England. Registered office at Vintners Place, 68 Upper Thames Street, London EC4V 3BJ. Company number 3170722. VAT No. 749 324 021.
> Complinet Inc is a corporation registered in Delaware, USA.”
>
> This email has been scanned by the MessageLabs Email Security System.
>   


Re: stupid jndi question

Posted by Stuart Bingë <st...@complinet.com>.
On Friday 08 May 2009 17:08:23 bgiles wrote:
> I have set up RMI on my dev server and know it's a good URL
> (http://10.10.6.12:8080/rmi) since I can connect with
> URLRemoteRepository from within my app.
>
> But when I try to connect using ClientRepositoryFactory via JNDI I get
> an Malformed URL exception (message: InvalidURLScheme).  Ditto if I
> create the factory explicitly and use its getRepository(url) method.

I'm not sure if this is the problem you're experiencing but we've recently had 
something similar:

It appears URLRemoteRepositoryFactory (and hence URLRemoteRepository) is used 
when accessing Jackrabbit over HTTP-RMI (i.e. your URI above, 
http://10.10.6.12:8080/rmi) whereas ClientRepositoryFactory (and hence 
ClientRepository) is used when accessing Jackrabbit over standard JVM-RMI, 
i.e. your URI would instead look something like rmi://10.10.6.12:1099/my_repo

We've also been using URLRemoteRepositoryFactory and have recently switched to 
ClientRepositoryFactory as an example; when we did so we had to enable 
Jackrabbit's JVM-RMI interface in order to communicate with the server over 
this protocol.

> I'm stumped since the fact that I can connect with URLRemoteRepository
> means that all of the necessary bits are in place.  It's not a class
> loader issue since all of the jcr and jackrabbit libraries are in
> tomcat's 'common' directory, not the webapp's WEB-INF/lib directory.
>
> Ideas?
>
> Bear

HTH,
--
Stuart Bingë

______________________________________________________________________

“Complinet Ltd is registered in England. Registered office at Vintners Place, 68 Upper Thames Street, London EC4V 3BJ. Company number 3170722. VAT No. 749 324 021.
Complinet Inc is a corporation registered in Delaware, USA.”

This email has been scanned by the MessageLabs Email Security System.