在哪种基于 JVM 的脚本语言支持 @WebService 在运行时创建服务?有人建议我使用 Groovy 提供在运行时读取的脚本中配置的 Web 服务。
为了使这项工作与我们现有的基础设施一起工作,我基本上需要能够向 a 添加新条目,List<Callable<String>>
然后我可以要求执行者在其上调用任何内容。
基本结构将类似于:
- Groovy 是使用嵌入的
GroovyScriptEngine
- 在传入的绑定中作为“l”从 Java 传入的初始列表。
- Groovy 脚本定义并实例化 N 个对象,全部实现
Callable<String>
并将它们添加到列表中。 - 回到 Java 中,列表会被进一步处理,然后传递给执行器。
我最初的微弱步骤表明我很可能需要使用def c = { ... } as Callable<String>
,但随后我得到了 ClassCastException。阅读我发现这似乎有点困难并且涉及关闭。
在 Groovy 中定义和实例化对象的正确方法是什么Callable<String>
?