Problema - MethodNotAllowedException

10 respostas
V

Pessoal,

Estou tendo o seguinte problema ao dar submit em um form:

br.com.caelum.vraptor.http.route.MethodNotAllowedException: Method POST is not allowed for requested URI. Allowed Methods are [GET]

Quando eu acesso direto pela url funciona.

Meu código está da seguinte forma:

" name="signupForm" id="signupForm">

@Post("/adiciona")
public void adiciona(TipoEvento tipoEvento) {

}

Obrigado.

10 Respostas

Lucas_Cavalcanti

qual é a uri que aparece no browser quando dá esse erro?

o controller está anotado com @Path("/tipoEvento")?

V

A url que tenta acessar é: http://localhost:8080/projeto/tipoEvento/adiciona

Erro do browser: HTTP Status 405 - description The specified HTTP method is not allowed for the requested resource ().

Minha classe por enquanto de teste está assim:

<a class="mention" href="/u/resource">@Resource</a>

<a class="mention" href="/u/path">@Path</a>("/tipoEvento")

public class TipoEventoController {
private TipoEventoDao tipoEventoDao;

public TipoEventoController(TipoEventoDao tipoEventoDao) {
	this.tipoEventoDao = tipoEventoDao;
}

@Post("/adiciona")
public void adiciona(TipoEvento tipoEvento) {
	
	//
	
}

}

Lucas_Cavalcanti

está com a última versão do VRaptor?

tenta substituir o @Post("/adiciona") por @Post @Path("/adiciona")

V

Estou usando a versão 3.4.0
Iniciei o projeto a partir do blank-project.

Quando inicio o Jboss 6.0 Final aparece o seguinte no console a respeito do método que estou tentando acessar:

08:25:31,819 INFO [STDOUT] 08:25:31,819 INFO [DefaultRouteBuilder ] /tipoEvento/adiciona [GET] -> TipoEventoController.adiciona()

Obrigado.

Lucas_Cavalcanti

vc chegou a substituir o @Post com @Path @Post?

V

Sim. Continuou dando o mesmo problema.

Lucas_Cavalcanti

bom, nesse caso o /tipoEvento/adiciona já é a url padrão que chegaria nesse método, tire os @Path’s e deixe só o @Post sem nada, e veja se funciona

V

Não funcionou.

Porque será que o método que aparece no DefaultRouteBuilder é GET em vez de POST?

[STDOUT] 14:55:32,010 INFO [DefaultRouteBuilder ] /tipoEvento/adiciona [GET] -> TipoEventoController.adiciona()

Será que tem a ver com o Jboss?

Lucas_Cavalcanti

em algum momento vc usou essa url como GET? acho que deve estar com uma versão antiga da classe dentro do war… tenta dar um clean no projeto e no servidor antes de fazer o deploy ou gerar o war

V

Lucas essa sua idéia foi legal.

O que fiz:
Deletei os arquivos relacionados com o projeto do eclipse e o Jboss.
Recriei tudo novamente e funcionou.
Realmente em algum momentou eu havia utilizado essa url como GET.

Agora está funcionando. Reconheceu o metodo como POST.

Obrigado.

Criado 31 de janeiro de 2012
Ultima resposta 6 de fev. de 2012
Respostas 10
Participantes 2