Plugin development question

I started writing a plugin for remote account creation. We need this for creation of accounts with exactly the same usernames as in an other system. So we can’‘t use open registration over xml packets. I followed the guide but wasn’'t very successfull up to now.

The plugin contents a servlet that should enable a simple webservice that I call from the other system. From the servlet I do use the UserManager to create the new accouts.

It looks like that the servlet doesnt start? What am I doing wrong? Thanks for any help!

see zip for plugin code: http://www.olat.org/demo/remoteAccountCreation.zip

Guido

Guido,

Unfortunately, plugins don’'t support servlets yet. We plan to add this in an upcoming release. However, there might be a way to workaround the problem. A few ideas:

  1. A custom UserManager would potentially let you talk directly to your external system to authenticate users and load user information rather than having to copy user accounts. For example, this is how the LDAP user manager works.

  2. Could you communicate with the other service in some other way besides a servlet?

Regards,

Matt

Thanks for your answer. I would like to use http://www.caucho.com/hessian that works very easy together with a servlet. I tried adding a servlet to the web.xml file but it does not appear in the broser. It looks like that the web.xml gets not interpreted in messenger\target\webapp\WEB-INF. If I could start a custom servlet in the jetty engine it would be easy to solve my needs. Later when servlets are possible in messenger plugins I would change to the plugin version. If this doesn work I have to go for a custom solution over a socket connection.

thanks guido

Guido,

You’‘re exactly right – the plugin manager doesn’‘t read custom servlets from the web.xml of plugins. Can you explain a bit more what you’'re trying to do? That will help us figure out how to implement servlet support.

Regards,

Matt

I’‘m triing to access the UserManger and would like to create users and rosters remote over the hessian webservice stuff. We run a eLearning environement that resides on one machine and the jivemessenger is on an other machine. We can’'t use open registration as we need the same usernames as in the eLearning programm.

I tried to simulate the http stuff to achieve this but wasnt very succesfull. The other idea was to write a custom servlet and start it over the web.xml but wasnt either not very successful.

Idea is to provide an api of the most useful stuff like account creation and roster management over a servlet.

guido

Guido,

What about my #2 idea online? Is there a way to talk directly to the other user account database? Then you wouldn’'t need to copy user info back and forth.

Regards,

Matt

I found a solution by talking directy with the admin console over a java http client library and it works fine. Until the jep-133 is implemented I will go with this. Thanks for your suggestions!

see source:

http://www.olat.org/demo/RemoteAccountCreationImplOverHTTP.java

guido