[ 
https://issues.apache.org/jira/browse/JCRRMI-13?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12696276#action_12696276
 ] 

Jukka Zitting commented on JCRRMI-13:
-------------------------------------

bq. Do we really need support for the system property ?

The system property does come in quite handy in cases like 
jackrabbit-standalone or other custom deployments, where we then won't need to 
explicitly add some other configuration mechanism. I don't see much harm in 
keeping the functionality, as it only affects behaviour when you have 
explicitly set the system property. And if you're paranoid, you can always 
explicitly disable the effect of the system property by calling 
setPortNumber(0).

bq. Can we also have the portnumber as an argument to a new constructor instead 
of just a setter (setter is still good, of course) ?

I prefer the setter approach as it automatically works with any 
ServerAdapterFactory subclasses (like JackrabbitServerAdapterFactory), but I 
wouldn't mind if we also added extra constructors.

> Enhancement to get RMI through firewalls
> ----------------------------------------
>
>                 Key: JCRRMI-13
>                 URL: https://issues.apache.org/jira/browse/JCRRMI-13
>             Project: Jackrabbit JCR-RMI
>          Issue Type: Improvement
>         Environment: RHEL Linux 5.0
>            Reporter: Tony Richardson
>            Assignee: Jukka Zitting
>             Fix For: 2.0
>
>
> It is difficult to get RMI through a firewall with the current implementation 
> of org.apache.jackrabbit.rmi.server.ServerObject. As it selects a random port 
> for RMI execution. This issue can be resolved by adding a system property and 
> modifying the default constructor as shown below.
>   private static Integer bindPort = 
> Integer.getInteger("org.apache.jackrabbit.rmi.port", new Integer(0));
>     /**
>      * Creates a basic server adapter that uses the given factory
>      * to create new adapters.
>      *
>      * @param factory remote adapter factory
>      * @throws RemoteException on RMI errors
>      */
>     protected ServerObject(RemoteAdapterFactory factory)
>             throws RemoteException {
>         super(bindPort.intValue());
>         this.factory = factory;
>     }

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

Reply via email to