> Hi all,
> 
> maybe this has already been detected by Marc and others, but it has not
> been fixed in the cvs repository.
>  
> The RMI transport of
> org.jboss.ejb.plugins.jrml.interfaces.MethodInvocation gets quite
> confused, because the calculateHash() method that
> builds up a cache of all the relevant interfaces operates on the instance
> variable "hash" and hence overrides the
> hash code that has been transferred by a client proxy --> always the last
> method entered into the cache is called instead of the 
> proper one that has actually been called. 
> 
> Maybe it should just say (or calculateHash was originally though of being
> called once per method call, right?)
> 
> public int calculateHash(Method method) {
> 
>               int hash =
>               ---     
>               ---
> 
>               // We use the declaring class
>                       method.getDeclaringClass().getName().hashCode() ^
> //name of class
>             // We use the name of the method
>                       method.getName().hashCode(); //name of method
> 
> 
> Because of the danger in confusing local with instance variables, some of
> us have adopted the rule to prefix
> local variables with "tmp" or "the". Its ugly, but useful ;-)
> 
> Best,
> CGJ

Reply via email to