Pra que que eu preciso setar um atributo, que é um parâmetro original da própria requisição?
O que eu digo é: o nome da empresa já veio como parâmetro da requisição. Por que não usar ele diretamente?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Pra que que eu preciso setar um atributo, que é um parâmetro original da própria requisição?
O que eu digo é: o nome da empresa já veio como parâmetro da requisição. Por que não usar ele diretamente?
Update:
Após pensar um pouco, acredito que seja porque eu consigo tratar a requisição antes de despachá-la. Por exemplo, recebi um parâmetro Nome = Alura. Agora posso criar uma empresa (objeto) chamada Alura e enviá-la como atributo no dispatcher. Ao abrir o JSP, eu consegui recuperar a String "nome" da requisição original e também receber o objeto 'Empresa', correspondente à Alura:
O código do JSP em si:
<%@page import="br.com.alura.gerenciador.servlet.*"%>
<%
Empresa nomeEmpresa = (Empresa) request.getAttribute("empresa");
System.out.println(nomeEmpresa.getNome());
String nome = request.getParameter("nome");
System.out.println(nome);
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="./css/estilo.css">
<title>Formulario Cadastrar Empresa</title>
</head>
<body>
<p>Empresa <%=nomeEmpresa.getNome()%> cadastrada com sucesso!</p>
</body>
</html>