Я пытаюсь создать новое действие программно (используя 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 <b>bold</b> 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>
Основной вопрос, могу ли я создать новую операцию для другого пользователя. Второй вопрос заключается в том, могу ли я достичь этого, используя вышеупомянутый подход, и третий вопрос - что мне нужно пройти?
Любые подсказки приветствуются!
Мартин вы можете привести пример XML, который вы отправляете в API? –