2013-08-23 3 views
0

Я пытаюсь создать новое действие программно (используя POST для URL-адреса/activities/service/atom2/activities). Это отлично работает, если я аутентифицируюсь с нужным пользователем. На самом деле, я хочу создавать действия от имени другого пользователя (например, подключиться к «админу») и попытался заполнить элементы «автор» и «вкладчик» в элементе XML-записи фида.Как создать активность для другого пользователя с IBM OpenSocial

В зависимости от информации, которую я отправляю, будет либо проигнорирован, либо я получаю HTTP 400 с com.ibm.openactivities.atom.exception.ParsingException: java.lang.NullpointerException body.

Edit: Я посылаю что-то вроде этого:

<?xml version="1.0" encoding="UTF-8"?> 
<entry xmlns="http://www.w3.org/2005/Atom"> 
<title type="text">A test</title> 
<author> 
    <name>Foo Bar</name> 
    <email>[email protected]</email> 
    <snx:userid xmlns:snx="http://www.ibm.com/xmlns/prod/sn">34E7B1AD-3BCC-4C0F-B0EA-C9657D265C39</snx:userid> 
    <snx:ldapid xmlns:snx="http://www.ibm.com/xmlns/prod/sn">34E7B1AD-3BCC-4C0F-B0EA-C9657D265C39</snx:ldapid> 
</author> 
<contributor> 
    <name>Foo Bar</name> 
    <email>[email protected]</email> 
    <snx:userid xmlns:snx="http://www.ibm.com/xmlns/prod/sn">34E7B1AD-3BCC-4C0F-B0EA-C9657D265C39</snx:userid> 
    <snx:ldapid xmlns:snx="http://www.ibm.com/xmlns/prod/sn">34E7B1AD-3BCC-4C0F-B0EA-C9657D265C39</snx:ldapid> 
</contributor> 
<category scheme="http://www.ibm.com/xmlns/prod/sn/type" term="activity" label="Activity" /> 
<content type="html">This is the &lt;b&gt;bold&lt;/b&gt; test body</content> 
</entry> 

И это результат:

<error xmlns="http://www.ibm.com/xmlns/prod/sn"> 
    <code></code> 
    <message>Identifier: LC036D7B74CB004EF9882FA53FFDD1A195 com.ibm.openactivities.atom.exception.ParsingException: com.ibm.openactivities.atom.exception.ParsingException: java.lang.NullPointerException</message> 
    <displaymessage></displaymessage> 
    <errortype></errortype> 

    <trace>java.lang.Exception: Identifier: LC036D7B74CB004EF9882FA53FFDD1A195 
com.ibm.openactivities.atom.exception.ParsingException: com.ibm.openactivities.atom.exception.ParsingException: java.lang.NullPointerException</trace> 
</error> 

Основной вопрос, могу ли я создать новую операцию для другого пользователя. Второй вопрос заключается в том, могу ли я достичь этого, используя вышеупомянутый подход, и третий вопрос - что мне нужно пройти?

Любые подсказки приветствуются!

+0

Мартин вы можете привести пример XML, который вы отправляете в API? –

ответ

1

В IBM Connections API documentation состояния:

Использование протокола публикации Atom, также известный как AtomPub, вы можете создать и обновление деятельности, которыми вы владеете

Кроме того, документация состояния, что в файле Activity content entry элемент «Автор» игнорируется на входе.

Итак, из того, что я собираю, вы можете создавать только Деятельности и Деятельности для пользователя, для которого у вас есть учетные данные. Возможно, вы можете работать с записью Activity ToDo, которую вы назначаете кому-либо или с деятельностью внутри сообщества?