Erro no construtor

pessoal , estou com problema no construtor
erro :

C:\Users\evandro.abreu\workspace\cqa\cqalims\lims\trunk\ejbs\analise-ejb\src\mai
n\java\br\com\cqa\lims\analise\AnaliseContratada.java:[61,2] cannot find symbol
symbol : constructor AnaliseContratada(br.com.cqa.lims.analise.execucao.Vwanali
se,br.com.cqa.lims.analise.unidade.Unidade)
location: class br.com.cqa.lims.analise.AnaliseContratada

	public AnaliseContratada(Vwanalise analise) {
		this(analise, analise.getUnidadepadraoId());
	}

segue abaixo minha classe completa :

package br.com.cqa.lims.analise;

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.ManyToMany;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;

import br.com.cqa.lims.analise.execucao.Amostra;
import br.com.cqa.lims.analise.execucao.ExecucaoAnalise;
import br.com.cqa.lims.analise.unidade.ConversaoInvalidaException;
import br.com.cqa.lims.analise.unidade.Unidade;
import br.com.cqa.lims.analise.unidade.UnidadeQuantitativa;
import br.com.cqa.lims.analise.unidade.ValorUnidade;
import br.com.cqa.lims.entity.Entidade;
import br.com.cqa.lims.exception.LimsRuntimeException;
import br.com.cqa.lims.financeiro.Dinheiro;
import br.com.cqa.lims.funcionario.Departamento;
import br.com.cqa.lims.util.I18NBigDecimal;
import br.com.cqa.lims.visitor.Visitor;
import br.com.jsigner.annotations.Domain;

import br.com.cqa.lims.analise.execucao.Vwanalise;

@Entity
@Domain( { "Analise", "Orcamento", "ExecucaoAnalise" })
public class AnaliseContratada extends Entidade {

	private static final long serialVersionUID = -4124578908606135742L;

	@OneToOne(fetch = FetchType.EAGER)
	private Analise analise;

	@OneToOne(fetch = FetchType.EAGER)
	private Unidade unidade;

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
	private List<ExecucaoAnalise> execucoes = new ArrayList<ExecucaoAnalise>();

	/**
	 * Especificacoes que esta analise esta seguindo
	 */
	@ManyToMany
	private List<AnaliseEspecificada> analisesEspecificadas = new ArrayList<AnaliseEspecificada>();

	protected AnaliseContratada() {
	}

/*	public AnaliseContratada(Analise analise) {	
		this(analise, analise.getUnidadePadrao());
	}
	*/
	
	public AnaliseContratada(Vwanalise analise) {
		this(analise, analise.getUnidadepadraoId());

	}
	public AnaliseContratada(Analise analise, Unidade unidade) {
		this.analise = analise;
		this.unidade = unidade;
	}

	

	public boolean especificadaPor(AnaliseEspecificada analiseEspecificada) {
		return this.analisesEspecificadas.contains(analiseEspecificada);
	}

	public void removerEspecificacao(AnaliseEspecificada analiseEspecificada) {
		this.analisesEspecificadas.remove(analiseEspecificada);
	}

	public List<AnaliseEspecificada> getAnalisesEspecificadas() {
		return analisesEspecificadas;
	}

	public AnaliseEspecificada getPrimeiraAnaliseEspecificada() {
		if (this.analisesEspecificadas.size() == 0) {
			return null;
		}
		return this.analisesEspecificadas.get(0);
	}

	public void adicionarEspecificacao(AnaliseEspecificada analiseEspecificada) {
		if (!analisesEspecificadas.contains(analiseEspecificada)) {
			this.analisesEspecificadas.add(analiseEspecificada);
		}
	}

	public boolean isEspecificada() {
		return !this.analisesEspecificadas.isEmpty();
	}

	public List<ExecucaoAnalise> getExecucoes() {
		return execucoes;
	}

	public void setExecucoes(List<ExecucaoAnalise> resultados) {
		this.execucoes = resultados;
	}

	public boolean isExecucaoAprovada(Amostra amostra) {
		ExecucaoAnalise execucao = this.getExecucao(amostra);
		return execucao == null || execucao.isResultadoAprovado();
	}

	public ExecucaoAnalise getExecucao(Amostra amostra) {
		for (ExecucaoAnalise execucaoAnalise : execucoes) {
			if (execucaoAnalise.getAmostra().equals(amostra)) {
				return execucaoAnalise;
			}
		}
		return null;
	}

