Создать новую страницу в дизайнере панели инструментов в WSO2 DAS

Я пытаюсь создать новую страницу в приложении jaggery дизайнера панели мониторинга в Data Analytic Server (DAS) wso2. Для этого я добавляю в / themes / template новый шаблон, в данном случае delete-gadget.jag, я добавляю новый контроллер в / controllers с тем же именем delete-gadget.jag. В / themes / template я обновляю index.jag и добавляю новую ссылку для delete-gaget.jag. При переходе по этой ссылке приложение говорит 404.

Это мой код:

в /controllers/delete-gadget.jag:

<%
(function() {
    if (!user) {
        sendLogin();
        return;
    }

    if(userDomain !== (urlDomain || superDomain)) {
        response.sendError(401, 'designer access not authorized of this tenant');
        return;
    }
 
 var configs = require('/configs/designer.json');

    if (!utils.allowed(user.roles, configs.designers)) {
        response.sendError(401, 'designer access not authorized');
        return;
    }

    include(utils.resolvePath('templates/delete-gadget.jag'));
} ()); %>

Добавьте новую ссылку в /themes/template/index.jag:

<li><a href="<%=tenantedUrlPrefix%>delete-gadget">
    <span class="fw-stack">
    <i class="fw fw-ring fw-stack-2x"></i>
    <i class="fw fw-delete fw-stack-1x"></i>
    </span> <%= i18n.localize("delete.gadget.lable")%></a>
 </li>

Когда я кликаю по этой ссылке:

1 ответ

Решение

Вам нужно добавить определение маршрута на jaggery.conf файл в корневой папке приложения jaggery. В вашем случае это файл <WSO2DAS_HOME>/repository/deployment/server/jaggeryapps/portal/jaggery.conf, Я рекомендую начать с дублирования записи для создания нового гаджета и внесения соответствующих изменений. В вашем случае это будет добавление на urlMappings перечислите следующий пункт:

{
  "url": "/create-gadget",
  "path": "/routers/tenant.jag"
},
Другие вопросы по тегам