WSO2 IS 5.7 editUserStore с мыльным веб-сервисом не работает - PullRequest
0 голосов
/ 09 января 2019

Я хочу редактировать пользовательский магазин, используя веб-сервис весенней загрузки, используя мыльный веб-сервис, предоставленный wso2. Но не удалось отредактировать пользовательский магазин в wso2. в настоящее время я использую WSO2 IS 5.7

Это ошибка, которую я получаю

<soapenv:Reason><soapenv:Text xml:lang="en-US">UniqueID property is not provided.</soapenv:Text></soapenv:Reason>

Это запрос мыла, который я отправляю для редактирования пользовательского магазина

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsd="http://org.apache.axis2/xsd" xmlns:xsd1="http://dto.configuration.store.user.identity.carbon.wso2.org/xsd">
<soap:Header/>
<soap:Body>
  <xsd:editUserStore>
        <xsd:userStoreDTO>
            <xsd1:className>##LDAP_CLASS##</xsd1:className>
            <xsd1:description>##DESCRIPTION##</xsd1:description>
            <xsd1:disabled>false</xsd1:disabled>
            <xsd1:domainId>##DOMAIN_NAME##</xsd1:domainId>
            <xsd1:properties>
                <xsd1:name>ConnectionName</xsd1:name>
                <xsd1:value>##CONNECTION_NAME##</xsd1:value>
            </xsd1:properties>
            <xsd1:properties>
                <xsd1:name>ConnectionURL</xsd1:name>
                <xsd1:value>##CONNECTION_URL##</xsd1:value>
            </xsd1:properties>
            <xsd1:properties>
                <xsd1:name>ConnectionPassword</xsd1:name>
                <xsd1:value>##PASSWORD##</xsd1:value>
            </xsd1:properties>
            <xsd1:properties>
                <xsd1:name>UserSearchBase</xsd1:name>
                <xsd1:value>##USER_SEARCH_BASE##</xsd1:value>
            </xsd1:properties>
            <xsd1:properties>
                <xsd1:name>UserEntryObjectClass</xsd1:name>
                <xsd1:value>##USER_ENTRY_OBJECT_CLASS##</xsd1:value>
            </xsd1:properties>
            <xsd1:properties>
                <xsd1:name>GroupEntryObjectClass</xsd1:name>
                <xsd1:value>##GROUP_ENTRY_OBJECT_CLASS##</xsd1:value>
            </xsd1:properties>
            <xsd1:properties>
                <xsd1:name>UserNameAttribute</xsd1:name>
                <xsd1:value>##USER_NAME_ATTRIBUTE##</xsd1:value>
            </xsd1:properties>
            <xsd1:properties>
                <xsd1:name>UserNameSearchFilter</xsd1:name>
                <xsd1:value>##USER_NAME_SEARCH_FILTER##</xsd1:value>
            </xsd1:properties>
            <xsd1:properties>
                <xsd1:name>UserNameListFilter</xsd1:name>
                <xsd1:value>##USER_NAME_LIST_FILTER##</xsd1:value>
            </xsd1:properties>
        </xsd:userStoreDTO>
         </xsd:editUserStore>

1 Ответ

0 голосов
/ 10 января 2019

Как говорится в сообщении об ошибке, вы не отправляете свойство UniqueID в запросе editUserStore.

Чтобы получить UniqueID для каждого из пользовательских хранилищ, вы можете использовать следующий запрос. Это перечислит все пользовательские магазины с их свойствами, и вы можете найти UniqueID для каждого из них.

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsd="http://org.apache.axis2/xsd">
   <soap:Header/>
   <soap:Body>
      <xsd:getSecondaryRealmConfigurations/>
   </soap:Body>
</soap:Envelope>

Тогда вы можете избежать этой ошибки, добавив свойство UniqueID к запросу editUserStore следующим образом.

    <xsd1:properties>
        <xsd1:name>UniqueID</xsd1:name>
        <xsd1:value>751d3a55-5eb3-462b-ad6a-c93fcc444927</xsd1:value>
    </xsd1:properties>

PS: эти услуги администратора доступны в UserStoreConfigAdminService

...