Uno di sicuro:
codice:<% if (sesso.equalsIgnoreCase("m"))%> <h1>Benvenuto Signore</h1>
Questo fatto così è sbagliato/inappropriato. Dietro la JSP c'è una Servlet che viene generata e compilata. Il if così senza { } si aspetta una sola istruzione ma l'output dopo la chiusura %> è fatto da un newline e da una riga successiva. Quindi è molto probabile che ci siano due scritture, quindi è dubbio/inappropriato.
Meglio sempre fare:
codice:<% if ( .......) { %> markup html <% } %>