我寫了一個呈現CSV的Alfresco Web腳本,它運行良好。Web腳本錯誤500模板被忽略
在特定的情況下,我希望Web腳本爲return an error 500 as JSON,所以我爲它編寫了一個.json.500.ftl
模板。
問題:錯誤500始終顯示爲HTML(默認Web腳本錯誤模板)。
我做錯了什麼?
我的文件:
auditlog.get.desc.xml
auditlog.get.csv.ftl
auditlog.get.json.500.ftl
auditlog.get.json.500.ftl
只包含{"error": "abc is not correct"}
auditlog.get.desc.xml
包含:
<webscript>
<shortname>Audit Log Web Script</shortname>
<description>Returns audit data for a given day</description>
<url>/theapp/auditlog</url>
<authentication>admin</authentication>
<format default="csv"></format>
</webscript>
所有這些文件都在tomcat/webapps/alfresco/WEB-INF/classes/alfresco/extension/templates/webscripts/
,我已經重新啓動露天。
嘗試調用這個樣子,HTTP://本地主機:8080 /戶外/服務/該app /審計日誌格式= JSON我加入了格式= JSON在最後? 。但它可能會影響格式的原始請求參數。 –
@MuralidharanDeenathayalan:正確返回JSON。如果一切順利,我希望能夠獲得CSV,但只有在出現錯誤500的情況下才能獲得JSON ......也許Web腳本技術並不意味着要這麼做? –
如果您使用的是Java支持的webscript IIRC,則可以將webscript返回格式覆蓋爲JSON。請參閱'org.springframework.extensions.webscripts.DeclarativeWebScript'和'org.springframework.extensions.webscripts.DeclarativeWebScript.renderFormatTemplate(String,Map,Writer)'方法。 –