Boa noite, estou tentando implementar minha primeira displaytag, li o tutorial do HotWork, copiei os jars de instalação para a pasta do projeto porém está me retornando um erro. Gostaria de ajuda pra saber no que estou errando.
Este é o código da JSP que deveria gerar a tabela:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://displaytag.sf.net" prefix="display" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ page import="br.com.cereaissul.DAO.*, br.com.cereaissul.contrato.*, java.util.*" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<% ContratosDao dao = new ContratosDao();
List<Contrato> contratos = dao.getLista();
%>
<display:table name="contratos">
<display:column property="id"/>
<display:column property="nomeProdutor"/>
<display:column property="produto"/>
<display:column property="quantidadeKg"/>
<display:column property="dataNegociacao"/>
<display:column property="valor"/>
</display:table>
</body>
</html>
Agora o código do JavaBean:
package br.com.cereaissul.contrato;
import java.util.Calendar;
public class Contrato {
private long id;
private String nomeProdutor;
private String produto;
private long quantidadeKg;
private Calendar dataNegociacao;
private double valor;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getNomeProdutor() {
return nomeProdutor;
}
public void setNomeProdutor(String nomeProdutor) {
this.nomeProdutor = nomeProdutor;
}
public String getProduto() {
return produto;
}
public void setProduto(String produto) {
this.produto = produto;
}
public long getQuantidadeKg() {
return quantidadeKg;
}
public void setQuantidadeKg(long quantidadeKg) {
this.quantidadeKg = quantidadeKg;
}
public Calendar getDataNegociacao() {
return dataNegociacao;
}
public void setDataNegociacao(Calendar dataNegociacao) {
this.dataNegociacao = dataNegociacao;
}
public double getValor() {
return valor;
}
public void setValor(double valor) {
this.valor = valor;
}
}
E o erro retornado:
type Exception report
message java.lang.NoClassDefFoundError: org/apache/commons/lang/UnhandledException
description The server encountered an internal error that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: java.lang.NoClassDefFoundError: org/apache/commons/lang/UnhandledException
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:348)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
root cause
java.lang.NoClassDefFoundError: org/apache/commons/lang/UnhandledException
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
java.lang.Class.getConstructor0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
com.sun.beans.finder.InstanceFinder.instantiate(Unknown Source)
com.sun.beans.finder.InstanceFinder.find(Unknown Source)
java.beans.Introspector.findExplicitBeanInfo(Unknown Source)
java.beans.Introspector.<init>(Unknown Source)
java.beans.Introspector.getBeanInfo(Unknown Source)
org.apache.jasper.compiler.Generator$TagHandlerInfo.<init>(Generator.java:4044)
org.apache.jasper.compiler.Generator$GenerateVisitor.getTagHandlerInfo(Generator.java:2289)
org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1717)
org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1553)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2392)
org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2444)
org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2450)
org.apache.jasper.compiler.Node$Root.accept(Node.java:474)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2392)
org.apache.jasper.compiler.Generator.generate(Generator.java:3591)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:251)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:374)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:341)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:660)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:364)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
root cause
java.lang.ClassNotFoundException: org.apache.commons.lang.UnhandledException
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1892)
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1735)
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
java.lang.Class.getConstructor0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
com.sun.beans.finder.InstanceFinder.instantiate(Unknown Source)
com.sun.beans.finder.InstanceFinder.find(Unknown Source)
java.beans.Introspector.findExplicitBeanInfo(Unknown Source)
java.beans.Introspector.<init>(Unknown Source)
java.beans.Introspector.getBeanInfo(Unknown Source)
org.apache.jasper.compiler.Generator$TagHandlerInfo.<init>(Generator.java:4044)
org.apache.jasper.compiler.Generator$GenerateVisitor.getTagHandlerInfo(Generator.java:2289)
org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1717)
org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1553)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2392)
org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2444)
org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2450)
org.apache.jasper.compiler.Node$Root.accept(Node.java:474)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2392)
org.apache.jasper.compiler.Generator.generate(Generator.java:3591)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:251)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:374)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:341)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:660)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:364)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52