我有一个webscript,当我调用这个webscript时,我尝试在url上传递两个参数filename
和content
,但是当我调用webscript时,这个url http://localhost:8080/alfresco/service/fr/starxpert/workflows-repository/create-save-workflow-files?filename=testFileName="testFileName"&&content="testContent"
我得到了这个错误:
The Web Script /alfresco/service/fr/starxpert/workflows-repository/create-save-workflow-files has responded with a status of 404 - Not Found.
404 Description: Requested resource is not available.
Message: 06280086 Script url /fr/starxpert/workflows-repository/create-save-workflow-files does not map to a Web Script.
有我的webscript文件:
createAndSaveWorkflowFile.get.desc.xml:
<webscript>
<shortname>Creation and save new workflow file</shortname>
<description>create an workflow JSON file and save it into StarXpert Workflow repository</description>
<url>/fr/starxpert/workflows-repository/create-save-workflow-files/{filename}/{content}</url>
<format default="json">extension</format>
<authentication>user</authentication>
<family>StarXpert</family>
</webscript>
createAndSaveWorkflowFile.get.js:
var fileName=args.filename;
var properties=args.content;
logger.log(fileName);
model.filename=fileName;
model.properties=properties;
createAndSaveWorkflowFile.get.json.ftl:
{
"arguments":[
"fileName":"${fileName}",
"properties":"${properties}"
]
}
你能告诉我我做错了什么,或者举个例子来说明如何使用url上的两个参数调用webscript,然后在webscript上获取这些参数。
答案 0 :(得分:2)
您已声明您的网址使用路径参数:
/fr/starxpert/workflows-repository/create-save-workflow-files/{filename}/{content}
但是当你调用脚本时,你正在使用查询字符串参数:
/alfresco/service/fr/starxpert/workflows-repository/create-save-workflow-files?filename=testFileName="testFileName"&&content="testContent"
您的控制器采用查询字符串参数,因此我将假设您的意图。
此外,您的网址已关闭。
要使用查询字符串参数,您的网址应为:
/alfresco/service/fr/starxpert/workflows-repository/create-save-workflow-files?filename=testFileName&content=testContent
如果您希望描述符与之匹配,则需要将其更改为:
<url>/fr/starxpert/workflows-repository/create-save-workflow-files?filename={filename}&content={content}</url>
请注意,&符号已转义,因此XML仍然有效。