Problemas com tablibs

bom galera criei uma tag combobox para meu projeto, porém a algo estranho nela.

quando eu salvo um objeto Cidade, referenciando o estado, a combobox não localiza mais o estado, fica como null, tanto o value como o texto. alguem já passou por isso? na primeira execussão a combo estava perfeita, dai adicionei duas cidades, de diferentes estados e os estados sumiram da combobox

ela usa reflection para formar os campos.
parte do código da tag é esse.


String combo = "<select name='" + this.name + "'";
		if(!enable){
			combo += " disabled='disabled'";
		}
		if(onChange != null && !onChange.equals("")){
			combo += " onchange=\"return "+onChange+"\"";
		}
		combo += ">";
		try {
			Class clazz = Class.forName(className);
			for(Object o : list){
				//Retreive de attributes
				//Nosso Id vem da superclasse então camamos o field Id da superclasse
				Class superClass = clazz.getSuperclass();
				Field fieldId = superClass.getDeclaredField(optionId);
				Field fieldValue = clazz.getDeclaredField(optionValue);
				fieldId.setAccessible(true);
				fieldValue.setAccessible(true);
				String option = "<option value='"+fieldId.get(o)+"'";
				if(selectedOption != null && !selectedOption.equals("")){
					if(selectedOption.equals(fieldId.get(o))){
						option += " selected='selected'";
					}
				}
				option += ">";
				option += fieldValue.get(o);
				option += "</option>";
				combo += option;
			}
		combo += " </select>";
		out.write(combo);
		}catch .....

alguem tem alguma ideia do q pode ser isso?

agradeço a atenção