API администрирования профилей IBM Connections 4.5 - создание кодов профилей
В настоящее время я работаю над программным обеспечением, которое, среди прочего, должно иметь возможность создавать / обновлять коды профилей в функции профилей IBM Connections.
По моему мнению, я сделал все, как описано в википедии IBM Social Business Development, но не смог создать коды профилей (проверено на двух разных установках с одинаковыми результатами).
Попытка: создание профилей кодов
Я пробовал следующие шаги с различными типами кодов профилей (Страна, Отдел, ...), всегда с тем же результатом с сервера (405 Метод не разрешен).
Я собрал запись Atom для кода, который хотел создать, например, Department:
<entry xmlns="http://www.w3.org/2005/Atom"> <id>tag:profiles.ibm.com,2006:com.ibm.snx_profiles.codes.department:mgmt</id> <title type="text">mgmt</title> <category scheme="http://www.ibm.com/xmlns/prod/sn/type" term="profiles.codes"/> <content type="application/xml"> <appData xmlns="http://ns.opensocial.org/2008/opensocial"> <com.ibm.snx_profiles.codes.department.departmentCode>mgmt</com.ibm.snx_profiles.codes.department.departmentCode> <com.ibm.snx_profiles.codes.department.departmentTitle>Management</com.ibm.snx_profiles.codes.department.departmentTitle> </appData> </content> </entry>
Я также попробовал более короткую запись только с тегом ID (как показано в документации):
<entry> <id>tag:profiles.ibm.com,2006:com.ibm.snx_profiles.codes.department:mgmt</id> </entry>
Я отправил запрос POST, включая запись Atom в качестве данных POST, на указанный ресурс:
- например, https://connections.mycompany.com/profiles/admin/atom/codes/Department.do
- Запрос аутентифицируется с использованием обычной аутентификации (пользователь имеет роль администратора)
- Тип содержимого запроса установлен на application / atom + xml
(Я попытался отправить запрос из кода (Java + Apache Abdera/HTTPClient), а также с помощью RESTClient AddOn для Firefox.)
Сервер отвечает с 405 Метод не разрешен
<?xml version="1.0" encoding="UTF-8"?> <error xmlns="http://www.ibm.com/xmlns/prod/sn"> <code> 405 </code> <message> CLFRN1170E: Resource not found. </message> <trace> OMITTED </trace> </error>
Кроме того, если на URL-адрес ресурса отправляется запрос OPTION, сервер отвечает: GET, HEAD, POST, PUT, DELETE, TRACE, OPTIONS
Итак, мне было интересно, есть ли люди, которым удалось заставить это работать... Может быть, я что-то упустил (какая-то конфигурация на стороне сервера) или, может быть, это просто сломалось для меня...
До сих пор работа с API-интерфейсами Connections была для меня действительно разочаровывающим опытом (либо из-за отсутствия документации, либо из-за того, что API не работают в соответствии с документацией)... Надеюсь, что в следующих выпусках ситуация улучшится:-\
В любом случае, спасибо, что нашли время, чтобы прочитать все это; Любая помощь высоко ценится!
Ура, Карл
Обновление (2014-03-13)
Я провел дополнительное тестирование с API вокруг кодов Profiles... Вот мои выводы:
- POSTing (создание) кодов профилей всегда приводит к ответу 405 (метод не разрешен) сервером
- PUTing (обновление) кодов профилей возвращает 200 OK, но коды никогда не обновляются
- ПОЛУЧЕНИЕ (получение) каналов кодов профилей работает нормально
- УДАЛЕНИЕ профилей кодов тоже отлично работает
Получение отдельных кодов профилей (используя параметр запроса codeId) работает нормально, за исключением:
когда указанный codeId не существует, сервер возвращает 200 OK только с определением XML (но без Atom/XML)
<?xml version="1.0" encoding="UTF-8"?>
Сегодня у меня может быть возможность протестировать запросы еще на двух установках Connections и посмотреть, отличаются ли результаты от двух экземпляров, с которыми я работал до сих пор.
Обновление 2 (2014-03-13)
Теперь я проверил следующий запрос (как и другие) с четырьмя различными установками Connections - все дали мне тот же результат 405 Метод не разрешен
curl --user {username} -X POST -H "Content-Type: application/atom+xml" -d "<entry><id>tag:profiles.ibm.com,2006:com.ibm.snx_profiles.codes.department:test</id></entry>" https://connections.mycompany.com/profiles/admin/atom/codes/Department.do
Обновление 3 (2014-07-08)
После обновления до IBM Connections 5 создание / обновление кодов профилей теперь работает как надо. Похоже, это была ошибка в конце концов.