Estou começando c/ java e tive um prolema causado por java.lang.ArrayStoreException.
A linha referente a esse erro é a seguinte: retVal.getCbo()[index++] = new Cbo(codigo.longValue(), descricao, (String[])sinonimos.toArray();new String[0])
Aqui segue meu código:
public br.com.bancopecunia.administracao.cbo.service.Cbos carregar() throws java.rmi.RemoteException {
try {
Cbos retVal = new Cbos();
retVal.setCbo(new Cbo[AdministracaoCBOServiceFactory.getInstance().create().carregar().size()]);
int index = 0;
Iterator i = AdministracaoCBOServiceFactory.getInstance().create().carregar().iterator();
while (i.hasNext()) {
br.com.bancopecunia.common.adt.cbo.CBO cbo = (br.com.bancopecunia.common.adt.cbo.CBO) (i.next());
Long codigo = cbo.getCodigo();
String descricao = cbo.getDescricao();
Collection sinonimos = null;
for (int j = 0; j < cbo.getSinonimos().size(); j++) {
sinonimos = new ArrayList(cbo.getSinonimos().size());
sinonimos.add(cbo.getSinonimos());
}
retVal.getCbo()[index++] = new Cbo(codigo.longValue(), descricao, (String[])sinonimos.toArray(new String[0])); }
return retVal;
}catch (Exception ex) {
throw tratar(ex);
}
}
O construtor Cbo é do seguinte tipo: Cbo(long, java.lang.String, java.lang.String[]), por isso coloquei dessa maneira (String[])sinonimos.toArray(, se alguém poder me ajudar c/ esse erro, ou me passar outra maneira de realizar essa conversão agradeço.new String[0])