1

alfresco のリポジトリ ルートにあるフォルダーを取得しようとして、次のコードがあります: test-folder.get.json.ftl:

<#escape x as jsonUtils.encodeJSONString(x)>
{"data" : 
        {
           <#if folder??>
           "folderName" : "${folder.name}",
           "folderPath" : "${folder.displayPath}/${folder.name}",
           </#if>
           "status" : "${status}"

        }
}
</#escape>

test-folder.get.json.js

main();

function main()
{
    var folder = companyhome.childByNamePath("Photo");
    if (folder == undefined || !folder.isContainer){
       logger.log("\n\n==>Folder is undefined<===\n\n");
       status.code = 404;
       status.message = "Folder " + url.extension + " not found.";
     }
     else{
         logger.log("\n\n==> Got the folder path: "+ folder.displayPath);
         model.folder=folder;
     }
    model.status=status;    
}

リポジトリで Webscript を確認すると、ステータス コードのみが表示されます。さらに、どちらのロガー メッセージもログに出力されず、ログにエラーは表示されません。不足しているものはありますか?

4

2 に答える 2

3

私からアドバイスできることの 1 つは、Florian Maul が開発した JavaScript コンソールを使用することです。

私にとっては、とても便利なツールでした。

「var folder = companyhome.childByNamePath("Photo");」の結果をミリ秒で知ることができます。また、「folder[cm:name]」をログに記録するだけで結果を表示できます。

このリンクは役に立ちます。 JavaScript コンソール

于 2013-05-16T10:48:02.420 に答える
1

いくつかの考えられる問題:

  • このウェブスクリプトを呼び出すときにログインしていますか? ログインしていないユーザーは、「写真」スペースにアクセスできない場合があります。
  • ロギングが有効になっていますか? logger.log の代わりに logger.error を使用してみてください (または、log4j.properties でログ レベルを確認してください)。
于 2013-05-17T07:48:26.987 に答える