Colegas,
abaixo o erro ao cliar no botão submit do formulario
[#|2011-12-28T10:59:00.277-0300|WARNING|glassfish3.1.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=34;_ThreadName=Thread-2;|StandardWrapperValve[aula02.CadastrarFuncionarioServlet]: PWC1406: Servlet.service() for servlet aula02.CadastrarFuncionarioServlet threw exception
java.lang.NullPointerException
[b]at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1008)
at java.lang.Double.parseDouble(Double.java:540)[/b]
at aula02.CadastrarFuncionarioServlet.doService(CadastrarFuncionarioServlet.java:51)
at aula02.CadastrarFuncionarioServlet.doPost(CadastrarFuncionarioServlet.java:85)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1539)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:330)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:174)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:828)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:725)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1019)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:722)
|#]
java.lang.NullPointerException
[b]at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1008)
at java.lang.Double.parseDouble(Double.java:540)[/b]
at aula02.CadastrarFuncionarioServlet.doService(CadastrarFuncionarioServlet.java:51)
at aula02.CadastrarFuncionarioServlet.doPost(CadastrarFuncionarioServlet.java:85)
import java.util.Date;
public class Funcionario {
private String nome;
private Date nascimento;
private Double salario;
private Character sexo;
private Boolean temporario;
public Funcionario(){
}
public Funcionario(String nome, Date nascimento, Double salario,
Character sexo, Boolean temporario) {
super();
this.nome = nome;
this.nascimento = nascimento;
this.salario = salario;
this.sexo = sexo;
this.temporario = temporario;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public Date getNascimento() {
return nascimento;
}
public void setNascimento(Date nascimento) {
this.nascimento = nascimento;
}
public Double getSalario() {
return salario;
}
public void setSalario(Double salario) {
this.salario = salario;
}
public Character getSexo() {
return sexo;
}
public void setSexo(Character sexo) {
this.sexo = sexo;
}
public Boolean getTemporario() {
return temporario;
}
public void setTemporario(Boolean temporario) {
this.temporario = temporario;
}
}
private void doService(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException{
String nome = request.getParameter("nome");
String sNascimento = request.getParameter("nascimento");
String sSalario = request.getParameter("salario");
String sSexo = request.getParameter("sexo");
String sTemporario = request.getParameter("temporario");
Funcionario funcionario = null;
DateFormat df = new SimpleDateFormat("dd/MM/yyyy");
try {
Date nascimento = df.parse(sNascimento);
Double salario = Double.parseDouble(sSalario);
Character sexo = sSexo.charAt(0);
Boolean temporario = Boolean.parseBoolean(sTemporario);
funcionario = new Funcionario(nome, nascimento, salario, sexo, temporario);
} catch (Exception e) {
throw new ServletException(e);
}
if (funcionario != null){
Dados.cadastrarFuncionario(funcionario);
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.write("<html><head><title>Funcionários cadastrados</title></head></body>");
out.write("<h1>Funcionários cadastrados</h1><ol>");
List<Funcionario> lista = Dados.listarFuncionarios();
for(Funcionario f: lista) out.write("<li><p>" + f.getNome() + "</p></li>");
out.write("</ol>");
out.write("<p><hr /></p><a href='index.html'>Formulario de Cadastro</a></p></body></html>");
out.close();
}
}
Desde já agradeço sua ajuda!
