Using DefaultUserProvider to create new accounts

Hi,

I’m having a few issues using DefaultUserProvider to create new user accounts. I am a Ruby developer so my Java isn’t up to much, but I am trying to do this through JRuby and have had some success.

I have got the following methods working fine through my JRuby code …

getSearchFields

getUserCount

getUsernames

isEmailRequired

isNameRequired

isReadOnly

**setEmail
**

setName

However, all the others fail so I have listed these below with their corresponding errors …

**createUser **

-> java.lang.NoClassDefFoundError: javax/mail/internet/AddressException (NativeException)

getUsers

-> Exception in thread “main” java.lang.ExceptionInInitializerError, Caused by: java.lang.NullPointerException

loadUser

-> org/jivesoftware/openfire/user/UserManager.java:52:in `getUserProvider’: java.lang.ExceptionInInitializerError: null (NativeException), Caused by: java.lang.NullPointerException

setCreationDate

-> org/jivesoftware/openfire/user/DefaultUserProvider.java:334:in `setCreationDate’: java.lang.NoClassDefFoundError: javax/mail/internet/AddressException (NativeException)

setModificationDate

-> org/jivesoftware/openfire/user/DefaultUserProvider.java:356:in `setModificationDate’: java.lang.NoClassDefFoundError: javax/mail/internet/AddressException (NativeException)

Any advice on what you think it going wrong here, or if I have missed something, would be greatly appreciated.

(I have attached my full JRuby code for anyone that’s interested!)

Also, how does the caching work when updating records ? As when I use setEmail to update an email address of a user, then log into the Admin console the change is reflected straight away. However, when I use setName to update a name of a user, although the change can be verified by looking in the jiveUser table in MySQL it seems to be a bit hit and miss as to how long it takes to update the Admin console ?

Thanks

-Mic