try {
Connection con = DbHandler.getConnection();
con.setAutoCommit(false);
//Spara och ladda attribut
CountryBean country1 = BeanFactory.getCountry("bi");
country1.setAttribute("name1", "value1");
country1.create(con);
CountryBean country2 = (CountryBean)CountryFinderBase.findByPrimaryKey(con, new CountryKey(country1.getId()));
assertEquals("Countryna skall vara lika", country1, country2);
assertEquals("Attributen skall vara lika", country1.getAttribute("name1"), country2.getAttribute("name1"));
//Radera attribut
country2.removeAttribute("name1");
assertNull("Attributet skall inte finnas", country2.getAttribute("name1"));
country2.store(con);
country1 = (CountryBean)CountryFinderBase.findByPrimaryKey(con, new CountryKey(country2.getId()));
assertNull("Attributet skall inte finnas", country2.getAttribute("name1"));
//Uppdatera attribut
country1.setAttribute("name1", "value1");
country1.store(con);
country1.setAttribute("name1", "newvalue1");
country1.store(con);
country2 = (CountryBean)CountryFinderBase.findByPrimaryKey(con, new CountryKey(country1.getId()));
assertEquals("Attributet skall ha nytt v�rde", "newvalue1", country2.getAttribute("name1"));
country2.removeAllAttributes();
country2.store(con);
//Skapa tre attribut, d�refter uppdatera ett och radera ett
assertTrue("Det skall inte finnas n�gra attribut", country2.getAttributes().isEmpty());
country2.setAttribute("name1", "value1");
country2.setAttribute("name2", "value2");
country2.setAttribute("name3", "value3");
country2.store(con);
country2.setAttribute("name1", "newvalue1");
country2.removeAttribute("name2");
country2.setAttribute("name3", "");
assertEquals("Det skall finnas tv� attribut", 2, country2.getAttributes().size());
country2.store(con);
country1 = (CountryBean)CountryFinderBase.findByPrimaryKey(con, new CountryKey(country2.getId()));
assertEquals("Det skall finnas ett attribut", 1, country1.getAttributes().size());
assertEquals("Fel attributv�rde", "newvalue1", country1.getAttribute("name1"));
assertNull("Attributet skall inte finnas", country1.getAttribute("name2"));
assertNull("Attributet skall inte finnas", country1.getAttribute("name3"));