/** @return */ public String listHighestGameScores(String contentId, int count, User u) { u = checkUser(u); Element root = new Element("scores"); root.setAttribute("content-id", contentId); List<ContentLog> list = contentLogDao.queryForHighest(contentId, count); list.addAll(contentLogDao.queryForUserLast(contentId, u.getUserId(), 1)); int userOrder = contentLogDao.queryForOrder(list.get(list.size() - 1).getContentLogId()); for (int i = 0; i < list.size(); i++) { Element e = new Element("user"); if (i != list.size() - 1) { e.setAttribute("pm", String.valueOf(i + 1)); } else { e.setAttribute("pm", String.valueOf(userOrder)); } e.setAttribute("nc", list.get(i).getUserName()); e.setAttribute("fs", String.valueOf(list.get(i).getScore())); root.addContent(e); } Document doc = new Document(); doc.setRootElement(root); XMLOutputter outputter = new XMLOutputter(Format.getPrettyFormat()); return outputter.outputString(doc); }