No vídeo, o instrutor trocou o código
codigo1
<%
//scriplet
String nomeEmpresa = (String)request.getAttribute("empresa");
System.out.println(nomeEmpresa);
%>
<html>
<body>
Empresa ${ 3 + 3 } cadastrada com sucesso!
</body>
</html>
por
(codigo2)
<html>
<body>
Empresa ${ empresa } cadastrada com sucesso!
</body>
</html>
e deixou de usar Scriptlet.
Porém, no código2, em nenhuma linha estamos definindo a variável empresa, pegando da requisição.
Por que não é necessário usar
(String)request.getAttribute("empresa");
? A expression language pega direto da requisição?
E onde está armazenada essa variável?