I’m running openfire 3.9.3 as a “windows service” with the builtin JVM (~1.5M for both xms/xmx) and embedded database. The MUC Service plugin is v0.2.0 (7/2014).
Using Soap UI, I created a chat room using the “http://myserver.local:9090/plugins/mucservice/chatrooms?servicename=myservice” URI and the attached “sampleAddRoom.xml” as the body of the POST message. A http-status of 204 (success/no content) is returned. When I open the openfire admin ui and browse to the newly added chat room two things happen:
If I click on the chatroom’s name/link the ui just refreshes and the edit chatroom page never appears. The same happens if I click the edit button.
If I try to delete the chatroom, as soon as I click the big red X distroy button, an exception is thrown (see attached “nullpointerexception.txt”).
Even with debug logging enabled, I see nothing added to any log when I perform either of the above two actions.
=============================================
UPDATE:
By changing a few values in my input file I was able to make this work…
Lowercase’d description, naturalName and roomName
Added a creationDate whose value must be in the same timezone as the server (UTC in my case) (Ex: 2014-08-06T18:32:02.289Z)
Added a modificationDate whose value must be in the same timezone as the server (Ex 2014-08-06T18:32:02.289Z)
any chatroom I make with these updates I can edit and/or destroy via the admin ui
=============================================
Message was edited by: Tony – a few more details added.
I have found that **both **creation and modification date are required, if they are not sent in the POST body, the chat room will be created without issue; however, if you try to edit the chat room within the openfire admin interface, you’ll get the following exception…
java.lang.NullPointerException
at java.util.Calendar.setTime(Unknown Source)
at java.text.SimpleDateFormat.format(Unknown Source)
at java.text.SimpleDateFormat.format(Unknown Source)
at java.text.DateFormat.format(Unknown Source)
at org.jivesoftware.openfire.admin.muc_002droom_002dedit_002dform_jsp._jspService( muc_002droom_002dedit_002dform_jsp.java:500)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
…
NOTE: my openfire server is running in UTC, but my browser client is in UTC-4.
I have attached an up-to-date POST body that I have been using for testing that appears to work. I string replace the ALLCAPS variables as such:
CREATIONDATETIME --> “2014-08-07T11:36:09.119Z” (no quotes)
MODIFICATIONDATETIME --> “2014-08-07T11:36:09.119Z” (no quotes)
TOLOWEREDROOMNAME --> “deleteme_20140807113609” (no quotes)
The owner account is the same account I am using for basic authentication. While the MUCRoomController.java’s createRoom method appears to support an emtpy owners list Ex. “”, I have found that if I don’t specifiy at least one owner, I’ll get http-status 404 “not found” response. SubStringVersion.xml (1023 Bytes)