XPage java类导致com.ibm.designer.domino.napi.NotesAPIException

XPage java类导致com.ibm.designer.domino.napi.NotesAPIException,java,xpages,lotus-domino,domino-designer-eclipse,Java,Xpages,Lotus Domino,Domino Designer Eclipse,domino版本9.0.1 设计器版本9.0.1 (我稍微更改了堆栈跟踪的文本,以便将客户从图片中删除。) 在开发环境中,每隔一段时间,我就会在服务器日志中看到以下stacktrace: > 7.01.2014 17:01:13 HTTP JVM: com.ibm.designer.domino.napi.NotesAPIException: File access error: > Error while getting information on item $FileDat

domino版本9.0.1 设计器版本9.0.1

(我稍微更改了堆栈跟踪的文本,以便将客户从图片中删除。)

在开发环境中,每隔一段时间,我就会在服务器日志中看到以下stacktrace:

> 7.01.2014 17:01:13   HTTP JVM: com.ibm.designer.domino.napi.NotesAPIException: File access error:
> Error while getting information on item $FileData
> 17.01.2014 17:01:13   HTTP JVM: Note item not found. For more detailed information, please consult error-log-0.xml located in
> c:/Domino/data/domino/workspace/logs
> 17.01.2014 17:01:13   HTTP JVM: Managedbean DatabaseController could not be created Can't instantiate class:
> 'de.holistic.cust.epr.EprDatabaseController'..
> java.lang.ClassNotFoundException: class
> java.lang.ClassNotFoundException:
> de.holistic.cust.epr.EprDatabaseController. For more de
> 17.01.2014 17:01:13   HTTP JVM: ailed information, please consult error-log-0.xml located in c:/Domino/data/domino/workspace/logs
> 17.01.2014 17:01:13   HTTP JVM: com.ibm.xsp.webapp.FacesServlet$ExtendedServletException:
> com.ibm.xsp.exception.EvaluationExceptionEx: Error while executing
> JavaScript computed expression
xml日志文件中的以下内容不显示任何承诺的额外信息

 com.ibm.designer.domino.napi.NotesAPIException: File access error: Error while getting information on item $FileData Note item not found
此异常有时还与SecurityException结合使用。
1.重新调整数据库不会做任何事情
2.更改类和xpage并重新保存有时会解决一次问题,或者这只是我尝试的时间
3.重新启动HTTP任务/服务器不会造成任何不同
4.清洁和建筑没有任何作用

在google搜索这个问题后,一些人在“普通设计器”透视图的java区域中存储java类时遇到了这个问题。我在自定义源文件夹“WebContent/WEB-INF/src”中有我的java代码


还有其他人有这个问题吗?如果是,如何才能最好地解决?这是XPage实现中的错误吗?我在jar文件中没有java类的问题,只是在需要编译源代码时。虽然可以使用jar文件而不是原始类交付应用程序,但在开发环境中这是不切实际的。任何帮助都将不胜感激。

编译的java类存储在设计说明的$FileData项中,java源代码保存在该项中。因此,该错误意味着编译后的代码丢失,而不是由服务器生成的。下面是一些我认为可能有助于调试此问题的内容

  • 在designer中打开项目视图,修改过滤器以显示java类,以检查它们是否可用
  • 检查java源文件夹是否位于生成路径上
  • 选中“自动重建”选项
  • 如果开发在本地,并通过设计刷新或替换部署到服务器。检查类在此过程中是否丢失

  • 通过更改堆栈跟踪中列出的类的名称,然后重新命名,我暂时解决了这个问题。在我看来,这似乎是一个创可贴解决方案,并没有真正纠正原因。有没有办法防止这种情况再次发生?我是不是做错了什么导致了这个错误?这里最好的做法是让IBM支持人员参与检查这个查询。我想补充第5点。请注意designer右下角的进度图标,确保您等待了足够长的时间来构建复杂的应用程序。构建这个特定的应用程序需要5分钟(不要问我为什么)。因为我等待的时间不够长,浏览器无法使用本地java文件,导致出现异常。@Greg该建筑包含大量进度。e、 g.恢复元数据、构建、刷新、初始化。与经典notes应用程序相比,主要区别在于检索所有设计元素并编译java和ls。如果应用程序所在的服务器不如本地服务器快(网络),则通常需要几分钟才能构建。如果服务器速度太慢,那么构建过程将永远耗时。因此,如果是这样,就在本地开发和构建应用程序,并将其部署到服务器上。