I experienced this exact same issue. This is apparently expected behavior. I have not read any material to the contrary. Just be sure to not deploy your entity beans after start up and you should be alright. My SLSBs deploy okay after startup, but the entities do not hot deploy.
I take that back. I have found that if you make any non-trivial changes to your slsbs you need to restart JBoss also. This is a real problem if you believe the hype about ease of use. Easier to write, sure. Deployment on the other hand...
do you use EJB injection ?
@EJB tag in the sessions ?
(it is not needed to restart jboss ...)
The interfaces to your SLSBs are contained in your EJB jar. You redeploy the EJB jar only while the WAR code still has a reference to the old loaded classes, hence your exceptions. Same goes with packaged entity classes.
Try packaging everytihng in an ear and redeploying the whole ear and everything will work fine.
There's only so much *magic* we can do.