Tratamento de erro

Pessoal, me ajudem a fazer um tratamento de erro nesse trecho do código, so novo em java, eu queria que ele emitisse uma mensagem falando que aceita somente numeros !

do {

		System.out.println("Para visualizar o menu pressione 1 ou pressione 2 para nao visualizar o menu");
		op = scan.nextInt();
		try {	 
	System.out.println("");
	if (op == 1) {
	System.out.println("");
	System.out.println("***************************************************************************************************************************************************************************************************************************************************************");
	System.out.println("| 1. VVT = Valor Venal do Terreno                              |\t 2. AT = Área do terreno                                     |\t   3. VM = Valor do metro quadrado por padrao de rua             |\t  4. Fst = Fator de influencia da situação do terreno    |");
	System.out.println("| 5. Fet = Fator de influencia de esquina ou numero de testada |\t 6. Fct = Fator de influencia de caraciterística do terrreno |\t  7. Fge = Fator geometrico                                      |\t                                                         |");
	System.out.println("| 8. Fgl = Fator gleba                                         |\t 9. Fmp = Fator de melhorias publicas                        |\t 10. Fdat = Fator de depriciação em função da área de tombamento |\t                                                         |");
	System.out.println("****************************************************************************************************************************************************************************************************************************************************************");
	break;
	}else if (op == 2 ){
		System.out.println("Voce optou por não visualizar o menu");
		break;
		}
	else  {
		JOptionPane.showMessageDialog(null, "Por favor selecione um número válido"); 
		
			}
	
	} catch (InputMismatchException e){
	    	 JOptionPane.showMessageDialog(null, "Erro");
	   }
}while (op != 1 || op !=2);

obrigado
atenciosamente

Duplicado: JOptionPane

1 curtida

“Reinicie” o scanner dentro do catch.

catch (InputMismatchException e){
	  JOptionPane.showMessageDialog(null, "Erro");
	  scanner = new Scanner(Sytem.in);
}