<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <title>User create from backend java code</title>
  <link rel="self" href="https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=114161905" />
  <subtitle>User create from backend java code</subtitle>
  <id>https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=114161905</id>
  <updated>2026-04-04T15:24:33Z</updated>
  <dc:date>2026-04-04T15:24:33Z</dc:date>
  <entry>
    <title>RE: User create from backend java code</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=114164220" />
    <author>
      <name>Yan Paing</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=114164220</id>
    <updated>2019-06-30T08:40:06Z</updated>
    <published>2019-06-30T08:40:06Z</published>
    <summary type="html">Thank you for reference Christoph. </summary>
    <dc:creator>Yan Paing</dc:creator>
    <dc:date>2019-06-30T08:40:06Z</dc:date>
  </entry>
  <entry>
    <title>RE: User create from backend java code</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=114163167" />
    <author>
      <name>Christoph Rabel</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=114163167</id>
    <updated>2019-06-29T14:12:35Z</updated>
    <published>2019-06-29T14:12:35Z</published>
    <summary type="html">The last one of your links looks pretty ok.&lt;br /&gt;But the best place for examples is often the Liferay sourcecode itself.  e.g. here:&lt;br /&gt;&lt;a href="https://github.com/liferay/liferay-portal/blob/7.2.x/modules/apps/login/login-web/src/main/java/com/liferay/login/web/internal/portlet/action/CreateAccountMVCActionCommand.java"&gt;https://github.com/liferay/liferay-portal/blob/7.2.x/modules/apps/login/login-web/src/main/java/com/liferay/login/web/internal/portlet/action/CreateAccountMVCActionCommand.java&lt;/a&gt;&lt;br /&gt;(I searched in the github repository for addUserWithWorkflow and that was one of the hits using that method)&lt;br /&gt;We usually create the user with addUserWithWorkflow and then we set any extra fields (that the method doesn&amp;#39;t have) afterwards. The method does all the necessary things like encrypting the password.</summary>
    <dc:creator>Christoph Rabel</dc:creator>
    <dc:date>2019-06-29T14:12:35Z</dc:date>
  </entry>
  <entry>
    <title>RE: User create from backend java code</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=114162805" />
    <author>
      <name>Yan Paing</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=114162805</id>
    <updated>2019-06-29T13:06:28Z</updated>
    <published>2019-06-29T13:06:28Z</published>
    <summary type="html">Hi Daviad,&lt;br /&gt;Thank you for your response.  Is there any reference code or sample to download for liferay 7 version user creation from backend? I am taking sample from &lt;br /&gt;&lt;a href="https://liferay.dev/forums/-/message_boards/message/14332034"&gt;https://liferay.dev/forums/-/message_boards/message/14332034&lt;/a&gt; , &lt;a href="http://tanajilondhe.blogspot.com/2013/01/liferay-add-user-programmatically.html"&gt;http://tanajilondhe.blogspot.com/2013/01/liferay-add-user-programmatically.html&lt;/a&gt;, &lt;a href="http://tanajilondhe.blogspot.com/2013/01/liferay-add-user-programmatically.html"&gt;http://tanajilondhe.blogspot.com/2013/01/liferay-add-user-programmatically.html&lt;/a&gt;. But all are very old.   </summary>
    <dc:creator>Yan Paing</dc:creator>
    <dc:date>2019-06-29T13:06:28Z</dc:date>
  </entry>
  <entry>
    <title>RE: User create from backend java code</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=114162279" />
    <author>
      <name>David H Nebinger</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=114162279</id>
    <updated>2019-06-29T04:26:38Z</updated>
    <published>2019-06-29T04:26:38Z</published>
    <summary type="html">You should not be doing any of this nonsense.&lt;br /&gt;&lt;br /&gt;Instead, you should just be calling userLocalService.addUserWithWorkflow(), populating all of the parameters.&lt;br /&gt;&lt;br /&gt;And we don&amp;#39;t use the static *LocalServiceUtil classes any more. Those are just for legacy code only. If you are using them at all, it is an indication that you are doing something wrong.</summary>
    <dc:creator>David H Nebinger</dc:creator>
    <dc:date>2019-06-29T04:26:38Z</dc:date>
  </entry>
  <entry>
    <title>User create from backend java code</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=114161904" />
    <author>
      <name>Yan Paing</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=114161904</id>
    <updated>2019-06-29T02:35:46Z</updated>
    <published>2019-06-29T02:35:46Z</published>
    <summary type="html">Dear All,I created user from backend by using UserLocalServiceUtil as per following code. I tried with both  user.setPasswordEncrypted(true) and user.setPasswordEncrypted(false). However in database the password record is saved without encrypted. And also created user can&amp;#39;t login. Please suggest. If possible please share some reference link or sample code for liferay 7 user creation with role and permission. Thank youlong userId = CounterLocalServiceUtil.increment(User.class.getName());&lt;br /&gt;        _log.info(&amp;#34;CounterLocalServiceUtil Done !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! &amp;#34;);&lt;br /&gt;        User user = UserLocalServiceUtil.createUser(userId);&lt;br /&gt;        user.setCompanyId(companyId);&lt;br /&gt;        user.setCreateDate(new Date());&lt;br /&gt;        user.setEmailAddress(emailAddress);&lt;br /&gt;        user.setFirstName(firstName);&lt;br /&gt;        user.setLastName(lastName);&lt;br /&gt;        user.setModifiedDate(new Date());&lt;br /&gt;        user.setLanguageId(themeDisplay.getLanguageId());&lt;br /&gt;        user.setTimeZoneId(themeDisplay.getTimeZone().getDisplayName());&lt;br /&gt;        user.setPassword(password);&lt;br /&gt;        user.setPasswordEncrypted(true);&lt;br /&gt;        user.setReminderQueryAnswer(&amp;#34;test&amp;#34;);&lt;br /&gt;        user.setReminderQueryQuestion(&amp;#34;Test?&amp;#34;);&lt;br /&gt;        user.setScreenName(screenName);&lt;br /&gt;        user.setUuid(serviceContext.getUuid());&lt;br /&gt;        long idContact = CounterLocalServiceUtil.increment(Contact.class.getName());&lt;br /&gt;        Contact contact = ContactLocalServiceUtil.createContact(idContact);&lt;br /&gt;           contact.setCompanyId(themeDisplay.getCompanyId());&lt;br /&gt;           contact.setCreateDate(new Date());&lt;br /&gt;           contact.setUserName(screenName);&lt;br /&gt;           contact.setUserId(user.getUserId());&lt;br /&gt;           contact.setModifiedDate(new Date());&lt;br /&gt;           contact.setFirstName(&amp;#34;contact-&amp;#34;+contact.getContactId());&lt;br /&gt;           contact.setLastName(&amp;#34;contact-&amp;#34;+contact.getContactId());&lt;br /&gt;           contact.setMiddleName(&amp;#34;contact-&amp;#34;+contact.getContactId());&lt;br /&gt;           contact.setPrefixId(0);&lt;br /&gt;           contact.setSuffixId(0);&lt;br /&gt;           contact.setJobTitle(StringPool.BLANK); &lt;br /&gt;           contact.setBirthday(new Date());&lt;br /&gt;           contact=ContactLocalServiceUtil.addContact(contact); &lt;br /&gt;        user.setContactId(contact.getContactId());&lt;br /&gt;        UserLocalServiceUtil.addUser(user);</summary>
    <dc:creator>Yan Paing</dc:creator>
    <dc:date>2019-06-29T02:35:46Z</dc:date>
  </entry>
</feed>
