Sessao usando o vraptor 3

Bom dia,

Tenho um sistema java que roda sem erros no localhost, no entanto qnd subo a aplicação para o servidor tomcat no seguinte endereço http://www.explorenet.com.br/speech/acesso ele abre a página, porém da um erro http://www.explorenet.com.br/speech/acesso;jsessionid=8C18E6FC4CC1F8328A610B70B0047142 -

Not Found
The requested document was not found on this server.

Web Server at explorenet.com.br

Mas qnd dou ctrl+f5 no navegador e faço o login novamente ele entra normal.
O que pode ser?

a jsessionid é uma variável de sessão transmitida via URL pelo JSP ou tecnologia que estiver se utilizando dela. Essa variável tem um valor que muda a cada chamada. Se chamo no navegador uma variável com um valor que não existe, o erro pode estar ai.

Tenho um outro sistema que faz exatamente a mesma coisa, porém estão em servidores diferentes. O foda que no meu localhost não dá pau e nem no log do servidor, ele simplesmente dá que a página não foi encontrada.

Segue a classe de sessao do usuário

import br.com.caelum.vraptor.ioc.Component;
import br.com.caelum.vraptor.ioc.SessionScoped;

@Component
@SessionScoped
public class AlunoWeb implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private Aluno logado;

	public void login(Aluno aluno) {
		this.logado = aluno;
	}

	public String getLogin() {
		return logado.getNome();
	}

	public boolean isLogado() {
		return logado != null;
	}
	
	public void logout() {
		this.logado = null;
	}

}

A Classe AlunosController onde faço o login

@Resource
public class AlunosController {

	private final AlunoDAO dao;
	private final Result result;
	private final Validator validator;
	private final AlunoWeb alunoWeb;
	private final ContaReceberDAO contaDAO;
	ContaReceber conta = new ContaReceber();
	BoletoHsbc hsbc = new BoletoHsbc();

	public AlunosController(AlunoDAO dao, ContaReceberDAO contaDAO, Result result, Validator validator, AlunoWeb alunoWeb) {
		this.dao = dao;
		this.result = result;
		this.validator = validator;
		this.alunoWeb = alunoWeb;
		this.contaDAO = contaDAO;
	}

	/* Abre o formulário de login */
	@Get
	@Path("/acesso")
	public void loginForm() {
	}

	/* Executa o Login */
	@Post
	@Path("/acesso")
	public void acesso(Aluno aluno, String senha) {

		Aluno carregado = dao.carrega(aluno);

		Validacao val = new Validacao(dao, validator);
		val.validaAcesso(aluno,senha);
		validator.onErrorUsePageOf(AlunosController.class).loginForm();

		alunoWeb.login(carregado);
		result.redirectTo(this).exibeDados(aluno);
	}

	@Restrito
	@Path("/exibeDados")
	public List<Aluno> exibeDados(Aluno aluno) {
		return dao.carregaDadosAluno(aluno);
	}
	
	public ContaReceber setDadosContaReceber(){
		conta.setNumeroParcelas(1);
		conta.setParcela(1);
		conta.setValorParcela(14.99);
		conta.setValorTotal(14.99);
		conta.setMeioPagamento("Boleto");
		conta.setIdBanco(10);
		conta.setIdTipoConta(7);
		conta.setJuros(0);
		conta.setVencimento("2011-11-21");
		conta.setDataPagamento(Calendar.getInstance());
		conta.setObservacao("");
		conta.setAtivo(1);
		conta.setConvenio(0.0);
		conta.setNDoc("");
		return conta;	
	}
	
	@Post
	@Path("/boleto")
	public void geraBoleto(Aluno aluno) throws IOException{
		conta.setIdAluno(aluno);//Seta o idaluno vindo da view exibeDados.jsp

		if(contaDAO.verificaConta(conta) == true){
			//System.out.println("passo um");
			contaDAO.adiciona(setDadosContaReceber());
		}else{
			//System.out.println("passo dois");
			contaDAO.remove(conta);//remove a conta, para gerar nova conta
			contaDAO.adiciona(setDadosContaReceber());//gera nova conta
		}
		hsbc.geraBoleto(aluno);
		result.redirectTo(this).boletoGerado(aluno);
	}
	
	@Restrito
	public List<Aluno> boletoGerado(Aluno aluno){
		return dao.carregaDadosAluno(aluno);//Seta o idaluno vindo da view exibeDados.jsp	
	}

	@Path("/logout")
	public void logout() {
		alunoWeb.logout();
		result.redirectTo(AlunosController.class).loginForm();
	}
}

Desde já muito obrigado

Configure o mod_jk (ou o proxy reverso que você usa) para ignorar o jsessionid.