No warning/error reported when fetching bean from conversation marked as
invalidated
------------------------------------------------------------------------------------
Key: ORCHESTRA-31
URL: https://issues.apache.org/jira/browse/ORCHESTRA-31
Project: MyFaces Orchestra
Issue Type: Bug
Components: Conversation
Affects Versions: 1.2
Reporter: Simon Kitching
Priority: Minor
If a bean A is within conversation A, and a method on the bean does:
Conversation.getCurrentInstance().invalidate();
Object o2 = frameworkAdapter.getBean("A");
assert(o1 != this);
The above will fail; the bean is the same one.
The issue is that the invalidate() actually does nothing because the
conversation is currently active; we actually delete the conversation after the
method returns. And therefore the getBean() call still returns the same object
instance.
Why is invalidation delayed (ie the Conversation detached from the scope) until
the conversation is inactive?
It would be nice if an error was returned in this case; it doesn't seem useful
to return beans from a conversation after the conversation has been
invalidated. Or alternately, unlink the conversation from the
SpringConversationScope so that a new conversation instance will be created
immediately, even if it isn't invalidated, so that we get new instances of the
beans returned.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.