恢复混合页面 Alfresco Share
Recover hybrid page Alfresco Share
我创建了一个新页面 Aikau,但我更改了 XML 文件,标准 Share 页眉和页脚之间呈现的页面内容消失了。
在这个页面中,我想要查询字符串的参数,所以我写了这段代码:
page.get.desc.xml:
<webscript>
<shortname>My New Page</shortname>
<url>/hdp/ws/my-new-page</url>
<authentication>user</authentication>
</webscript>
page.get.js:
function main ()
{
// Get the args
var fileProp = args["test"];
model.temp = fileProp;
}
main();
page.get.html.ftl:
Test arg: ${temp}
我必须把/hdp/ws/my-new-page
放在XML文件中才能在这个页面写入FTL文件的内容...但是为什么Alfresco模板的页眉和页脚不见了? hdp
用于此目的。如果我不把 URL 放在 XML 上,页面就会显示模板。
我的代码有什么问题?或者我怎样才能恢复模板?或者添加页眉和页脚?
编辑:我已经尝试只放置 /my-new-page 而没有 /hdp/ws/ 但是当我放置 /hdp/ws/ 时参数为空。给我一个提示。
EDIT2:我已经尝试导入 alfresco-template.ftl 但我做不到。有什么想法吗?
你需要在这个javascript服务器上强制制作你在javascript服务器上的东西吗?如果没有,您可以创建一个接收相同参数的 javascript 客户端(location.search
给您查询字符串,因此,您可以解析该查询字符串并仅获取 "test" 你想要的)并在 FTL 文件(客户端 javascript)上调用它们。所以,当页面加载时,它不会丢失参数。这不是最好的解决方案,但您可以试试这个...
您实际上不需要在 WebScript 描述符中包含 "hdp/ws" 部分。只有“/my-new-page”是必需的。 Aikau 试图通过提供许多开箱即用的页面("hdp" 页面只是其中之一)来简化 Surf 页面的创建。
Aikau 使用 URI 模板映射将单个 WebScript 与页面匹配,例如 URL:
/share/page/hdp/ws/my-new-page
share = 应用上下文
page = Spring MVC 请求调度程序
hdp/ws/my-new-page 然后映射到 URI 模板:
<uri-template id="share-page">/{pageid}/ws/{webscript}</uri-template>
其中 "hdp" 是要呈现的页面的 ID,"my-new-page" 是 WebScript URL。 HDP 页面使用模板中的 "webscript" 标记自动创建新的 Surf 组件并将其绑定到 WebScript。
但简而言之 - 不要在 Aikau 页面的 WebScript URL 中包含 "hdp/ws"。
我创建了一个新页面 Aikau,但我更改了 XML 文件,标准 Share 页眉和页脚之间呈现的页面内容消失了。
在这个页面中,我想要查询字符串的参数,所以我写了这段代码:
page.get.desc.xml:
<webscript>
<shortname>My New Page</shortname>
<url>/hdp/ws/my-new-page</url>
<authentication>user</authentication>
</webscript>
page.get.js:
function main ()
{
// Get the args
var fileProp = args["test"];
model.temp = fileProp;
}
main();
page.get.html.ftl:
Test arg: ${temp}
我必须把/hdp/ws/my-new-page
放在XML文件中才能在这个页面写入FTL文件的内容...但是为什么Alfresco模板的页眉和页脚不见了? hdp
用于此目的。如果我不把 URL 放在 XML 上,页面就会显示模板。
我的代码有什么问题?或者我怎样才能恢复模板?或者添加页眉和页脚?
编辑:我已经尝试只放置 /my-new-page 而没有 /hdp/ws/ 但是当我放置 /hdp/ws/ 时参数为空。给我一个提示。
EDIT2:我已经尝试导入 alfresco-template.ftl 但我做不到。有什么想法吗?
你需要在这个javascript服务器上强制制作你在javascript服务器上的东西吗?如果没有,您可以创建一个接收相同参数的 javascript 客户端(location.search
给您查询字符串,因此,您可以解析该查询字符串并仅获取 "test" 你想要的)并在 FTL 文件(客户端 javascript)上调用它们。所以,当页面加载时,它不会丢失参数。这不是最好的解决方案,但您可以试试这个...
您实际上不需要在 WebScript 描述符中包含 "hdp/ws" 部分。只有“/my-new-page”是必需的。 Aikau 试图通过提供许多开箱即用的页面("hdp" 页面只是其中之一)来简化 Surf 页面的创建。
Aikau 使用 URI 模板映射将单个 WebScript 与页面匹配,例如 URL:
/share/page/hdp/ws/my-new-page
share = 应用上下文 page = Spring MVC 请求调度程序
hdp/ws/my-new-page 然后映射到 URI 模板:
<uri-template id="share-page">/{pageid}/ws/{webscript}</uri-template>
其中 "hdp" 是要呈现的页面的 ID,"my-new-page" 是 WebScript URL。 HDP 页面使用模板中的 "webscript" 标记自动创建新的 Surf 组件并将其绑定到 WebScript。
但简而言之 - 不要在 Aikau 页面的 WebScript URL 中包含 "hdp/ws"。