pessoal boa tarde, fiz uma classe para calcular idade até ai tudo bem!!funcionou direitinho, dai precisei passar o codigo apra dentro de um servlet…Devo estar fazendo uma tremenda besteira pois não estou conseguindo… :oops: Mas uma vez vou precisar da ajuda de vcs…este servlet recebe informações de uma pagina html e faz o calculo entretanto eu não to conseguindo compilar e não sei onde pode estar o erro ja revi o codigo varias vezes.
Segue os codigos para que os amigos me ajudem, por favor…
Depois de calculada a idade ele tem de retornar um valor para variavel age na classe Candidato
Esta classe da dando erro:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
public class Cadastra extends HttpServlet{
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
response.setContentType("text/html");
// pegamos o PrintWriter do response, através
// do qual escreveremos o conteudo da pagina
PrintWriter out = response.getWriter();
String nome = request.getParameter("nome");
String sexo = request.getParameter("sexo");
String email = request.getParameter("email");
String endereco = request.getParameter("endereco");
int rg = Integer.parseInt( request.getParameter("rg"));
String cpf = request.getParameter("cpf");
int cep = Integer.parseInt ( request.getParameter("cep"));
//metodo de calculo vou começar aqui
int ageYears, ageMonths, ageDays;
Calendar cd = Calendar.getInstance();
try{
int year = Integer.parseInt ( request.getParameter("year"));
if(year > cd.get(Calendar.YEAR)){
JOptionPane.showMessageDialog("Data de Nascimento Invalida");
}
int month = Integer.parseInt ( request.getParameter("mes"));
if(month < 1 || month > 12){
JOptionPane.showMessageDialog("Entre com o mês entre 1 e 12");
}
else{
month--;
}
int day = Integer.parseint ( request.getParameter("dia"));
if(month == 0 || month == 2 || month == 4 || month == 6 || month == 7 || month == 9 || month == 11){
if(day > 30 || day < 1){
JOptionPane.showMessageDialog("Entre com dia entre 1 e 30");
}
}
else if(month == 3 || month == 5 || month == 8 || month == 10){
if(day > 31 || day < 1){
JOptionPane.showMessageDialog("Entre com dia entre 1 e 31");
}
}
else{
if(new GregorianCalendar().isLeapYear(year)){
if(day < 1 || day > 29){
JOptionPane.showMessageDialog("Entre com dia entre 1 e 29");
}
}
else if(day < 1 || day > 28){
JOptionPane.showMessageDialog("Entre com dia entre 1 e 28");
}
}
}
catch(NumberFormatException ne){
JOptionPane.showMessageDialog(ne.getMessage() + " Vc ta de brincadeira!!!!");
JOptionPane.showMessageDialog(" Entre com um numero!!!!");
}
Calendar bd = new GregorianCalendar(year, month, day);
ageYears = cd.get(Calendar.YEAR) - bd.get(Calendar.YEAR);
if(cd.before(new GregorianCalendar(cd.get(Calendar.YEAR), month, day))){
ageYears--;
ageMonths = (12 - (bd.get(Calendar.MONTH) + 1)) + (bd.get(Calendar.MONTH));
if(day > cd.get(Calendar.DAY_OF_MONTH))
ageDays = day - cd.get(Calendar.DAY_OF_MONTH);
else if(day < cd.get(Calendar.DAY_OF_MONTH))
ageDays = cd.get(Calendar.DAY_OF_MONTH) - day;
else if
ageDays = 0;
}
else if(cd.after(bd)){
ageMonths = (12 - (bd.get(Calendar.MONTH) + 1)) - 1;
if(day > cd.get(Calendar.DAY_OF_MONTH))
ageDays = day - cd.get(Calendar.DAY_OF_MONTH) - day;
else if(day < cd.get(Calendar.DAY_OF_MONTH))
ageDays = cd.get(Calendar.DAY_OF_MONTH) - day;
else
ageDays = 0;
}
else{
ageYears = cd.get(Calendar.YEAR) - bd.get(Calendar.YEAR);
ageMonths = 0;
ageDays = 0;
}
int age = ageYears;
//-------terminei aqui a inserçao do codigo------------//
int day = Integer.parseInt ( request.getParameter("day"));
int month = Integer.parseInt ( request.getParameter("month"));
int year = Integer.parseInt ( request.getParameter("year"));
Candidato candidato = new Candidato();
candidato.setNome (nome);
candidato.setEmail (email);
candidato.setSexo (sexo);
candidato.setEndereco (endereco);
candidato.setRg (rg);
candidato.setCpf (cpf);
candidato.setDay (day);
candidato.setMonth (month);
candidato.setYear (year);
candidato.setCep (cep);
candidato.setAge(ageYears);//------mudança aqui
HttpSession sessao = request.getSession();
sessao.setAttribute("candidato",candidato);
// Agora vamos escrever o conteudo da pagina
out.println("<HTML>");
out.println("<BODY>");
out.println("<form action='curso' method='post'>");
out.println("Curso:<select name=curso>");
out.println("<option value='Basico Incompleto'>Basico Incompleto</option>");
out.println("<option value='Basico Completo'>Basico Completo</option>");
out.println("<option value='Medio Incompleto'>Medio Incompleto</option>");
out.println("<option value='Medio Completo'>Medio Completo</option>");
out.println("<option value='Superior Incompleto'>Superior Incompleto</option>");
out.println("<option value='Superior Completo'>Superior Completo</option>");
out.println("</select><p/>");
out.println("<input type='submit' value='Enviar'/>");
out.println("</body>");
out.println("</html>");
}
}
estar classe coloco os gets e os sets:
public class Candidato{
private String nome;
private String email;
private String sexo;
private String Curso;
private String endereco;
private int rg;
private String cpf;
private int cep;
private int day;
private int month;
private int year;
private int age;
public Candidato(){
day=1;
month=0;
year=1;
rg=0;
cpf="";
cep=0;
age=0;
}
public void setCep(int cep){
this.cep = cep;
}
public void setEndereco(String endereco){
this.endereco = endereco;
}
public void setRg(int rg){
this.rg = rg;
}
public void setCpf(String cpf){
this.cpf = cpf;
}
public void setDay(int day){
this.day = day;
}
public void setMonth(int month){
this.month = month;
}
public void setAge(int age ){
this.age = age;
}
public void setYear (int year){
this.year = year;
}
public void setNome(String nome){
this.nome = nome;
}
public void setEmail(String email){
this.email = email;
}
public void setSexo(String sexo){
this.sexo = sexo;
}
public void setCurso(String curso){
this.Curso = curso;
}
public String getNome(){
return this.nome;
}
public String getEmail(){
return this.email;
}
public String getSexo(){
return this.sexo;
}
public String getCurso(){
return this.Curso;
}
public int getDay(){
return this.day;
}
public int getMonth(){
return this.month;
}
public int getYear(){
return this.year;
}
public int getAge(){
return this.age;
}
public int getRg(){
return this.rg;
}
public String getCpf(){
return this.cpf;
}
public String getEndereco(){
return this.endereco;
}
public int getCep(){
return this.cep;
}
}