Como você diz que a resposta GetCapabilities está funcionando, é improvável que seja um problema com a configuração do próprio WPS no GeoServer.
A seguinte postagem no site do Hivmr discutindo um problema com um serviço GeoServer WPS em execução no JBOSS nos diz que:
Meu palpite é a disputa sobre o pool de threads usado para executar proceses. Quando um processo é executado, ele é feito em um conjunto de encadeamentos de tamanho fixo. Se o conjunto de encadeamentos estiver cheio (todos os encadeamentos estão ocupados no momento), a execução do processo aguardará e bloqueará se for uma execução síncrona.
Então, acho que o que aconteceu é um impasse, com o processo "A" aguardando o processo "B", mas "B" aguardando um ponto no pool de threads que não ficará disponível até que "A" seja concluído.
Por padrão, o tamanho do pool de threads é 2 vezes o número de núcleos na máquina. O pior caso é o tamanho de 2 threads, o que significa que duas invocações do seu processo em paralelo podem gerar um impasse. O tamanho do pool de threads é configurável para que você possa aumentá-lo, mas essa é realmente uma solução bandaid. Mas poderia funcionar em conjunto com o módulo de fluxo de controle que pode limitar o número total de pedidos máximos que um serviço pode atender. Portanto, você só precisa garantir que o tamanho do conjunto de encadeamentos seja maior que o número máximo de solicitações de execução do WPS que o servidor possa manipular.
server.log onde fica preso:
...
16: 43: 42,112 WARN [org.geoserver.ows] (http-executor-threads - 5) Não foi possível obter um ServiceInfo para o serviço wps, portanto, não foi possível verificar se o serviço está ativado
É possível que esse seja o mesmo problema que você encontrou, e a solução é:
verifique se o tamanho do conjunto de encadeamentos é maior que o número máximo de solicitações de execução do WPS que o servidor pode manipular.