Duvida basica sobre JSP

Bom dia…

Estou começando a aprender jsp e fiz uma página simples para enviar dados, um servlet que recebe esses dados e faz as verificações, e um javabean que retornar os dados para um segunda página jsp.

nesse segundo jsp que recebe os dados estão ocorrendo erros que não consigo corrigir segue o código:

<%@page contentType=“text/html”%>
<%@page pageEncoding=“UTF-8”%>

<html>
<head>
<meta http-equiv=“Content-Type” content=“text/html; charset=UTF-8”>
<title>Recebendo</title>
</head>

&lt;%!String nome, idade, empresa; %&gt;
&lt;body&gt;

   
&lt;jsp:useBean id="receber" scope="page" class="/WebApplication1/Tratamento_Bean"/&gt;

    &lt;form method="get"&gt;
        &lt;input type="text" name="Nome" value="&lt;%=receber.getNome()%&gt;"&gt;
        &lt;input type="text" name="Idade" value="&lt;%=receber.getIdade()%&gt;"&gt;
        &lt;input type="text" name="Empresa" value="&lt;%=receber.getEmpresa()%&gt;"&gt;
    &lt;/form&gt;
&lt;/body&gt;

</html>

o programa excuta um erro nesse jsp, ele não recebe os dados e não aparece a página na tela.

Se puderem me ajudar fico grato

[]'s

Esse class, é o nome totalmente qualificado de uma classe, no formato:

pacote.subpacote.NomeDaClasse

Fiz umas modificações para importar o java_bean

<%@page contentType=“text/html” import=“diego.Tratamento_Bean”%>
<%@page pageEncoding=“UTF-8”%>

<html>
<head>
<meta http-equiv=“Content-Type” content=“text/html; charset=UTF-8”>
<title>Recebendo</title>
</head>

&lt;body&gt;

&lt;% Tratamento_Bean bean = (TratamentoBean) request.getParameter("Tratamento_Bean"); %&gt;

    &lt;form method="get"&gt;
        &lt;input type="text" name="Nome" value="&lt;%=bean.getNome()%&gt;"&gt;
        &lt;input type="text" name="Idade" value="&lt;%=bean.getIdade()%&gt;"&gt;
        &lt;input type="text" name="Empresa" value="&lt;%=bean.getEmpresa()%&gt;"&gt;
    &lt;/form&gt;
&lt;/body&gt;

</html>

só que quando compilo indica um erro na linha

&lt;% Tratamento_Bean bean = (TratamentoBean) request.getParameter("Tratamento_Bean"); %&gt;

indicando que ele não encontra essa classe.

O nome da classe é Tratamento_Bean ou TratamentoBean? Você está usando os dois…

Eu modifiquei, para o nome correto da classe porem o erro ainda continua, ele não encontra a referencia do Tratamento_Bean, mesmo tendo sido importado

E isso está certo? Posta a declaração da classe aí…

o JB está assim

package diego;
public class Tratamento_Bean

o servlet assim:

package diego;
import java.io.;
import javax.servlet.
;
import javax.servlet.http.*;

public class Tratamento extends HttpServlet

e pra passar os valores do servlet para o jsp que recebera valores estou fazendo assim:

this.getServletConfig().getServletContext().setAttribute(“Tratamento_Bean”, dado);

request.getRequestDispatcher("/Receber.jsp").forward(request,response);

Cara acho que o erro pode tá nisso aqui:

&lt;jsp&#58;useBean id=&quot;receber&quot; scope=&quot;page&quot; class=&quot;/WebApplication1/Tratamento_Bean&quot;/&gt;

Primeiramente muda o class para o nome da classe juntamente com o pacote, como o jairelton disse e depois muda o scope para “application”, ficando assim:

&lt;jsp&#58;useBean id=&quot;receber&quot; scope=&quot;application&quot; class=&quot;diego.Tratamento_Bean&quot;/&gt;

Eu falei pra você mudar o escopo para application porque você está setando a variável no contexto da aplicação nesta linha. Oberserve também que você está setando como “Tratamento_Bean” e recebendo com o nome “receber”, os nomes tem que ser iguais por isso mudei esta linha para “receber”:

this.getServletConfig&#40;&#41;.getServletContext&#40;&#41;.setAttribute&#40;&quot;receber&quot;, dado&#41;; 

Testa aí, acho que isso resolve.

  • Obs.: Tenta usar os code conventions da Sun, o nome da sua classe ficaria TratamentoBean ao invés de Tratamento_Bean.