Java.lang.NullPointerException

Olá amigos!
Estamos desenvolvendo uma aplicação para celular e estamos tendo alguns problemas. Temos uma pequena página em wml aonde o usuário realiza seu cadastro. Se o usuário já existir estes campos devem ser preenchidos automaticamente. Vejam um trecho que realiza esta função:

<?xml version=“1.0” encoding=“ISO-8859-1” ?>
<!DOCTYPE wml PUBLIC “-//SmartTrust//DTD WIG-WML 4.0//EN”
http://www.smarttrust.com/DTD/WIG-WML4.0.dtd”>
<%@ page language=“java” import = “java.sql.,java.io.,java.,prolan.prolanDB.,javax.crypto.,java.security.,java.util.,java.lang.,prolan.prolanSecurity.PRUser” %>
<%@ page session = “true” autoFlush=“true”%>
<%
String strMinId;
String strNickName, strCidade;
int nSex, nAge, nHeigth;

strNickName = “”;
strCidade = “”;
nSex = -1;
nAge = 0;
nHeigth = 0;

HttpSession sessao = request.getSession(true);
strMinId = (String)sessao.getAttribute(“minId”);
//strMinId = “3196931566”;
out.println("Celular: " + strMinId);

String sql;
sql = “Select p.Nickname, p.sex,p.age, p.heigth, c.cityname”;
sql = sql + “From profile p, subsProfileCity sc, City c”;
sql = sql + “where p.min_id=’” + strMinId + “’”;
sql = sql + “and p.class_id= 1090”;
sql = sql + “and p.object_id=sc.subsProfile”;
sql = sql + “and sc.city=c.object_id”;
sql = sql + "and sc.priority = 1 ";

out.println("SQL: " + sql);

PRDBConnection rs = new PRDBConnection(sql);
if(rs.resultSet().next()){
strNickName = rs.resultSet().getString(0);
nSex = rs.resultSet().getInt(1);
nAge = rs.resultSet().getInt(2);
nHeigth = rs.resultSet().getInt(3);
strCidade = rs.resultSet().getString(4);
rs.close();
}

%>
<wml>
<card id=“card1”>
<p>
<input title=“Apelido” value=<%=strNickName%> type=“text” name=“Apelido” format="*M" maxlength=“20” iconid=“3” iconusage=“adjacent”/>
</p>
<go href="#card2"/>
</card>

Ao carregar a página o seguinte erro é apresentado:

500 Internal Server Error
/simMeuPerfil.jsp:

java.lang.NullPointerException
at jrun__simMeuPerfil2ejsp11._jspService(jrun__simMeuPerfil2ejsp11.java:73)
at allaire.jrun.jsp.HttpJSPServlet.service(…/jsp/HttpJSPServlet.java:39)
at allaire.jrun.jsp.JSPServlet.service(…/jsp/JSPServlet.java:228)
at allaire.jrun.jsp.JSPServlet.service(…/jsp/JSPServlet.java:196)
at allaire.jrun.servlet.JRunSE.service(…/servlet/JRunSE.java:1416)
at allaire.jrun.session.JRunSessionService.service(…/session/JRunSessionService.java:1082)
at allaire.jrun.servlet.JRunSE.runServlet(…/servlet/JRunSE.java:1270)
at allaire.jrun.servlet.JRunRequestDispatcher.forward(…/servlet/JRunRequestDispatcher.java:89)
at allaire.jrun.servlet.JRunSE.service(…/servlet/JRunSE.java:1552)
at allaire.jrun.servlet.JRunSE.service(…/servlet/JRunSE.java:1542)
at allaire.jrun.servlet.JvmContext.dispatch(…/servlet/JvmContext.java:364)
at allaire.jrun.jrpp.ProxyEndpoint.run(…/jrpp/ProxyEndpoint.java:388)
at allaire.jrun.ThreadPool.run(…/ThreadPool.java:272)
at allaire.jrun.WorkerThread.run(…/WorkerThread.java:75)

Se alguém puder me ajudar, eu agradeço.
Obrigado!

NullPointerException indica que você está tentando acessar atributos/métodos de um objeto não inicializado.

No seu código vejo dois objetos que podem ser nulos e você não está checando: a session e o resultSet.

Essa mensagem já te pode ajudar um pouco:

Isso quer dizer que em algum lugar do seu servidor o JSPC (compilador de JSP) gerou um programa Java com esse nome (jrun__simMeuPerfil2ejsp11.java). Procure esse arquivo e veja a linha 73 (e adjacências…). O JSPC, ou Jasper, não é nenhum bicho de 7 cabeças - na verdade ele é bem “ingênuo” e preguiçoso; se você escreve um código entre <% e %>, ele normalmente só copia (com casca e tudo) o código para o programa Java que ele gerou.

Pode ser até que você consiga encontrar a linha equivalente no seu código-fonte JSP (nem sempre dá, mas pode ser que você tenha sorte.)