Oracle has a demo community and a set of ANT and Servlet based scripts to povision your SOA or BPMSuite environment with a set of American literature writers, to be used in demo's and trainings. I some how found this years ago and had it debugged to be used in 12.1.3 a few years ago. However, I did not know where I got it and if it was free to be delivered.
Apparently it is, and you can find it at my oracle support. Our friends with Avio Consulting also did a good job in making it available and working with 12c. However, I could not make it work smoothly end 2 end. I got it seeded, but figured that I would not need ANT and a Servlet.
Last year, in 2016, I created a bit of WLST scripting to create users for OSB and have them assigned to OSB Application roles. You can read about that here for the user creation, and here for the app-role assignment.
One thing that's missing in those scripts is the setting of the user attributes. So I googled around and found a means to add those too.
First, I had to transform the demo community seeding xml file to a property file. Like this:
# cdickens.password=welcome1 cdickens.description=Demo User cdickens.email=cdickens@emailExample.com cdickens.title=CEO cdickens.firstName=Charles cdickens.lastName=Dickens cdickens.timeZone=America/Los_Angeles cdickens.languagePreference=en-US cdickens.workPhone=100000001 cdickens.homePhone=200000001 cdickens.mobile=300000001 cdickens.im=jabber|cdickens@exampleIM.com
The complete, usersAndGroups.properties file is available here.
In an earlier blog, I wrote about how to read a property file. But my prefered method, does not allow me to determine the property to be fetched dynamically. That's why I split my basic createDemoUsers.properties file, that refers to the usersAndGroups.properties file, and contains the properties refering the Oracle/Jdeveloper home and the connection details for the AdminServer. This property file also contains comma separated lists of users, groups and AppRoles to be created or granted.
The actual createDemoUsers.py file loops over the three lists and creates the particular users and groups, and grants the AppRoles.
To set the attributes, the setUserAttributeValue of the authenticatorMBean can be used as follows:
#Set Properties firstName=userProps.getProperty(userName+".firstName") lastName=userProps.getProperty(userName+".lastName") displayName=nvl(firstName, " ")+" "+nvl(lastName, " ") authenticator.setUserAttributeValue(userName,"displayName",displayName.strip())
I published the complete set of scripts on the GitHub repo I shared with my colleague.
You can download them all, adapt the createDemoUsers.sh, to refer the correct MW_HOME to your JDeveloper environment. For Windows you might translate it to a .bat/.cmd file.
And of course you can use it for your own set of users.
I think I covered near to all of the Demo User community. Except for management-chains: I could not find how to register a manager for a user in Weblogic. Neither in the console, nor inWLST. So, I currently I conclude it cannot be done. But, if you have a tip, please be so good to leave a comment. I would highly appreciate it.
2018-08-22, Update: found this article referencing the BPM roles, from my appreciated former Whitehorses co-worker. Should be able to integrate this in my scripts.