JFial 在非web程序里使用,调用ActiveRecordPlugin的start()方法时报错误。
//连接平台的数据库
dpA = new DruidPlugin("jdbc:oracle:thin:@172.16.96.128:1521:orcl","info_platform", "info_platform");
dpA.setDriverClass("oracle.jdbc.driver.OracleDriver");
dpA.setValidationQuery("select 1 FROM DUAL");
b = dpA.start();
if(!b) return b;
arpA = new ActiveRecordPlugin("A", dpA);
arpA.setDialect(new OracleDialect());
//设置大小写不敏感
arpA.setContainerFactory(new CaseInsensitiveContainerFactory());
b = arpA.start();
调用上面那个start的时候,在debug模式下,会报异常。但在run模式下不报错,并且能正常查询数据库。
但这样的话,我就没法debug程序了。
以上使用是jfinal2.0,并且是在非web应用上使用。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(10)
最后把这个问题总结一下,我当时用的是myeclipse2015的测试版,就出了那个问题了,后来换回myeclipse6,就没问题了,现在使用myeclipse2014,也没问题的。特在此总结一下,后来人希望引以为戒。
麻烦你帮忙看看行不?谢谢了!
我把log4j的jar也加进去了。debug的时候,还是异常,就是执行start方法导致的。麻烦各位高手给看看。
是不是相应的log的jar包我没加进去?
debug模式难道依赖了log组件lib你没配置吗?
具体报什么异常,这个问题很好解决,本质上来说 ActiveRecordPlugin 是否在 web 下使用都是一样的,因为他完全不依赖于 web,唯一的不同点是 jfinal 框架会主动调用其 start() 与 stop() 方法。
关键是不出异常信息,就在执行start后,就出不来了。eclipse上只显示我贴的那个图的信息。就是debug的时候会出这个问题,如果直接run,就没问题,也能连上数据库,也能使用。为什么会这样啊。
你看看我又发的图片,都觉得好奇怪的。我是在mycelipse2015上做得。我用 try{ JbServer.arpJB.start(); }catch(Exception e){ System.out.println(e.getMessage()); } 都捕捉不到错误,就是一debug,就断掉后,报错,进行不下去了。
我今天把Jfinal的源码拿出来放到的项目里进行单步跟踪,发现到了TableBuild方法里有一个config.getsource.getconnection这个方法就出错了,后面再没法跟进去了。我换了c3p0接连,也是一样的状况。
引用来自“会哭的鳄鱼”的评论
麻烦你帮忙看看行不?谢谢了!