	public ExecucaoAnalise criarExecucao(Amostra amostra) {
		ExecucaoAnalise execucaoAnalise = new ExecucaoAnalise(this, amostra);
		return execucaoAnalise;
	}

	public void adicionaExecucao(ExecucaoAnalise execucaoAnalise) {
		this.execucoes.add(execucaoAnalise);
	}

	public boolean possuePeloMenosUmEnsaioComExecucaoIniciada() {
		for (ExecucaoAnalise execucaoAnalise : this.execucoes) {
			if (execucaoAnalise.isIniciada()) {
				return true;
			}
		}
		return false;
	}

	public void voltarExecucoesParaAprovacao() {
		for (ExecucaoAnalise execucaoAnalise : execucoes) {
			if (execucaoAnalise.isResultadoAprovado()) {
				execucaoAnalise.voltarParaAprovacao();
			}
		}
	}

	public Unidade getUnidade() {
		return unidade;
	}

	public void setUnidade(Unidade unidade) {
		this.unidade = unidade;
	}

	public void accept(Visitor<AnaliseContratada> visitor) {
		visitor.visit(this);
	}

	public void setAnalisesEspecificadas(
			List<AnaliseEspecificada> analisesEspecificadas) {
		this.analisesEspecificadas = analisesEspecificadas;
	}

	public boolean isConcorrente(AnaliseContratada outra) {
		return this.analise.equals(outra.analise)
				&& this.unidade.equals(outra.unidade);
	}

	/**
	 * Delega a obten&ccedil;&atilde;o do
	 * {@link br.com.cqa.lims.funcionario.Departamento} para a
	 * {@link br.com.cqa.lims.analise.Analise} encapsulada
	 *
	 * @see br.com.cqa.lims.analise.Analise#getDepartamento()
	 */
	public Departamento getDepartamento() {
		return this.analise.getDepartamento();
	}

	/**
	 * Delega a obten&ccedil;&atilde;o do {@link br.com.cqa.lims.analise.Ensaio}
	 * para a {@link br.com.cqa.lims.analise.Analise} encapsulada
	 *
	 * @see br.com.cqa.lims.analise.Analise#getEnsaio()
	 */
	public Ensaio getEnsaio() {
		return this.analise.getEnsaio();
	}

	public List<Especificacao> getEspecificacoes() {
		Set<Especificacao> especificacoes = new HashSet<Especificacao>();

		for (AnaliseEspecificada analiseEspecificada : analisesEspecificadas) {
			especificacoes.add(analiseEspecificada.getEspecificacao());
		}

		return new ArrayList<Especificacao>(especificacoes);
	}

	/**
	 * Delega a obten&ccedil;&atilde;o da informa&ccedil;&atilde;o de <i>LD</i>
	 * para a {@link br.com.cqa.lims.analise.Analise} encapsulada e aplica o
	 * convers&atilde;o de unidades
	 *
	 * @return {@link I18NBigDecimal} gerado a partir do <i>LD</i> convertido na
	 *         unidade contratada
	 *
	 * @throws LimsRuntimeException
	 *             caso haja erro de convers&atilde;o de unidades (gerada por um
	 *             {@link ConversaoInvalidaException})
	 *
	 * @see br.com.cqa.lims.analise.Analise#getLd()
	 */
	public I18NBigDecimal getLd() throws LimsRuntimeException {
		if (this.analise.getLd() == null) {
			return null;
		}
		if (!this.analise.getUnidadePadrao().isConversivel(this.unidade)) {
			return analise.getLd();
		}

		try {
			ValorUnidade valor = new ValorUnidade(
					(UnidadeQuantitativa) this.analise.getUnidadePadrao(),
					this.analise.getLd());
			return valor.getValorConvertido((UnidadeQuantitativa) this.unidade);
		} catch (ConversaoInvalidaException e) {
			return analise.getLd();
		}
	}

