如果你曾经在 alfresco 工作过,你一定知道其中的 web 脚本层,我的问题是 alfresco 是如何实现的?它使用什么框架?
如果您不了解 alfresco,那么我的问题是:如何实现脚本层以将我的服务层公开为 JavaScript 样式对象?
使用图层,我可以编写以下代码:
Var test = person.createPerson(556687);
测试......提前谢谢!
如果你曾经在 alfresco 工作过,你一定知道其中的 web 脚本层,我的问题是 alfresco 是如何实现的?它使用什么框架?
如果您不了解 alfresco,那么我的问题是:如何实现脚本层以将我的服务层公开为 JavaScript 样式对象?
使用图层,我可以编写以下代码:
Var test = person.createPerson(556687);
测试......提前谢谢!
Alfresco 服务器中使用的 webscript 层是由 Alfresco 自己开发的,现在是 Spring 的一部分。当前版本可以在 Spring Surf 项目中作为Spring Surf Webscripts 找到。
要将您自己的 Java 类公开为 Javascript 对象,您必须扩展BaseProcessorExtension
该类并将其注册到以下 spring bean 配置:
<bean id="yourJavascriptBean" parent="baseJavaScriptExtension" class="com.example.MyJavaService">
<property name="extensionName" value="customobject" />
</bean>
这会将您的服务注册为对象customobject
。注册 Alfresco serviceRegistry的示例可以在 Alfresco wiki 中找到。您可能还想查看现有 Alfresco 服务的源代码,例如Javascript People API。
请记住,这会在 javascript 引擎中全局注册对象,这可能会改变现有 javascript 代码的行为。
Alfresco 使用 Mozzila Rhino,它提供了通过 Java 脚本公开 Java 对象的 Java 脚本引擎。
您可以使用直接 Web 远程处理 (DWR)。从他们的网站:
DWR 是一个 Java 库,它使服务器上的 Java 和浏览器中的 JavaScript 能够尽可能简单地进行交互和调用。