我在Lotus Domino服务器中创建了一个完全空的新应用程序。然后我创建了一个XPage
,并在其中修改了onClientLoad event
,添加了此客户端javascript代码:alert("Hola");
。当我在浏览器上预览XPage
时,我收到HTTP 500内部服务器错误。服务器日志上的错误是这样的:
26/06/2013 12:54:27 HTTP JVM: SEVERE: CLFAD####E: Exception thrown
26/06/2013 12:54:27 HTTP JVM: SEVERE: CLFAD####E: Exception occurred servicing request for: /Pruebajs.nsf/prueba.xsp - HTTP Code: 500
26/06/2013 12:54:27 HTTP Web Server: Command Not Handled Exception [/Pruebajs.nsf/prueba.xsp]
如果我在Notes客户端上预览相同的XPage
,则javascript代码将成功运行。
然后我在本地计算机而不是服务器中创建了一个类似的应用程序,并且javascript代码在Web浏览器和Notes客户端中都成功运行。
所以它看起来像我们的Domino服务器中的某种配置问题(可能是授权?),但我们不知道在哪里看。
答案 0 :(得分:0)
感谢大家的帮助。 Naveen的建议非常有用。在Designer(Application - > Properties - > Tab XPages)上检查“显示XPage运行时错误”后,错误消息更有意义:
The generated page version 8.5 is not compatible with the server version 3.0, for the page /prueba.xsp.
问题是我的Notes客户端和Designer是比Domino Server(8.5)更高的版本(8.5.3)。根据此注释:http://www-10.lotus.com/ldd/ddwiki.nsf/dx/XPagesPageVersions.htm,eventHandler语法略有改变,这导致XPage被标记为版本8.5.1。这也解释了为什么当数据库是本地数据时它可以工作!
我已经尝试了注释中建议的解决方法(在页面源代码中将事件处理程序语法更改为8.5格式),并且它可以正常工作。现在我将试图说服周围的人升级服务器。
谢谢,
卡洛斯