Your decision is correct, but creating threads in enterprise applications is considered bad practice. It is better to use a thread pool or JMS queue.
You must consider what should happen, that the server crashes during processing, how to respond when several requests (I think hundreds or even thousands) occur simultaneously, etc. So you have chosen the right direction, but it is a little more complicated.