Nada no hay manera, tengo la siguiente configuracion:
/WEB-INF/applicationContext.xml
Código XML:
Ver original<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/todomotor" />
<property name="username" value="root" />
<property name="password" value="root" />
</bean>
<bean id="IUsuarioDAO" class="dao.UsuarioDAO">
<property name="dataSource" ref="dataSource"/>
</bean>
</beans>
/WEB-INF/dispatcher-servlet.xml
Código XML:
Ver original<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<context:component-scan base-package="controladores"/>
</beans>
/WEB-INF/web.xml
Código XML:
Ver original<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>Prueba</display-name>
<welcome-file-list>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext*.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
</web-app>
Y luego tengo un controlador de la siguiente manera:
Código JAVA:
Ver original@Controller
@SessionAttributes({"usuario"})
public class Controlador {
ManagerGeneral mg = new ManagerGeneral();
UsuarioVO usuario;
@RequestMapping("index.htm")
public String index
(ModelMap modelo
) { List<UsuarioVO> listaUsuarios=null;
try {
listaUsuarios = mg.getUsuariosRevisores();
// TODO Auto-generated catch block
e.printStackTrace();
}
modelo.addAttribute("listaUsuarios", listaUsuarios);
return Constantes.raiz +"prueba.jsp";
}
}
Interfaz DAO
Código JAVA:
Ver originalpublic interface IUsuarioDAO {
public List
<UsuarioVO
> getUsuariosRevisores
() throws SQLException; public void setDataSource(DataSource dataSource);
}
y su implementacion
Código JAVA:
Ver originalpublic class UsuarioDAO implements IUsuarioDAO{
private DataSource dataSource;
private JdbcTemplate jdbcTemplate;
public void setDataSource(DataSource dataSource) {
// se instancia plantilla con la inyeccion del datasource
this.dataSource = dataSource;
this.jdbcTemplate = new JdbcTemplate(this.dataSource);
}
/**
* Devuelve un listado de los usuarios que pueden realizar funciones de revisor.
* @return
* @throws SQLException
*/
public List
<UsuarioVO
> getUsuariosRevisores
() throws SQLException {
if(this.jdbcTemplate==null){
System.
out.
print("JDBC TEMPLATE IS NULL"); }else{
System.
out.
print("JDBC TEMPLATE IS NOT NULL "+jdbcTemplate
); }
List<UsuarioVO> listaUsuarios = this.jdbcTemplate.query(sql.toString(),
new RowMapper<UsuarioVO>() {
@Override
// Se rellena un bean Articulo a partir de la fila actual
// del ResultSet
UsuarioVO usuario = new UsuarioVO();
usuario.setIdUsuario(rs.getInt("idUsuario"));
usuario.setNombreUsuario(rs.getString("nombreUsuario"));
usuario.setApellidosUsuario(rs.getString("apellidosUsuario"));
usuario.setNickUsuario(rs.getString("nickUsuario"));
usuario.setContrasUsuario(rs.getString("contrasUsuario"));
usuario.setEmailUsuario(rs.getString("emailUsuario"));
usuario.setNivelUsuario(rs.getInt("nivelUsuario"));
return usuario;
}});
return listaUsuarios;
}
}
Me sale un error 404, y nose porque :(
si modifico el bean IUsuarioDAO del applicationContext y lo dejo asi:
Código XML:
Ver original<bean id="IUsuarioDAO" class="dao.UsuarioDAO"/>
La pagina me carga, pero me sale un error NULLPOINTEREXCEPTION porque la variable jdbcTemplate esta a null.
Ya no se que hacer, ¿alguien puede echarme una mano??! Estoy desesperado ya, no consigo avanzar!!