Ambrish, welcome to
Java Ranch!
Let me see if I understand correctly. You are deploying the entire EAR. If the EAR contains some old modules and one new module, the deployment fails, but if it contains all rebuilt modules, then the redeployment is successful. Is that right?
My guess would be that when the deployer unpacks the EAR it notices that only one of the modules has been updated and thus updates only that module. Which means that any objects created based on the modules that are not updated are still in use and those might be handing on to old objects from the previous version of the module that was updated. Of course if all modules are updated, then all old objects would be invalidated and thus the issue is avoided.
This is only a guess. Posting the exception stack trace after redeployment might shed more light.
Also, does the redeployment fail even if you stop the app server, then redeploy, and then restart?