Flavu  
            
           
           
          
              
                Agosto 17, 2014,  3:05pm
               
               
          #1 
           
         
        
          Boa tarde !!! 
Estou tentando fazer um exercício de Ajax da apostila fj21 mas, não estou conseguindo alterar o conteúdo via Ajax.Teria que mudar o conteúdo de Finaliza Agora para Finalizado na Lista. 
Se alguém puder me dar um força. 
Fico grato. 
No Spring-Context.xml coloquei a seguinte anotação
 <mvc:default-servlet-handler/> 
Minha Lista
[code] 
<%@taglib  uri=“http://java.sun.com/jsp/jstl/core ” prefix=“c”%> 
<%@taglib  uri=“http://java.sun.com/jsp/jstl/fmt ” prefix=“fmt”%> 
<%@ page language=“java” contentType="text/html; charset=UTF-8" 
pageEncoding=“UTF-8”%>
Insert title here
	
	
	
	
Criar nova tarefa 
	
	
	
		
			Id 
			Descrição 
			Finalizado ? 
			Data de Finalização 
			Remover 
			Alterar 
		 
		
			
				${tarefa.id} 
				${tarefa.descricao} 
				
					Finalizado 
				
				
				    
					
							Finalizar Agora !
							 
							 
				
				 
			<td><a href="removeTarefa?id=${tarefa.id}">Remover</a></td>
			<td><a href="mostraTarefa?id=${tarefa.id}">Alterar</a></td>
		</tr>
	</c:forEach>
</table>
 
[/code]
Classe Controller 
[code]
@Controller
public class TarefasController {
private final JdbcTarefaDao dao;
@Autowired
public TarefasController(JdbcTarefaDao dao) {
	this.dao = dao;
}
@RequestMapping("novaTarefa")
public String form() {
	return "tarefa/formulario";
}
@RequestMapping("finalizaTarefa")
public void finaliza(Long id,HttpServletResponse response){
	dao.finaliza(id);
	//model.addAttribute("tarefa",dao.buscaPorId(id));
	//return "tarfa/finaliza";
	response.setStatus(200);
	
}
 
} 
[/code] 
Classe DAO
@Repository
public class JdbcTarefaDao {
	private final Connection connection;
    
	@Autowired
	public JdbcTarefaDao(DataSource dataSource) {
		try {
			this.connection =dataSource.getConnection();
		} catch (SQLException e) {
			throw new RuntimeException(e);
		}
	}
	public void finaliza(Long id) {
		if (id == null) {
			throw new IllegalStateException("Id da tarefa não deve ser nula.");
		}
		String sql = "update tarefas set finalizado = ?, dataFinalizacao = ? where id = ?";
		PreparedStatement stmt;
		try {
			stmt = connection.prepareStatement(sql);
			stmt.setBoolean(1, true);
			stmt.setDate(2, new Date(Calendar.getInstance().getTimeInMillis()));
			stmt.setLong(3, id);
			stmt.execute();
		} catch (SQLException e) {
			throw new RuntimeException(e);
		}
	}
	
}