Problemas com relatório

Oi Pessoal , estou tentando chamar um relatório que fiz com o iReport, mas quando executo o código gera alguns erros

ja estou tentando gerar esse relatório pelo java faz tempo e não consigo

se alguém tiver algum exemplo ou souber me explicar os erros vai ajudar muito

Se poderem me ajudar agradeço muito .

import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.HashMap;

import javax.swing.JOptionPane;

import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;

public class repositorioProduto{
	
	public repositorioProduto() {}
	
	public void inserir(produto prod) throws ExcRepositorio{
		String desc = prod.getDescricao();
		double preco = prod.getpreco();
		String SQL = "insert into tb_Produtos (descricao, preco) values ('" + desc + "', " + preco + ")";
		
		Connection conn = null;
		Statement stat = null;
		try {
			conn = gConexao.getConexao();
			stat = conn.createStatement();
			stat.executeUpdate(SQL);
		} catch (SQLException e) {
			throw new ExcRepositorio("Erro na conexão ao inserir: " + e.getMessage());
		} finally {
			if (stat != null) {
				try {
					stat.close();
				} catch (SQLException e) {
					throw new ExcRepositorio("Erro ao fechar conexão: " + e.getMessage());
				}								
			}
		}	
	}
	@SuppressWarnings("unchecked")
	public JasperPrint gerar() throws ExcRepositorio{
		JasperPrint rel = null;
		try {
			Connection con = gConexao.getConexao();
			HashMap map = new HashMap();
			String arquivoJasper = "relatorio.jasper";
			rel = JasperFillManager.fillReport(arquivoJasper, map, con);
		} catch (JRException e) {
			JOptionPane.showMessageDialog(null,e.getMessage());
		}
		return rel;
	}
}

gera os seguites erros :

Exception in thread “main” java.lang.NoClassDefFoundError: Lorg/apache/commons/logging/Log;
at java.lang.Class.getDeclaredFields0(Native Method)
at java.lang.Class.privateGetDeclaredFields(Unknown Source)
at java.lang.Class.getDeclaredField(Unknown Source)
at java.io.ObjectStreamClass.getDeclaredSUID(Unknown Source)
at java.io.ObjectStreamClass.access$700(Unknown Source)
at java.io.ObjectStreamClass$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.io.ObjectStreamClass.(Unknown Source)
at java.io.ObjectStreamClass.lookup(Unknown Source)
at java.io.ObjectStreamClass.initNonProxy(Unknown Source)
at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
at java.io.ObjectInputStream.readClassDesc(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
at java.io.ObjectInputStream.readSerialData(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readArray(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
at java.io.ObjectInputStream.readSerialData(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
at java.io.ObjectInputStream.readSerialData(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:94)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:247)
at repositorioProduto.gerar(repositorioProduto.java:46)
at principal.main(principal.java:20)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.Log
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at sun.misc.Launcher$ExtClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
… 33 more

o Arquivo relatorio.jasper estar no meu projeto , não está dentro da pasta src junto com as classes, só esta na pasta raiz mesmo na primeira pasta do projeto junto com o .classpath e o .project

por favor pessoal preciso de uma ajuda
abraço.

Aew!!!
Acho que esta faltando o jar common logging…

http://commons.apache.org/downloads/download_logging.cgi

Valeu Muito obrigado

Problema resolvido

obrigado mesmo

Abraços.