Alfresco工作流程活动:如何在下拉列表中填充Web服务结果

问题描述 投票:2回答:2

我正在使用Alfresco Community Edition-5.1.x,我们创建了高级工作流程。在工作流程中,我们尝试在下拉列表中填充Web服务结果值。您能否指导我们如何在下拉列表中填充值?

java alfresco alfresco-share
2个回答
1
投票

在这个示例代码中,我通过调用Alfresco Repo webscript将组成员加载到下拉控件中。

在这里注册控件(在ftl文件中)

<label for="${fieldHtmlId}">${field.label?html}:<#if field.mandatory><span class="mandatory-indicator">${msg("form.required.fields.marker")}</span></#if></label>
<select name="${field.name}" id="${fieldHtmlId}" value="${field.value?html}" style="width: 250px;"></select>

从REST服务收到数据后的回调方法

  <script type="text/javascript">
     function ${grpName}_loadDropDown(o){          
        var selectElem = YAHOO.util.Dom.get("${fieldHtmlId}");
        selectElem.options.length=0;           
        for (; i<o.json.data.length; i++){           
            var user = o.json.data[i];                
            selectElem.options[j] = new Option(user.displayName, user.shortName, false, false);  
            j++;
        }            
     }

在此处调用REST服务

     function ${grpName}_loadData(){
        var url = Alfresco.constants.PROXY_URI+"api/groups/${grpName}/children?sortBy=displayName&maxItems=100&skipCount=0";             
        <#if field.control.params.sortAsc?exists> 
           <#assign sort=field.control.params.sortAsc?html>
           url+="&sortAsc=${sort}";
        </#if>
        Alfresco.util.Ajax.request({
        url: url,
          method: "GET",                 
           requestContentType: "application/json",    
            successCallback:{
           fn: function(o){
              ${grpName}_loadDropDown(o);              
           },
              scope: this                       
          },
          failureCallback:{
           fn: function(o){alert("Unable to find group or error ");},
           scope: this
          }               
      }); 
     }

在此处启动REST服务请求

    ${grpName}_loadData();

  </script>

1
投票

以下是您的示例,我使用以下开放JSON - RSET Web服务来获取数据。

Web服务URL:qazxsw poi

结果应该类似于下面的一个,https://jsonplaceholder.typicode.com/posts

如果您需要进一步的帮助,请告诉我。

enter image description here
© www.soinside.com 2019 - 2024. All rights reserved.