none
Не проходит простейший deployment.

    Вопрос

  • Приветствую!

    Пытаюсь создать свою первую  кнопочку в  риббоне Библиотек. Что делаю:

    1.Создаю Sharepoint 2016 солюшен

    2. Добавляю feature.

    3. Добавляю  Empty element. В его разметке создаю Custom action по науке.  Location= "CommandUI.Ribbon"  и все такое. Обработчик кнопки - просто переход по ссылке.  Ну или  javascript:alert(); То есть просто для теста.

    3. Сначала  набором cmdlet-ов  добавляю солюшен, фичу, активирую,  проверяю, что в  UI она так же активирована,  затем дебаг в  VS. 

    И получаю массу ошибок вида:

    "0x800a138f - JavaScript runtime error: Unable to get property 'PageManager' of undefined or null reference" для несколкьих свойств + методы типа CreateObject так же Undefined.

    Я не специалист по Javascript-разработке, но такое впечатление, что  солюшен в общий "каркас" Sharepoint не модет встроиться и не понимаю, где копать.

    Есть идеи?

    2 ноября 2017 г. 16:08

Ответы

  • Получилось как-то совладать с проблемой.

    Конечно,  писать  add-in, чтобы  добавить кнопку не нужно было.  У меня были проблемы с деплойментом -  при нажатии F5, несмотря на то, что "Deploying solution" было в  аутпуте,  деплоинг почему-то не происходил. После того, как получилось через PS и CA  все-таки добавить солюшен, задеплоить его, установить и активировать фичи, пришлось искать способы  заставить  F5 делать тоже самое.

    Была создана кастомная Active deployment configuration  (Project Properties - Sharepoint), шаги внутри следующие:

    1. Recycle IIS AP
    2. Retract solution
    3. Add Solution
    4. Run Pre-Dep Command 
    5. Activate Features

    Ключевой пункт здесь - 4. В соответствующий текстбокс выше  добавлен путь к батнику:

     "C:\SP_scripts\deploy_justbutton.bat"

    У самого батника содержимое следующее:

    C:\SP_scripts\stsadm.exe -o deploysolution -name justbutton.wsp -url "myurl" -immediate -allowGacDeployment -force
    C:\SP_scripts\stsadm.exe -o installfeature -name "JustButton_Feature1"

    И вот после этого взлетело.

    Странновато такое поведение,  если честно.  Если у кого есть идеи,  что может быть не так  в моей установке, из-за чего F5 не работает сам должным образом,  прошу поделиться. VS запускался из  под администратора, он иначе и не собирался.

    • Помечено в качестве ответа Dudadu 13 ноября 2017 г. 13:08
    13 ноября 2017 г. 13:08

Все ответы

  • Михаил, попробую, спасибо, но вот только для прояснения -  то есть  вот просто так взять и добавить кнопку на риббоны библиотек сайта солюшеном, в котором фича,  в которой элемент - это не рецепт для 2016?

    Просто в книгах или если гуглить,  custom action делается  именно так. Тут разница в версии (что странно, ибо почти по любому вопросу о разнице между 2013 и 2016 в вебе  ответ, что ее почти нет) или  особый подход через add-in c включением page-элементов обусловлен тем, что я хочу кнопку для всех библиотек сразу?

    3 ноября 2017 г. 15:42
  • Получилось как-то совладать с проблемой.

    Конечно,  писать  add-in, чтобы  добавить кнопку не нужно было.  У меня были проблемы с деплойментом -  при нажатии F5, несмотря на то, что "Deploying solution" было в  аутпуте,  деплоинг почему-то не происходил. После того, как получилось через PS и CA  все-таки добавить солюшен, задеплоить его, установить и активировать фичи, пришлось искать способы  заставить  F5 делать тоже самое.

    Была создана кастомная Active deployment configuration  (Project Properties - Sharepoint), шаги внутри следующие:

    1. Recycle IIS AP
    2. Retract solution
    3. Add Solution
    4. Run Pre-Dep Command 
    5. Activate Features

    Ключевой пункт здесь - 4. В соответствующий текстбокс выше  добавлен путь к батнику:

     "C:\SP_scripts\deploy_justbutton.bat"

    У самого батника содержимое следующее:

    C:\SP_scripts\stsadm.exe -o deploysolution -name justbutton.wsp -url "myurl" -immediate -allowGacDeployment -force
    C:\SP_scripts\stsadm.exe -o installfeature -name "JustButton_Feature1"

    И вот после этого взлетело.

    Странновато такое поведение,  если честно.  Если у кого есть идеи,  что может быть не так  в моей установке, из-за чего F5 не работает сам должным образом,  прошу поделиться. VS запускался из  под администратора, он иначе и не собирался.

    • Помечено в качестве ответа Dudadu 13 ноября 2017 г. 13:08
    13 ноября 2017 г. 13:08