Yes, you need to use another thread to do the processing, and update the progress bar in the event thread. It sounds like you might be trying to update the progress bar inside the thread you are using to do the processing.
Here is a link to the section on progress bars in the Swing tutorial.