The biggest problem I see with your proposal is that you shouldn't create your own threads. Threads should be created and managed by the Web Container only, of which you have no real direct control.
You haven't said what action needs to be taken when the process has finished, so I will assume that the user does not need to be automatically redirected to view the results (ie: they could log on later and find the results in a list, for example).
In this case, you are talking about asynchronous processing, so I would suggest you generate a JMS message, and write a Message Driven Bean to perform the processing.
Hope this helps,