I searching the archives for information on that issue - however I could not find a proper answer to it although there are several posts.
It's got to do with the ClassCastException that is thrown when trying to cast to the remote (local) interface from a call to create() on the remote interface - after the application has been deployed the 2nd time (no matter whether the ejbs have changed or not).
So I tried to track the problem down by analyzing what is actually returned by the create() call using java reflection.
The object is always of class $ProxyXX which changes at each hot deployment. However they all implement the proper remote (local) interface and hence I do not quite understand the reason why the ClassCastException is thrown at this point.
In this thread that kind of problem is reported to be fixed: http://www.jboss.org/modules/bb/index.html?module=bb&op=viewtopic&t=forums/ am using the 3.0.0 and as this one was released May 31 i suppose that the fix should be somewhere in there. Hence i assume that either my problem is different or that the fix doesn't fix it.
if you think you have found a bug, post it to sourceforge