We have a number of Action base classes, which also have Injections in them and they all work without a problem.
Whenever I've had this kind of problem it's usually been due to one of:
- a class that wasn't compiling; or
- a typo in the name (either in the class' definition, or the injection point).
Did you change anyting in the local interfaces? Are there any other errors in the log?
Everything was compiling and it couldn't be a name typo since it worked before and I did not change any naming.
I had changed the interfaces all to extend the base classes interface -- but I made certain to NOT declare the base class interface as Local (that should be up to the subclass.)
I have figured out how to fix this though: it turns out that these two action classes did not have the @Local annotation.
So before the refactoring, these classes were not local session beans -- and that was just fine I guess. But AFTER the refactoring, apparently the lookup began looking for them as local but they were not there. As you can see in the deployment log in my original message, it had attached the project action to a local JNDI -- even though the SB was actually deployed as remote.
I am not sure why this happened -- it seems like the mechanism which is determining a components JNDI name at deployment time did not work right for some reason.
Anyway, I have fixed my problem by making the interfaces local, which was actually my intention in the first place.