[ 
https://issues.apache.org/jira/browse/LUCENE-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12718481#action_12718481
 ] 

Simon Willnauer commented on LUCENE-1407:
-----------------------------------------

Shai, you miss one little tricky thing with RMI. RMI uses a DynamicProxy 
(java.lang.reflect.Proxy) together with a java.lang.reflect.InvocationHandler 
to proxy the remote call. A proxy can only be created using an interface. All 
calls to the interface are passed to the InvocationHandler instance and 
subsequently to the remote server. You can only cast an object returned by 
lookup() into an interface implemented by the remote object. If you would 
implement Remotable in you remote object you can only cast it into Remotable 
(while I have never seen that interface). This will only offer you the methods 
of this interface but not the methods of the remote object, in our case 
RemoteSeachable. Eventually we need an interface that defines all methods 
needed to use RemoteSearchable, without a base interface this is not gonna work 
together with RMI.

simon

> Refactor Searchable to not have RMI Remote dependency
> -----------------------------------------------------
>
>                 Key: LUCENE-1407
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1407
>             Project: Lucene - Java
>          Issue Type: Improvement
>            Reporter: Grant Ingersoll
>            Priority: Minor
>             Fix For: 2.9
>
>
> Per http://lucene.markmail.org/message/fu34tuomnqejchfj?q=RemoteSearchable
> We should refactor Searchable slightly so that it doesn't extend the 
> java.rmi.Remote marker interface.  I believe the same could be achieved by 
> just marking the RemoteSearchable and refactoring the RMI implementation out 
> of core and into a contrib.
> If we do this, we should deprecate/denote it for 2.9 and then move it for 3.0

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-dev-h...@lucene.apache.org

Reply via email to