[RESOLVIDO]ERRO de constructor

Pessoal,

esta dando erro nesta linha :

							 listaGruposDoMetodo.put(obj[0], new Dinheiro(obj[1]));

erro :
cannot find symbol
symbol : constructor Dinheiro(java.lang.Object)
location: class br.com.cqa.lims.financeiro.Dinheiro

segue abaixo minha classe

	public GruposDoMetodo listaGruposDoMetodo(Metodo metodo){
		System.out.println("listaGruposDoMetodo ");
		GruposDoMetodo gruposDoMetodo = new GruposDoMetodo();
		Map<Long, Dinheiro> listaGruposDoMetodo = new HashMap <Long, Dinheiro>();
		gruposDoMetodo.setMetodoId(metodo.getId());
		try{
			
				ini = new InitialContext();
				PrecoPorMetodoServiceLocal PrecoPorMetodoBean = (PrecoPorMetodoServiceLocal)ini.lookup("PrecoPorMetodoServiceBean/local");	
				List<Object> objectList =PrecoPorMetodoBean.selecionaprecopormetodo(metodo);
				
						Iterator iterator = objectList.iterator();
						 
						 while(iterator.hasNext()){
							 Object []obj = (Object[])iterator.next();
							 System.out.print(obj[0]);
							 
							 System.out.print(" ");
							 
							 System.out.println(obj[1]);	
							 
							 listaGruposDoMetodo.put(obj[0], new Dinheiro(obj[1]));
						 }
	
			System.out.println("carregou list precopormetodo");			
	 
				
			
			gruposDoMetodo.setListaGrupoDeMetodos(listaGruposDoMetodo);
			
			
			return gruposDoMetodo;
		} catch (Exception e){
			System.out.println("Erro ao ler GruposDoMetodo para o metodo " + metodo.getNome() + ".");
			return gruposDoMetodo;
		} 
		
	}


classe dinheiro 

@Embeddable
public class Dinheiro implements Serializable {

	private static final long serialVersionUID = 153086301626156806L;

	private static final String MASK = "#,##0.00";

	private BigDecimal valor;

	public Dinheiro() {
		this.valor = new BigDecimal(0);
	}

	public Dinheiro(BigDecimal valor) {
		this.valor = valor;
	}

	public Dinheiro(String valor) {
		DecimalFormat formatter = new DecimalFormat(MASK);
		formatter.setDecimalFormatSymbols(new DecimalFormatSymbols(new Locale(
		        "pt", "BR")));
		try {
			this.valor = new BigDecimal(formatter.parse(valor).doubleValue());
		} catch (ParseException e) {
			throw new RuntimeException(e);
		}
	}

	public Dinheiro(double valor) {
		this.valor = new BigDecimal(valor);
	}

	public BigDecimal getValor() {
		return valor;
	}

	public double doubleValue() {
		return valor.doubleValue();
	}

	@SuppressWarnings("unused")
	private BigDecimal setValor(BigDecimal valor) {
		return this.valor = valor;
	}

	public Dinheiro soma(Dinheiro dinheiro) {
		return new Dinheiro(this.valor.add(dinheiro.valor));
	}

	public Dinheiro subtrai(Dinheiro dinheiro) {
		return new Dinheiro(this.valor.add(dinheiro.valor.negate()));
	}

	public Dinheiro multiplicar(double multiplicador) {
		BigDecimal aux = new BigDecimal(multiplicador);
		return new Dinheiro(aux.multiply(this.valor));
	}

	public Dinheiro divide(double divisor) {
		BigDecimal aux = new BigDecimal(divisor);
		return new Dinheiro(this.valor.divide(aux, 2, RoundingMode.HALF_EVEN));
    }

	@Override
	public String toString() {
		DecimalFormat formatter = new DecimalFormat(MASK);
		formatter.setDecimalFormatSymbols(new DecimalFormatSymbols(new Locale(
		        "pt", "BR")));
		return formatter.format(valor);
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result
		        + ((toString() == null) ? 0 : toString().hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		final Dinheiro other = (Dinheiro) obj;
		if (toString() == null) {
			if (other.toString() != null)
				return false;
		} else if (!toString().equals(other.toString()))
			return false;
		return true;
	}

}

A classe Dinheiro não tem nehum construtor que receba um Object.

Ou você cria um construtor que receba um Object ou faz um cast para os tipos BigDecimal ou String.

Pessoal,

Resolvi da seguinte forma :

							 int vgrupo =  (Integer) obj[0];
							 long vgrupoaux = vgrupo;
							 
							 Double vdinheiro = (Double) obj[1];
							 

							 listaGruposDoMetodo.put(vgrupoaux, new Dinheiro (vdinheiro));