Boa Tarde
Estou fazendo uma aplicação no Netbeans, uma aplicação web simples, sem adicionar framework pelo assistente, mas adicionando os jar do Struts 2
manualmente. Crie o web.xml e adicionei o filter-servlet necessário para aplicação que estou fazendo, seguindo o tutorial HelloWord do site do Struts Apache.
O arquivo struts.xml eu crio a partir do assistente do Netbeans(New File -> Struts2 -> Struts2 Configuration File) e coloco na pasta src/conf.
Então sigo o tutorial do site criando o index.jsp e olaMundo.jsp(HelloWord.jsp) no entato quando clico no link do index.jsp:
<p><a href="<s:url action='hello'/>">Ola Mundo</a></p>
Retorna java.lang.NullPointerException
segue os codigos jsp com o javaBean e a Action:
index.jsp:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Aplicação Struts simples</title>
</head>
<body>
<h1>Bem Vindo Struts 2!</h1>
<p><a href="<s:url action='hello'/>">Ola Mundo</a></p>
</body>
</html>
olaMundo.jsp(HelloWord.jsp do tutorial do site struts):
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Aplicação Struts simples</title>
</head>
<body>
<h1>Bem Vindo Struts 2!</h1>
<p><s:property value="texto.message"/></p>
</body>
</html>
web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
struts.xml:
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<!-- Author: sidmar.rodrigues -->
<struts>
<!-- Add your configuration elements here -->
<constant name="struts.devMode" value="true"/>
<package name="basicstruts2" extends="struts-default">
<action name="index">
<result>/index.jsp</result>
</action>
<action name="hello" class="br.com.iddeia.action.OlaMundoAction" method="execute">
<result name="sucess">/olaMundo.jsp</result>
</action>
</package>
</struts>
Mensagem.java:(modelo)
public class Mensagem {
private String message;
public Mensagem() {
setMessage("Olá usário do STRUTS 2");
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
OlaMundoAction.java:
public class OlaMundoAction extends ActionSupport{
private static final long serialVersionUID = 1L;
private Mensagem texto;
@Override
public String execute() throws Exception{
texto = new Mensagem();
return SUCCESS;
}
public Mensagem getMensagem() {
return texto;
}
public void setMensagem(Mensagem mensagem) {
this.texto = mensagem;
}
}
Eu revi todo o código eu não consigo entender porque ocorre essa Exception