- 👋 Hi, I’m @b1412
- 👀 I’m interested in ...
- 🌱 I’m currently learning ...
- 💞️ I’m looking to collaborate on ...
- 📫 How to reach me ...
b1412 / jfinal-ext Goto Github PK
View Code? Open in Web Editor NEWOur extensions for jfinal
Our extensions for jfinal
类似#10
只要有一样的crontab规则的只加载一个,这个在osc也提了,但是没人理。
因为这个bug我们监控停了一周。。。
望尽快修复,避免更多人掉进这个坑
如果使用了两个以上的资源文件的时候,插件不会加载所有的资源文件。
问题出现在ConfigKit.java的81行:
map = ResourceKit.readProperties(fileName);
应该改为
map.putAll(ResourceKit.readProperties(fileName));
同样的问题在83行,希望尽快修正。
表自动映射的时候,无法读取到表。如:数据库中有 user 表,但是启动的时候,提示 user 包不存在。
环境:jdk7+tomcat7+mysql5.1
您好:
使用AutoTableBindPlugin在maven单元测试时,插件通过PathKit.getRootClassPath()默认识别的classpath是【project_root\target\test-classes\】目录,而这个目录下通常没有项目使用的model文件,因为只是针对测试生成的路径。
由于model文件通常都放置在【project_root\target\classes\】目录下,因此做了一下classpath指定:
String cp = PathKit.getRootClassPath();// target\test-classes
String path = rp.substring(0, cp.lastIndexOf("")).concat("\classes");
atbp.classpath(path);
指定后插件可以扫描到正确的classpath,但出现了另一个问题:获取到的全部class文件都少了一部分内容!即,原本名为foobar.model.demo的class被识别成了“r.model.demo”!
查看了下插件源码,发现open里面依然用了原来的classpath(ClassSearcher的83行):
String open = PathKit.getRootClassPath() + File.separator;
导致自定义的classpath被截断了。
麻烦作者确认下是否为bug?
或者说是classpath设定的使用方法不正确?
Preconditions.checkArgument(!clazz.getSimpleName().endsWith(suffix),
clazz.getSimpleName()+ " does not has a ControllerBind annotation and it,s name is not end with " + suffix);
多了个!吧……
public static void checkArgument(boolean expression, Object errorMessage)
{
if(!expression)
throw new IllegalArgumentException(String.valueOf(errorMessage));
else
return;
}
版本是3.1.0.
其中 com.jfinal.ext.kit.ClassSearcher Line 38 Class<?> classInFile = Reflect.on(classFile).get();
这里on方法里会调用forName 该方法将会执行static代码块,而我做Annotation时,不希望static执行,而是实例化时执行。
2 关于其中的search方法 Line 167 List classFileList = findFiles(classpath, "*.class"); 这里,有比较严重的hardcode 代码 Line 80处 classname = tem.substring(tem.indexOf("/classes") + "/classes".length() + 1, tem.indexOf(".class")); 如果目录中不幸含有classes,或者是 目录本身不包括/classes的话,这两种可能性在WEB项目里有可能性,但是在unit test里是可能性很大的。
line 168 classFileList.addAll(findjarFiles(libDir, includeJars));
private String libDir = PathKit.getWebRootPath() + File.separator + "WEB-INF" + File.separator + "lib";
这里是针对web项目的, 而且对于一些embed的容器, libs是直接可能是直接在classpath里指定的。 就会出现问题
请问com.jfinal.ext.interceptor.pageinfo下的动态查询怎么用?
如题,如何运行类似db.runCommand()命令? 求指教,感谢
logger.class 在最新的jfinal(2.2)中已经不存在了
SqlInXmlPlugin 能不能指定目录啊,都放根目录下有点乱,不易维护
比如,我不使用dwz,那么就不用dwz的相关代码了。
当然,我可以自己编译一份,但是感觉还是独立出来比较好。
private String deleteColumnLabel = "deleteflag";
不能自定义
期望改下logger
同时推荐restful框架 https://github.com/Dreampie/resty
xml文件放在项目的根目录中resource文件夹。经过调试,调到这一步的时候“ File file = new File(SqlKit.class.getClassLoader().getResource("").getFile());”,file是空的。无法扫描到xml文件。请问是什么问题?还需要配置哪里吗?
具体文件路径为:com.jfinal.ext.kit.ClassSearcher 中的第87行。
String className = fileName.substring(start + open.length(), end).trim().replaceAll(File.separator, ".");
报错如下:
严重: Exception starting filter jfinal
java.util.regex.PatternSyntaxException: Unexpected internal error near index 1
^
处理方法是将改行的replaceAll 改为replace 。
运行环境为windows 7 ,jdk 为1.7
我运行了某些类的main方法,jetty也提示运行成功但是就是无法访问到,是链接不对吗
try {
fis = new FileInputStream(file);
hwb = new HSSFWorkbook(fis);
} catch (Exception e) {
logger.error("create excel error", e);
return Maps.newHashMap();
}
建议改成
Workbook hwb = null;
try {
fis = new FileInputStream(file);
//兼容2003和2007
hwb = WorkbookFactory.create(fis);
} catch (Exception e) {
logger.error("create excel error", e);
return Maps.newHashMap();
}
我使用的maven版本,使用3.1.2的QuartzPlugin时候,代码中加入如下:
QuartzPlugin quartzPlugin = new QuartzPlugin("job.properties");
me.add(quartzPlugin);
出现异常信息
Exception in thread "main" java.lang.InstantiationError: org.quartz.JobDetail
at com.jfinal.ext.plugin.quartz.QuartzPlugin.start(QuartzPlugin.java:76)
at com.jfinal.core.Config.startPlugins(Config.java:87)
at com.jfinal.core.Config.configJFinal(Config.java:48)
at com.jfinal.core.JFinal.init(JFinal.java:65)
at com.jfinal.core.JFinalFilter.init(JFinalFilter.java:49)
at org.eclipse.jetty.servlet.FilterHolder.doStart(FilterHolder.java:119)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:724)
at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265)
at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)
at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
at org.eclipse.jetty.server.Server.doStart(Server.java:277)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
at com.jfinal.server.JettyServer.doStart(JettyServer.java:121)
at com.jfinal.server.JettyServer.start(JettyServer.java:64)
at com.jfinal.core.JFinal.start(JFinal.java:137)
at com.dk.common.StartServer.main(StartServer.java:7)
换成3.1.3版本,继续跑出现以下异常:
java.util.regex.PatternSyntaxException: Unexpected internal error near index 1
^
at java.util.regex.Pattern.error(Pattern.java:1955)
at java.util.regex.Pattern.compile(Pattern.java:1702)
at java.util.regex.Pattern.(Pattern.java:1351)
at java.util.regex.Pattern.compile(Pattern.java:1028)
at java.lang.String.replaceAll(String.java:2211)
at com.jfinal.ext.kit.ClassSearcher.findFiles(ClassSearcher.java:87)
at com.jfinal.ext.kit.ClassSearcher.findFiles(ClassSearcher.java:79)
at com.jfinal.ext.kit.ClassSearcher.findFiles(ClassSearcher.java:79)
at com.jfinal.ext.kit.ClassSearcher.findFiles(ClassSearcher.java:79)
at com.jfinal.ext.kit.ClassSearcher.search(ClassSearcher.java:137)
不懂3.1.3版本的ClassSearcher有更改什么。
最后我按照八皮的http://my.oschina.net/b1412/blog/68082
重写了QuartzPlugin,使用3.1.2版本可以正常运行起来,希望作者能够维护一下
应改为model.set(columnName, record.get(columnName));
如题:resource参数没有起到任何作用,难道是我看错了还是源码不是最新的?maven源码如下:
public ConfigPlugin excludeResource(String... resource) {
if (includeResources != null) {
for (String excludeResource : excludeResources) {
excludeResources.add(excludeResource);
}
}
return this;
}
可以使maven 发布时 只配置下载包本身么
jfinal2.0已经发布好长时间了,jfinal-ext为什么还不更新,里面的shiroPlugin已经不能用了,希望作者能够抓紧更新
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.