	/**
	 * Delega a obten&ccedil;&atilde;o da informa&ccedil;&atilde;o de <i>LQ</i>
	 * para a {@link br.com.cqa.lims.analise.Analise} encapsulada e aplica o
	 * convers&atilde;o de unidades
	 *
	 * @return {@link I18NBigDecimal} gerado a partir do <i>LQ</i> convertido na
	 *         unidade contratada
	 *
	 * @throws LimsRuntimeException
	 *             caso haja erro de convers&atilde;o de unidades (gerada por um
	 *             {@link ConversaoInvalidaException})
	 *
	 * @see br.com.cqa.lims.analise.Analise#getLq()
	 */
	public I18NBigDecimal getLq() throws LimsRuntimeException {
		if (this.analise.getLq() == null) {
			return null;
		}
		if (!this.analise.getUnidadePadrao().isConversivel(this.unidade)) {
			return analise.getLq();
		}
		try {
			ValorUnidade valor = new ValorUnidade(
					(UnidadeQuantitativa) this.analise.getUnidadePadrao(),
					this.analise.getLq());
			return valor.getValorConvertido((UnidadeQuantitativa) this.unidade);
		} catch (ConversaoInvalidaException e) {
			return this.analise.getLq();
		}
	}

	/**
	 * Delega a obten&ccedil;&atilde;o do {@link br.com.cqa.lims.analise.Matriz}
	 * para a {@link br.com.cqa.lims.analise.Analise} encapsulada
	 *
	 * @see br.com.cqa.lims.analise.Analise#getMatriz()
	 */
	public Matriz getMatriz() {
		return this.analise.getMatriz();
	}

	/**
	 * Delega a obten&ccedil;&atilde;o do {@link br.com.cqa.lims.analise.Metodo}
	 * para a {@link br.com.cqa.lims.analise.Analise} encapsulada
	 *
	 * @see br.com.cqa.lims.analise.Analise#getMetodo()
	 */
	public Metodo getMetodo() {
		return this.analise.getMetodo();
	}

	/**
	 * Delega a obten&ccedil;&atilde;o da informa&ccedil;&atilde;o de prazo para
	 * a {@link br.com.cqa.lims.analise.Analise} encapsulada
	 *
	 * @see br.com.cqa.lims.analise.Analise#getPrazo()
	 */
	public int getPrazo() {
		return this.analise.getPrazo();
	}

	/**
	 * Delega a obten&ccedil;&atilde;o da informa&ccedil;&atilde;o de
	 * pre&ccedil;o para a {@link br.com.cqa.lims.analise.Analise} encapsulada
	 *
	 * @see br.com.cqa.lims.analise.Analise#getPreco()
	 */
	public Dinheiro getPreco() {
		return this.analise.getPreco();
	}

	public AnaliseContratada clone() {
		AnaliseContratada result = new AnaliseContratada();
		result.setAnalise(this.analise);
		result.setUnidade(this.unidade);
		return result;
	}

	/**
	 * @deprecated Este m&eacute;todo deveria ser <b><code>protected</code></b>.<br>
	 *             &Eacute; utilizado em alguns testes. <b>N&Atilde;O deve ser
	 *             mais utilizado.</b>
	 */
	public Analise getAnalise() {
		return analise;
	}

	protected void setAnalise(Analise analise) {
		this.analise = analise;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = super.hashCode();
		result = prime * result + ((id == null) ? 0 : id.hashCode());
		result = prime * result + ((analise == null) ? 0 : analise.hashCode());
		result = prime * result + ((unidade == null) ? 0 : unidade.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (!super.equals(obj))
			return false;
		if (getClass() != obj.getClass())
			return false;
		AnaliseContratada other = (AnaliseContratada) obj;
		if (id != null && other.id != null) {
			return id.equals(other.id);
		} else {
			if (analise == null) {
				if (other.analise != null)
					return false;
			} else if (!analise.equals(other.analise))
				return false;
			if (unidade == null) {
				if (other.unidade != null)
					return false;
			} else if (!unidade.equals(other.unidade))
				return false;

			return true;
		}
	}

}

Detalhe a minha classe Vwanalise é uma view do meu banco de dados.

Não deveria ser assim?

public AnaliseContratada(Vwanalise analise) { super(analise, analise.getUnidadepadraoId()); }

tendi fazer da forma acima. …e deu o seguinte erro :

C:\Users\evandro.abreu\workspace\cqa\cqalims\lims\trunk\ejbs\analise-ejb\src\mai
n\java\br\com\cqa\lims\analise\AnaliseContratada.java:[60,2] cannot find symbol
symbol : constructor Entidade(br.com.cqa.lims.analise.Analise,br.com.cqa.lims.a
nalise.unidade.Unidade)
location: class br.com.cqa.lims.entity.Entidade

me parece q vc não tem o tal construtor na classe Entidade