I believe I have found a flaw/bug with how the EJBStatefullProvider maintains state and how SOAP faults are handled. The EJBStatefullProvider maintains it's connection to an EJB by appending the serialized Handle to the target object URI. This is passed between the client and the SOAP server for each request/response pair. The modified URI is held onto by the Call object. If an exception is thrown by one of the EJB's methods then a SOAP fault is created to pass the exception back to the Client. The SOAP Server clears out the Context object, thus throwing away the modified URI and losing the EJB Handle. Once an Exception occurs you lose your connection - Doh! Has anyone else created a workaround for this?
