我正在尝试使用 SVNKit 来获取 Coldfusion 中 SVN 条目的日志。我下载了最新的 SVNKit jar 文件并将它们扔到 WEB-INF/lib 下的 lib 文件夹中。
这是我的代码,它应该返回一个日志条目数组,但此代码在 Coldfusion 9.0.2 中返回一个空指针异常。
SVNURL = createObject('java','org.tmatesoft.svn.core.SVNURL').parseURIEncoded(svnurl);
drf = createObject("java","org.tmatesoft.svn.core.internal.io.dav.DAVRepositoryFactory");
drf.setup();
rf = drf.create(SVNURL);
SVNWCUtil = createObject("java","org.tmatesoft.svn.core.wc.SVNWCUtil");
authManager = SVNWCUtil.createDefaultAuthenticationManager(user,pass);
rf.setAuthenticationManager(authManager);
log = rf.log(JavaCast("String[]",[]),JavaCast("null",""),JavaCast("long",10),JavaCast("long",15),true,true);
rf.closeSession();
运行此代码时,我收到以下错误。
系统试图使用未定义的值,这通常表示您的代码或某些系统代码中的编程错误。空指针是未定义值的另一个名称。
这指向这条线..
log = rf.log(JavaCast("String[]",[]),JavaCast("null",""),JavaCast("long",10),JavaCast("long",15),true,true);
我将相同的代码移至 Railo,一切运行良好。我只是不明白为什么 ACF 在 log() 方法上窒息。
我正在使用 SVNKit Wiki 上的打印存储库历史示例来启动我。
任何关于让它在 Adobe Coldfusion 中工作的建议将不胜感激。我没有在CF10上测试。