/** * Import books * * @param nodes * @return */ private Boolean processBooks(NodeList nodes) { NodeList books = nodes.item(0).getChildNodes(); for (int i = 0; i < books.getLength(); i++) { if (books.item(i).getNodeType() == Node.ELEMENT_NODE) { Element bookNode = (Element) books.item(i); Book book = new Book(); book.setIdbook(Integer.parseInt(getTagValue("idbook", bookNode))); book.setCode(getTagValue("code", bookNode)); book.setEdition(Integer.parseInt(getTagValue("edition", bookNode))); book.setPages(Integer.parseInt(getTagValue("pages", bookNode))); book.setPlace(getTagValue("place", bookNode)); book.setYear(DatatypeConverter.parseDateTime(getTagValue("year", bookNode)).getTime()); book.setType(getTagValue("type", bookNode)); book.setName(getTagValue("name", bookNode)); // find and set publisher Publisher publisher = publisherMgr.findByIdpublisher(Integer.parseInt(getTagValue("publisher", bookNode))); if (publisher == null) { continue; } book.setPublisher(publisher); // find and set genre Genre genre = genreMgr.findByIdgenre(Integer.parseInt(getTagValue("genre", bookNode))); if (genre == null) { continue; } book.setGenre(genre); // setup book authors List<String> authors = getTagsValues("authorCollection", bookNode); if (book.getAuthorCollection() == null) { book.setAuthorCollection(new ArrayList<Author>()); } for (String authorId : authors) { Author author = authorMgr.findByIdauthor(Integer.parseInt(authorId)); if (author != null) { // book.getAuthorCollection().add(author); author.getBooksCollection().add(book); authorMgr.save(author); } } try { bookMgr.save(book); } catch (EJBException ex) { ex.printStackTrace(System.out); } } } return true; }
/** * Import authors * * @param nodes * @return */ private Boolean processAuthors(NodeList nodes) { NodeList authors = nodes.item(0).getChildNodes(); for (int i = 0; i < authors.getLength(); i++) { if (authors.item(i).getNodeType() == Node.ELEMENT_NODE) { Element authorNode = (Element) authors.item(i); Author author = new Author(); author.setIdauthor(Integer.parseInt(getTagValue("idauthor", authorNode))); author.setName(getTagValue("name", authorNode)); try { authorMgr.save(author); } catch (EJBException ex) { ex.printStackTrace(System.out); } } } return true; }