I was going to implement the same behavior in my application, but was stopped by the same problem.
I posted the question in this thread.
Unfortunately, no reply was received.
After that, I created Jira Issue because I think it is Seam bug. At first this issue was rejected with suggestion to use Seam forum to find the solution. I re-opened it providing the link to this forum and after that it was simply deleted without any explanation.
It seems that we have the same problem.
I will wait a bit, hoping for another reply, then try again to the bottom of this and possibly open a Jira issue.
The whole thing baffles me as I am trying to do quite a simple thing that seems to be impossible. I am probably just doing something in a non-Seamy way yet scanning through Seam community documentation for redirect left me as puzzled as ever.
Why did you create this component as a Stateless EJB? Try either a Stateful or a normal java bean. That might work better when I see your exception.
Also a @AutoCreate would help on your @Stateless
I actually dropped my notfound page and the accompanying bean and now I only have the following thing is web.xml:
<error-page> <error-code>404</error-code> <location>/home.seam?message=page_not_available</location> </error-page>
This works ok when requesting non-existent resources that do not end in .seam but then requesting doesnotexist.seam, I get the same stack trace as Konstantin, i.e.
java.lang.IllegalStateException with message:
Could not commit transaction
Caused by javax.ejb.NoSuchEJBException with message:
Could not find stateful bean: a124i-ku0fc0-g6n821lj-1-g6n8bmrx-9x
The full stack trace is available at Pastebin.
So my question remains: Is forwarding requests to non-existing Seamy resources illegal or am I just doing it wrong?