Ошибка при получении данных Connection Cloud с помощью Xpages и IBM SBT

Я пытаюсь подключиться к Connections Cloud, чтобы получать данные и отображать их в xpages с помощью IBM SBT, но у меня возникают проблемы. Я установил IBM SBT на Domino Server и развернул его в Domino Designer после прочтения руководства по установке.

У меня также есть учетная запись smartcloud, где я зарегистрировал внутреннее приложение для тестирования OAuth.

Внутренние учетные данные приложения

Я создал новое приложение nsf, скопировал управляемые компоненты из образца базы данных XPagesSBT.nsf и заменил учетные данные OAuth1. Faces-config.xml выглядит так:

<?xml version="1.0" encoding="UTF-8"?>
<faces-config>
    <!--
        Token store Memory implementation
    -->
    <managed-bean>
        <managed-bean-name>CredStore</managed-bean-name>
        <managed-bean-class>com.ibm.sbt.security.credential.store.MemoryStore
        </managed-bean-class>
        <managed-bean-scope>session</managed-bean-scope>
    </managed-bean>
    <!--
        SmartCloud 
   -->
    <managed-bean>
        <managed-bean-name>connections</managed-bean-name>
        <managed-bean-class>
            com.ibm.sbt.services.endpoints.SmartCloudOAuthEndpoint
        </managed-bean-class>
        <managed-bean-scope>application</managed-bean-scope>
        <!-- Endpoint URL -->
        <managed-property>
            <property-name>url</property-name>
            <value>https://apps.na.collabserv.com
            </value>
        </managed-property>
        <managed-property>
            <property-name>serviceName</property-name>
            <value>SmartCloud</value>
        </managed-property>
        <!-- OAuth parameters -->
        <managed-property>
            <property-name>credentialStore</property-name>
            <value>CredStore
            </value>
        </managed-property>
        <managed-property>
            <property-name>requestTokenURL</property-name>
            <value>https://apps.na.collabserv.com/manage/oauth/getRequestToken
            </value>
        </managed-property>
        <managed-property>
            <property-name>authorizationURL</property-name>
            <value>https://apps.na.collabserv.com/manage/oauth/authorizeToken
            </value>
        </managed-property>
        <managed-property>
            <property-name>accessTokenURL</property-name>
            <value>https://apps.na.collabserv.com/manage/oauth/getAccessToken
            </value>
        </managed-property>
        <managed-property>
            <property-name>appId</property-name>
            <value>app_20051314_...</value>
        </managed-property>
        <managed-property>
            <property-name>consumerKey</property-name>
            <value>3f1b3f22658601...
            </value>
        </managed-property>
        <managed-property>
            <property-name>consumerSecret</property-name>
            <value>bcb4ca1d1ede5...
            </value>
        </managed-property>
    </managed-bean>
</faces-config>

Я выбрал для использования библиотеки Xpage и, наконец, создал Xpage на основе этого фрагмента, взятого из Теплица:

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">

    Here is the list of public Communities:
    <xp:br></xp:br>
    <xp:br></xp:br>
    <xp:text escape="false" id="computedField1">
        <xp:this.value><![CDATA[#{javascript:var svc = new com.ibm.sbt.services.client.connections.communities.CommunityService()
var c = svc.getPublicCommunities()
if(c.size()>0) {
var result = ""
for(var i=0; i<c.size(); i++) {
result += "<b>Name:</b>"+c[i].getTitle()+"<br/>\n"
}
return result;
} else {
return "No Result";
}}]]></xp:this.value>
    </xp:text>
</xp:view>

Когда я открываю Xpage, он перенаправляет меня на страницу аутентификации для Connection Cloud, затем перенаправляет на страницу предоставления доступа и, наконец, перенаправляет на мою Xpage с этой ошибкой:

Ошибка при вызове конструктора Java 'com.ibm.sbt.services.client.connections.communities.CommunityService()' (java.lang.reflect.InvocationTargetException).

Версия сервера 9.0.1FP4 для Windows/Longhom/64 6.1 и работает под https. Я не знаю, что мне не хватает. Может что-то на уровне сервера? Буду признателен за любую помощь. Спасибо.


person Juan Carlos González Arroyave    schedule 20.05.2016    source источник


Ответы (1)


я решил это

Я установил последнюю версию SBT SDK с github (1.1.11.20151208-1200). Я удалил его и вместо него установил выпуск openntf (1.0.3.20140723-1200). Теперь он работает нормально.

person Juan Carlos González Arroyave    schedule 21.05.2016
comment
Я бы рекомендовал поднять вопрос на GitHub, чтобы они могли определить и устранить причину. - person Paul Stephen Withers; 23.05.2016
comment
Спасибо, Павел, учту вашу рекомендацию. - person Juan Carlos González Arroyave; 24.05.2016