Don't know if it's the reason of your problem, but when I see this :
It means that you inject a component which name is returned by a component called sessionProgressBean, and not a component which name is sessionProgressBean.
Maybe you should have written this instead :
Are you sure that the session bean isn't wrapped in a proxy and that it is the proxy instance which is different?
Also if the sessionProgressBean is Session scoped you shouldn't need to specify it when in injecting.
What you might want to add is a craeate=true just incase it doesn't exist.
Sort of lost track of your problem when reading the post, is the problem that you are seeing two different beans (which might simply be the proxy).
Not much help but perhaps useful info :)
Thanks for the tips.
@Olivier: is there a big difference between the two? The bean has the @Name attribute set to sessionProgressBean. (Is this a case of RTFM?) I'll try it out and see if there is a difference.
@Micke: The problem is that I seem two have two different instances in the seam Session. One is the instance assigned to my web page and one is the instance inside my ejb/seam backing bean doing the long-running task. To verify this I did some sysout with the instance and the output had two different id's. ie MyClass@1234 from the web page and MyClass@5789 from the backing bean.
I assumed that seam manages the beans in a session that they are unique to that session and that any session scope bean would be able to access the same instance of the bean and manipulate the data. Am I wrong and if not, what are the possible causes of my problem?
Your suggestion about the syntax gave me the same instance as was used in the web page. I am a little confused as to how this makes a difference. I guess a book is going to have to be bought and of course read.