@Override protected void doVerify() throws Exception { List<User> users = UserLocalServiceUtil.getNoContacts(); if (_log.isDebugEnabled()) { _log.debug("Processing " + users.size() + " users with no contacts"); } Date now = new Date(); for (User user : users) { if (_log.isDebugEnabled()) { _log.debug("Creating contact for user " + user.getUserId()); } long contactId = CounterLocalServiceUtil.increment(); Contact contact = ContactLocalServiceUtil.createContact(contactId); Company company = CompanyLocalServiceUtil.getCompanyById(user.getCompanyId()); contact.setCompanyId(user.getCompanyId()); contact.setUserId(user.getUserId()); contact.setUserName(StringPool.BLANK); contact.setCreateDate(now); contact.setModifiedDate(now); contact.setAccountId(company.getAccountId()); contact.setParentContactId(ContactConstants.DEFAULT_PARENT_CONTACT_ID); contact.setFirstName(user.getFirstName()); contact.setMiddleName(user.getMiddleName()); contact.setLastName(user.getLastName()); contact.setPrefixId(0); contact.setSuffixId(0); contact.setJobTitle(user.getJobTitle()); ContactLocalServiceUtil.updateContact(contact); user.setContactId(contactId); UserLocalServiceUtil.updateUser(user); } if (_log.isDebugEnabled()) { _log.debug("Contacts verified for users"); } users = UserLocalServiceUtil.getNoGroups(); if (_log.isDebugEnabled()) { _log.debug("Processing " + users.size() + " users with no groups"); } for (User user : users) { if (_log.isDebugEnabled()) { _log.debug("Creating group for user " + user.getUserId()); } GroupLocalServiceUtil.addGroup( user.getUserId(), User.class.getName(), user.getUserId(), null, null, 0, StringPool.SLASH + user.getScreenName(), false, true, null); } if (_log.isDebugEnabled()) { _log.debug("Groups verified for users"); } }