06-05-2020 07:36 AM
Hi All,
I want to create users from the csv file which will be available on alfresco repository. I created a JAVA Webscript for that but I am not able to set its account enabled through java. Like in javascript
var testUser = people.createPerson("spm", "Joe", "User", "joe.user@alfresco.com", "spm", true, true);
the second last argument refers to the setAccountEnabled param but in java we need to create Map instead of passing the value in params like
Map userMap = new HashMap();
userMap.put(ContentModel.PROP_USERNAME, user.getUserName());
userMap.put(ContentModel.PROP_FIRSTNAME, user.getFirstName());
userMap.put(ContentModel.PROP_LASTNAME, user.getLastName());
userMap.put(ContentModel.PROP_EMAIL, user.getEmailAddress());
userMap.put(ContentModel.PROP_PASSWORD, user.getPassword());
So here I am not able to find the QName for the setAcountEnabled property and because of that users are created in alfresco but I am not able to login through their id.
Is there any possible way to do that?
Thanks and Regards,
Neha
06-29-2020 12:11 PM
I don't see anything in the JavaDoc or the source that would indicate that setting the enabled flag to true is required. I suspect it defaults to that.
In addition to creating the person object, are you also making a call to the authentication service? Take a look at: https://docs.alfresco.com/5.2/references/dev-services-person.html
Also, did you know that the Share admin console includes a CSV import? If you can find that implementation in the source it might have some helpful tidbits.
By the way, you can always create a QName if you know the namespace and the property name. If you knew the property you wanted is "enabled" and the namespace is Alfresco's User namespace, you could create the QName like:
QName PROP_ENABLED = QName.createQName("http://www.alfresco.org/model/user/1.0", "enabled");
But, if that's the property you are looking for, you don't have to create the QName yourself--it is already defined on the org.alfresco.model.ContentModel interface. Just import it.
Explore our Alfresco products with the links below. Use labels to filter content by product module.