2016-07-05 48 views
0

我試圖添加一些字段到folder settingsAEM 6.2添加新字段到文件夾設置但數據不保存

爲此,我在我的應用程序中覆蓋了文件「/ libs/dam/gui/content/assets/foldersharewizard」。添加了一個新選項卡和2個新複選框。新的選項卡和字段出現,但它們不會在文件夾節點和jcr中保存它們的值。我嘗試修改默認字段,當我更改名稱,我只是停止工作。

這是我在foldersharewizard添加的代碼:

<tab5 
    jcr:primaryType="nt:unstructured" 
    jcr:title="Tab title" 
    sling:resourceType="granite/ui/components/foundation/container"> 
<items jcr:primaryType="nt:unstructured"> 
    <editDeny 
      jcr:primaryType="nt:unstructured" 
      sling:resourceType="granite/ui/components/foundation/form/checkbox" 
      id="editDeny" 
      name="custom:deniedEdit" 
      text="Hide edit" 
      value="{Boolean}true"/> 
    <delAllow 
      jcr:primaryType="nt:unstructured" 
      sling:resourceType="granite/ui/components/foundation/form/checkbox" 
      id="delAllow" 
      name="custom:allowedDel" 
      text="Show delete" 
      value="{Boolean}true"/> 
</items> 

由於AEM文件大多是廢話,沒有很多的互聯網開發者的意見......我的想法,如果你們中的任何一個人都遇到同樣的問題,或者知道我錯過了什麼,那會很棒。

其他任何你想我粘貼...但這只是我所添加的代碼。

謝謝。

回答

0
<operation jcr:primaryType="nt:unstructured" 
sling:resourceType="granite/ui/components/foundation/form/hidden" 
name=":operation" 
value="custom.dam.share.folder"/> 

不得不覆蓋這個節點調用自定義的術後

@Component(metatype = false) 
@Service 
@Properties({@Property(name = "sling.post.operation", value = {"custom.dam.share.folder"}), @Property(name = "sling.servlet.methods", value = {"POST"})}) 
public class CustomFolderShareHandler implements PostOperation { 

    @Reference(target = "(sling.post.operation=dam.share.folder)") 
    PostOperation folderShareHandler; 

    @Override 
    public void run(SlingHttpServletRequest request, PostResponse response, SlingPostProcessor[] processors) { 
     folderShareHandler.run(request, response, processors); 
     // DO CUSTOM STUFF 
    } 
} 
0

我想這是因爲值是字符串數據類型 - 如果你想要的值存儲爲一個布爾值,使用typehint場:

<editDeny 
 
    jcr:primaryType="nt:unstructured" 
 
    sling:resourceType="granite/ui/components/foundation/form/checkbox" 
 
    id="editDeny" 
 
    name="custom:deniedEdit" 
 
    text="Hide edit" 
 
    value="{Boolean}true"/> 
 
<editDenyType 
 
    jcr:primaryType="nt:unstructured" 
 
    sling:resourceType="granite/ui/components/foundation/form/hidden" 
 
    name="custom:[email protected]" 
 
    value="Boolean"/>

+0

我嘗試了很多組合,其中一人只是一個隨機字符串的價值和它沒有工作也沒有。 – ch0ke

0

請確保您有根據以下結構覆蓋正確的節點: /apps/dam/gui/content/assets/foldersharewizard/jcr:content/body/content/items/foldersettings/items/settings/items/right/items/tab5

相關問題