Lotus notes 在代理中运行服务器端javascript
有没有办法在LotusNotes中定期运行服务器端javascript 我尝试用这个简单的脚本创建一个java代理Lotus notes 在代理中运行服务器端javascript,lotus-notes,xpages,xpages-ssjs,Lotus Notes,Xpages,Xpages Ssjs,有没有办法在LotusNotes中定期运行服务器端javascript 我尝试用这个简单的脚本创建一个java代理 ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEngineByName("JavaScript"); Bindings bindings = engine.createBindings(); bindi
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("JavaScript");
Bindings bindings = engine.createBindings();
bindings.put("session", session);
Object result = engine.eval("var v:NotesView = session.getCurrentDatabase().getView('allDocumentsByFormName');print(v.getTitle());"
,
bindings);
System.out.println(result);
但它不起作用
你有什么建议吗?嗯。。。。我认为这是不可能的 这方面的一个主要障碍是XPages JVM和agent manager JVM不同。这就是为什么不能在代理中重用Java类(8.5.3中的新设计元素) 但是,您展示的代码示例可以很容易地编码为“标准”Java代理,只需使用Java即可。我知道这个示例可能只是为了演示,但是您拥有Java中可用的所有后端类,因此您可以用纯Java编写所需的代码。它是稳定的、可伸缩的——只要您记得回收对象(在Java中总是如此);-)
/约翰,别麻烦了。最好是使用DOTs或通过调用URL的调度代理触发。我建议用LotusScript编写一个调度代理。我知道语法可能不熟悉,但在本机上执行某些操作要比在鞋上磨角容易得多。谢谢,听起来不错,但如果我通过
URL=new URL(“http://server/db.nsf/xAgent.xsp"); URLConnection conn=url.openConnection()代码>我有一个登录问题,因为代理必须经过身份验证,很抱歉这个愚蠢的问题,但是DOT是什么?那么,你怎么期望定期的服务器端代理知道要使用什么身份?如果你编写的XAgent不使用URL中的任何内容,你可以使用sessionAsSigner而不是身份验证。DOTS a.k.a在OpenNTFS上,您可以使用Apache HTTP客户端并使用Java类从服务器生成会话令牌感谢这些伟大的技巧,我认为其中一个可以解决我的问题。是的,但在我的情况下,这不起作用。因为我所有的脚本都是用ssjs编写的,我想重用它。