Problema com checkbox

Pessoal sou bastante leigo ainda em programação web e estou com um problema que não consigo entender(não reparem na “burrice” rs), tenho em uma página(JSP) um formulário para que o usuário possa preencher com seus dados(Nome,Telefone,E-mail e Sexo) e abaixo alguns checkboxes com estilos musicais para que o usuário escolha os de sua preferência(Rock, Pop-Rock,Clássicas,Sertanejo,Jazz), porém quando faço a impressão da página com os dados do usuário no Servlet o resultado dos checkboxes só aparecem se tiverem sidos marcados em sequencia começando a partir do primeiro, e se pular algum só mostram os primeiros,vou explicar melhor:

Página:

[code]

Formulário 2

Formulário

    <form action="../Atividade2" method="get">
    Nome: <input type="text" name="nome"><br>
    Telefone: <input type="text" name="telefone"><br>
    E-mail: <input type="text" name="email"><br><br>
    Sexo:&nbsp; Masculino<input type="radio" name="sexo" value="M"> &nbsp;&nbsp; Feminino<input type="radio" name="sexo" value="M"><br><br>

    <b><i>.::Preferências musicais::.</b></i><br><br>
    <input type="checkbox" name="g1" value="Rock">Rock<br>
    <input type="checkbox" name="g2" value="Pop-Rock">Pop-Rock<br>
    <input type="checkbox" name="g3" value="Classicas">Clássicas<br>
    <input type="checkbox" name="g4" value="Sertanejo">Sertanejo<br>
    <input type="checkbox" name="g5" value="Jazz">Jazz<br><br>

    <input type="submit" value="Enviar">&nbsp;&nbsp;<input type="reset" value="Limpar"><br> 

    </form>
</body>
[/code]

Como vcs podem ver, a ordem dos checkboxes é:

1-Rock
2-Pop-Rock
3-Classicas
4-Sertanejo
5-Jazz

Daí o problema, se eu marcar apenas Rock, imprime Rock normal, se eu marcar Rock,Pop-Rock e Classicas tbm, agora se eu marcar esses 3 e desmarcar Pop-Rock(entre Rock e Classicas) já não imprime mais Clássicas, só Rock… ou se eu marcar Rock, Pop-Rock e Jazz só imprime até Pop-Rock, para imprimir Jazz tem que marcar todas até o final, entenderam? kk…tipo só ta saindo se tiver marcado na sequencia como se estivesse todos ligados, se quebrar algum do meio o restante abaixo não imprime.

E o Servlet:

[code]package pacote1;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
*

  • @author maickon
    */
    public class Atividade2 extends HttpServlet {

    /**

    • Processes requests for both HTTP

    • GET and

    • POST methods.

    • @param request servlet request

    • @param response servlet response

    • @throws ServletException if a servlet-specific error occurs

    • @throws IOException if an I/O error occurs
      /
      protected void processRequest(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
      response.setContentType(“text/html;charset=UTF-8”);
      PrintWriter out = response.getWriter();
      try {
      /
      TODO output your page here. You may use following sample code. */
      out.println("");
      out.println("");
      out.println("");
      out.println(“Atividade1”);
      out.println("");
      out.println("");
      out.println(“

      Dados:

      ”);
      out.println("Nome: " + request.getParameter(“nome”) + “
      ”);
      out.println("Telefone: " + request.getParameter(“telefone”) + “
      ”);
      out.println("E-mail: " + request.getParameter(“email”) + “
      ”);
      if(request.getParameter(“sexo”).equals(“M”)){
      out.println(“Sexo: Masculino

      ”);
      }
      else{
      out.println(“Sexo: Feminino

      ”);
      }
       out.println("<b>Gostos Musicais:<br><br>");
       
       if(request.getParameter("g1").equals("null")!= true){
           out.println(request.getParameter("g1") + "<br>");
       }
       if(request.getParameter("g2").equals("null")!= true){
           out.println(request.getParameter("g2")+ "<br>");
       }
       if(request.getParameter("g3").equals("null")!= true){
           out.println(request.getParameter("g3")+ "<br>");
       }
       if(request.getParameter("g4").equals("null")!= true){
           out.println(request.getParameter("g4")+ "<br>");
       }
       if(request.getParameter("g5").equals("null")!= true){
           out.println(request.getParameter("g5")+ "<br>");
       }
       
       out.println("</body>");
       out.println("</html>");
      

      } finally {
      out.close();
      }
      }


[/code]

if(request.getParameter("g1").equals("null")!= true){ out.println(request.getParameter("g1") + "<br>"); }

mude para

if(request.getParameter("g1") != null ){ out.println(request.getParameter("g1") + "<br>"); }
e ve se funciona

Valeu cara! Deu certo sim :slight_smile: