CSV를 렌더링하는 Alfresco Web Script를 작성 했으므로 잘 작동합니다.웹 스크립트 오류 500 템플릿이 무시되었습니다.
특별한 경우에 웹 스크립트를 return an error 500 as JSON으로 바꾸고 싶습니다. 따라서 .json.500.ftl
템플릿을 작성했습니다.
문제 : 오류 500은 항상 HTML (기본 웹 스크립트 오류 템플릿)으로 표시됩니다.
내가 뭘 잘못 했니?
내 파일 :
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 : // localhost를 : 8080/야외/서비스/ 나는 형식을 추가 theapp/AUDITLOG 형식 = JSON = 마지막에서 JSON? . 그러나 형식의 원래 요청 매개 변수에 영향을 줄 수 있습니다. –
@MuralidharanDeenathayalan : JSON이 제대로 반환됩니다. 모든 것이 잘 풀리면 CSV를 얻으려고했지만 오류 500의 경우에만 JSON을 받으십시오. 아마도 웹 스크립트 기술은 그런 의도가 아닙니다. –
자바 백업 웹 스크립트 인 IIRC를 사용하는 경우 웹 스크립트 리턴 형식을 JSON으로 대체 할 수 있습니다. org.springframework.extensions.webscripts.DeclarativeWebScript'와 org.springframework.extensions.webscripts.DeclarativeWebScript.renderFormatTemplate (String, Map, Writer) 메소드를 참조하십시오. –