Giter Site home page Giter Site logo

youseries / urule Goto Github PK

View Code? Open in Web Editor NEW
1.8K 112.0 719.0 12.13 MB

URULE是一款基于RETE算法的纯Java规则引擎,提供规则集、决策表、决策树、评分卡,规则流等各种规则表现工具及基于网页的可视化设计器,可快速开发出各种复杂业务规则。

License: Apache License 2.0

Java 53.99% HTML 1.22% JavaScript 43.45% ANTLR 0.28% CSS 1.06%
java rule java-rule java-rule-engine chinese-rule spring springboo

urule's Introduction

简介

URule是一款纯Java规则引擎,它以RETE算法为基础,提供了向导式规则集、脚本式规则集、决策表、交叉决策表(PRO版提供)、决策树、评分卡及决策流共六种类型的规则定义方式,配合基于WEB的设计器,可快速实现规则的定义、维护与发布。

URule提供了两个版本:一个是基于Apache-2.0协议开源免费版本,URule开源版本第一款基于Apache-2.0协议开源的中式规则引擎;另一个是商用PRO版本,点击http://www.bstek.com 了解更多关于URule商用Pro版更多信息。

               
URULE PRO版与开源版主要功能比较
特性URULE PRO版URULE开源版
向导式决策集
脚本式决策集
决策树
决策流
决策表
交叉决策表
复杂评分卡
文件名、项目名重构
参数名、变量常量名重构
Excel决策表导入
规则集模版保存与加载
中文项目名和文件名支持
服务器推送知识包到客户端功能的支持
知识包优化与压缩的支持
客户端服务器模式下大知识包的推拉支持
规则集中执行组的支持
规则流中所有节点向导式条件与动作配置的支持
循环规则多循环单元支持
循环规则中无条件执行的支持
导入项目自动重命名功能
规则树构建优化
对象查找索引支持
规则树中短路计算的支持
规则条件冗余计算缓存支持
基于方案的批量场景测试功能
知识包调用监控
更为完善的文件读写权限控制
知识包版本控制
SpringBean及Java类的热部署
技术支持

链接

文档视频教程地址:http://www.bstek.com/resources/doc/

URule PRO版在线示例:http://112.124.15.63:8084/index.html

QQ群

群号:423339793

License

Apache-2.0

urule's People

Contributors

jacky6024 avatar qchery avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

urule's Issues

多个规则在赋值参数的时候,其它规则不能获取参数

当前使用的URULE的具体版本号:

2.1.3

遇到的问题描述:

多个规则设置优先级,优先级高的规则对变量进行赋值.优先级低的规则不能获取赋值的内容.同时用更新工作区域对象的时候优先级低的规则可以获取到赋值,但是会命中2次.

涉及到的异常信息(完整异常信息):

相关截图:

image
image

循环规则可以循环List<Map<String,Object>>吗?

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

2.1.3

  • 遇到的问题详细描述:

找了所有的教程没有找到相关的,是否支持呢? 看了下视频是支持List<实体>
的功能.

  • 涉及到的异常信息(完整异常信息):

  • 相关截图:

决策表的条件判断问题

您好,我遇到这样一个问题,在决策表设定条件时,条件列设置为变量的一个属性,这个属性是List集合,元素是字符串。在表格中设置条件,想判断指定的字符串是否包含在这个集合中。如果能加一下包含的条件判断就好了。

urule在规则调用中动态insert Fact

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

2.1.4

  • 遇到的问题详细描述:

Urule现在还不能在规则调用中动态增加fact ,只能对外部传入的fact做处理。
drools可以insert变量

  • 涉及到的异常信息(完整异常信息):

  • 相关截图:

代码中如何获取规则结果?

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:2.1.3

  • 遇到的问题详细描述:代码调用的时候执行session.fireRules()后,如何得到规则的结果呢?目前看文档只有在控制台中输出?是否有可以直接获取规则结果的方法呢?

  • 涉及到的异常信息(完整异常信息):

  • 相关截图:

规则集向导编写时,facts属性直接参与运算时,页面存在空格

bug
1、规则集向导编写时,facts属性直接参与运算时,页面存在空格;
2、ElCalculator.calculate() 方法未作字符去空格处理;203行 result=first.divide(second) 进行BigDecimal除不尽时会报java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result 异常。

URULE获取知识包ID

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

urule-console 2.1.4

  • 遇到的问题详细描述:

能不能从数据库获取知识包ID或者有相应方法能够得到项目下的知识包ID

  • 涉及到的异常信息(完整异常信息):

  • 相关截图:

一个知识包包含多个决策集和决策流

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

urule-console2.1.4

  • 遇到的问题详细描述:

当一个知识包包含一个决策流(只包含一个决策集-图一),和一个决策集(图三),两个规则的条件都是一样的,分别给不同的变量赋值(图二和图四),代码分别调用规则,都能够正确执行,当先后执行决策流和决策集,第一个正确执行,第二个并没有赋值成功,走了else否则(图五)

  • 涉及到的异常信息(完整异常信息):

测试数据 固定数据.调用缓存 == 是否调用缓存.是 都是 true

  • 相关截图:

image
image

image
image
image

关于mysql数据库有些表乱码问题

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

2.02

  • 遇到的问题详细描述:

转成mysql后,下面这一堆表都不知道啥意思,一堆乱码,有大神简单说明一下吗,各种懵逼,就看懂了个存xml的表

  • 涉及到的异常信息(完整异常信息):

  • 相关截图:

table

获取决策流ID和知识包下多个决策流,调用规则代码

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

urule-console2.1.4

  • 遇到的问题详细描述:

①当规则非常多的时候,把不同对象分为不同执行规则放在规则表里,然后再一个决策流中调用n多规则,是否效率非常的低,只有通过分规则分知识包调用提高效率的方法吗?(由于规则过多,我们采取的方法是获取知识包ID以及对应的决策流ID作为参数进行knowledgeService创建)
②如果一个知识包下除了有决策表决策树外还有多个决策流,那在服务端调用规则时session.startProcess(决策流ID);要如何配置

  • 涉及到的异常信息(完整异常信息):

  • 相关截图:

决策流只支持一个参数.xml吗

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

2.1.3

  • 遇到的问题详细描述:

决策流只支持一个参数.xml吗

  • 涉及到的异常信息(完整异常信息):

  • 相关截图:

决策流中规则无论是否满足都会继续流转到后续节点?

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

2.1.4

  • 遇到的问题详细描述:

在决策流中无论是否满足规则,都会继续流转。而规则仅仅是根据条件执行了相关的动作。
之前一直以为不满足规则会自动中断决策流,这个决策流该如何理解?

  • 涉及到的异常信息(完整异常信息):

  • 相关截图:

调用URule的内置方法报空指针错误

有一种情况, 比如 if( null != a && a > 2) 像这种如果a是引用类型, 是个对象的话, 没有非空的判断, 在规则执行的时候会抛空指针异常,实际希望的结果应该是如果只配置了a > 2 没做非空判断,当前的条件分支应该直接为false了。

比如调用里面的内置方法, DateAction里的一个方法, 参数是一个Date, 但是传入是NULL, 直接抛异常了, 执行不下去了。 (具体请看下面的例子)
image

这里,如果受理时间遇到空值,直接抛出NullPointException异常了,而在配置规则处由于规则条件并不是有序的, 所以就算增加一个 【受理时间不为空的条件】也可能会存在这种问题。
image

URULE中使用求和函数报 Not support reference type

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

2.1.5

  • 遇到的问题详细描述:

编辑规则的时候,可以保存。但是再次打开就会报上述错误。
看了一下似乎使用“函数”功能就会报这个错误。阅读源码发现是leftParser这个类里面的parse方法里面的一个switch语句。在commonfunction这个分支之后没有加break。
请问是有意这样写还是一时疏忽?望解答。谢谢。

  • 涉及到的异常信息(完整异常信息):

com.bstek.urule.RuleException: Not support reference type.
at com.bstek.urule.parse.LeftParser.parse(LeftParser.java:63)
at com.bstek.urule.parse.CriteriaParser.parse(CriteriaParser.java:44)
at com.bstek.urule.parse.CriteriaParser.parse(CriteriaParser.java:28)
at com.bstek.urule.parse.CriterionParser.parseCriterion(CriterionParser.java:46)
at com.bstek.urule.parse.JunctionParser.parse(JunctionParser.java:31)
at com.bstek.urule.parse.JunctionParser.parse(JunctionParser.java:29)
at com.bstek.urule.parse.LhsParser.parseCriterion(LhsParser.java:50)
at com.bstek.urule.parse.LhsParser.parse(LhsParser.java:36)
at com.bstek.urule.parse.AbstractRuleParser.parseRule(AbstractRuleParser.java:84)
at com.bstek.urule.parse.RuleParser.parse(RuleParser.java:29)
at com.bstek.urule.parse.RuleSetParser.parse(RuleSetParser.java:55)
at com.bstek.urule.parse.deserializer.RuleSetDeserializer.deserialize(RuleSetDeserializer.java:31)
at com.bstek.urule.parse.deserializer.RuleSetDeserializer.deserialize(RuleSetDeserializer.java:27)
at com.bstek.urule.console.servlet.common.CommonServletHandler.loadXml(CommonServletHandler.java:283)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.bstek.urule.console.servlet.BaseServletHandler.invokeMethod(BaseServletHandler.java:38)
at com.bstek.urule.console.servlet.common.CommonServletHandler.execute(CommonServletHandler.java:79)
at com.bstek.urule.console.servlet.URuleServlet.service(URuleServlet.java:84)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:669)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1336)
at com.jfinal.core.JFinalFilter.doFilter(JFinalFilter.java:84)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
at cn.ffcs.bigdata.base.filter.LoginFilter.doFilter(LoginFilter.java:74)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
at org.jasig.cas.client.util.AssertionThreadLocalFilter.doFilter(AssertionThreadLocalFilter.java:54)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
at org.jasig.cas.client.util.HttpServletRequestWrapperFilter.doFilter(HttpServletRequestWrapperFilter.java:75)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
at org.jasig.cas.client.validation.AbstractTicketValidationFilter.doFilter(AbstractTicketValidationFilter.java:201)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
at cn.ffcs.bigdata.base.filter.CasAuthenticationFilter.doFilter(CasAuthenticationFilter.java:79)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
at org.jasig.cas.client.session.SingleSignOutFilter.doFilter(SingleSignOutFilter.java:76)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:453)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:560)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
at org.eclipse.jetty.server.Server.handle(Server.java:365)
at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:937)
at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:998)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:856)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
at java.lang.Thread.run(Thread.java:745)

  • 相关截图:

urule2整合到springMVC框架,对知识包进行仿真测试,后台获取不了参数

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

urule-console 2.1.3

  • 遇到的问题详细描述:

urule2整合到springMVC框架,对知识包进行仿真测试,后台获取不了参数

  • 涉及到的异常信息(完整异常信息):

后台输出:
^^^条件:[变量]会员.年龄【大于】[字符]18 =>不满足, 左值:null, 右值:18
???控制台输出:Rule1不满足
???控制台输出:会员的年龄:null
???控制台输出:会员的名称:null
如图:
qq 5

  • 相关截图:

qq 2

qq 4

qq 1

qq 5

URULE部署的问题

1 URULE独立部署时,客户端能否做的较量些,也就是在client端,不去集成urule-core,比如,client端可通过restful或webservice等通讯方式,通过json将数据发送到server端,server端对json解析后再映射到变量库内。
2 server端处理后的响应结果,通过json返回给client端,json内可包含命中的规则及参数库内规则涉及的结果参数。

变量库类型选择支持自定义对象

  • 当前使用的URule的具体版本号:

2.1.4

  • 遇到的问题详细描述:

目前,变更库配置时,复杂对象只能配置成 Object,无法配置复杂度较高的规则

  • 涉及到的异常信息(完整异常信息):

  • 相关截图:

jietu20180107-134645

可以参考 Drools 的规则配置

default

drools

保存版本失败

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

2.0.4

  • 遇到的问题详细描述:

重启服务后,保存版本,数据库连接仍然失败

  • 涉及到的异常信息(完整异常信息):

[Failed to persist ChangeLog (stacktrace on DEBUG log level), blockOnConnectionLoss = false: org.apache.jackrabbit.core.state.ItemStateException: Communications link failure

  • 相关截图:

在urule-springboot 项目中怎么配置连接mysql, 把规则保存于mysql 中

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

2.1.3

  • 遇到的问题详细描述:

在urule-springboot 项目中怎么配置连接mysql, 把规则保存于mysql 中

  • 涉及到的异常信息(完整异常信息):

  • 相关截图:

评分卡的得分计算方式为自定义时,指定的Bean中无法获取行信息,行数为0

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

版本号:2.1.1

  • 遇到的问题详细描述:

评分卡的得分计算方式为自定义时,指定的Bean中无法获取行信息,行数为0
下面截图的例子中应该为2

  • 涉及到的异常信息(完整异常信息):

无异常信息

  • 相关截图:

1
2

决策流规则事件不执行

由于RuleNodeParser类,解析方法里面没有解析xml中event-bean节点,导致规则流事件不执行,后来在解析方法里面加入node.setEventBean(element.attributeValue("event-bean")); 问题解决

如何定义固定的list或数组常量或变量用于条件判断(不在集合中)?

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

2.1.4

  • 遇到的问题详细描述:

需求:if 某某.职业 不在集合("学生","警察")
问题:如何定义这样的条件,怎么定义一个list("学生","警察") 常量或变量

  • 涉及到的异常信息(完整异常信息):

  • 相关截图:

urule采用数据库存储没有成功

image
image

图1是配置,图2采用直连mysql的方式

这是springboot的 application.properties:
#urule.repository.dir=/Users/forezp/Downloads/com
server.port=8081

完全按照文档来的一直成功不来
版本2.1.4快照版

osgi+内置jetty集成Ureport

为了您的问题能得到及时准确解答,请认真填写下面各个选项,感谢您的配合。

  • 当前使用的URule的具体版本号:

2.2.3

  • 遇到的问题详细描述:

操作过程

1、新建一个插件ureport
2、将console改成ureport的fragement,将core与font改成普通插件
3、添加相关依赖与配置(xml文件放在ureport的WEB-INF/resource)
4、启动程序,能访问https://jiangchen/report,但是输入https://jiangchen/report/ureport
报500

猜测ureport的服务没启动
结果
WebApplicationContext获取到

  • 涉及到的异常信息(完整异常信息):

  • 相关截图:

决策流加载空资源文件的时候报错

决策流在加载空的资源文件的时候会报空指针异常

类ResourceLibraryBuilder,第47行代码,加上如下校验:

if (!builder.support(root) || !root.hasContent()) { continue; }
内容为空的资源文件就不加载

使用2.1.1时点击知识库会报错,切换到2.1就不会有问题

报错截图:

snipaste20171211_164354

后台日志:

Using CATALINA_HOME:   "D:\Work\bin-java\apache-tomcat\apache-tomcat-8.5.20"
Using CATALINA_TMPDIR: "D:\Work\bin-java\apache-tomcat\apache-tomcat-8.5.20\temp"
Using JRE_HOME:        "D:\Work\Lab\bin\Java\jdk1.8.0_121"
Using CLASSPATH:       "D:\Work\bin-java\apache-tomcat\apache-tomcat-8.5.20\bin\bootstrap.jar;D:\Work\bin-java\apache-tomcat\apache-tomcat-8.5.20\bin\tomcat-juli.jar"
11-Dec-2017 16:41:58.837 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Server version:        Apache Tomcat/8.5.20
11-Dec-2017 16:41:58.841 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Aug 2 2017 21:35:49 UTC
11-Dec-2017 16:41:58.842 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Server number:         8.5.20.0
11-Dec-2017 16:41:58.842 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Windows 10
11-Dec-2017 16:41:58.842 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            10.0
11-Dec-2017 16:41:58.842 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          amd64
11-Dec-2017 16:41:58.842 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             D:\Work\Lab\bin\Java\jdk1.8.0_121\jre
11-Dec-2017 16:41:58.842 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           1.8.0_121-b13
11-Dec-2017 16:41:58.843 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:            Oracle Corporation
11-Dec-2017 16:41:58.843 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         D:\Work\Lab\bin\JetBrains\data-idea\system\tomcat\Unnamed_wukong-practice-urule
11-Dec-2017 16:41:58.843 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         D:\Work\bin-java\apache-tomcat\apache-tomcat-8.5.20
11-Dec-2017 16:41:58.843 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=D:\Work\Lab\bin\JetBrains\data-idea\system\tomcat\Unnamed_wukong-practice-urule\conf\logging.properties
11-Dec-2017 16:41:58.844 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
11-Dec-2017 16:41:58.844 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote=
11-Dec-2017 16:41:58.844 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.port=1099
11-Dec-2017 16:41:58.844 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.ssl=false
11-Dec-2017 16:41:58.845 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.authenticate=false
11-Dec-2017 16:41:58.845 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.rmi.server.hostname=127.0.0.1
11-Dec-2017 16:41:58.845 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
11-Dec-2017 16:41:58.845 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
11-Dec-2017 16:41:58.845 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=D:\Work\Lab\bin\JetBrains\data-idea\system\tomcat\Unnamed_wukong-practice-urule
11-Dec-2017 16:41:58.845 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=D:\Work\bin-java\apache-tomcat\apache-tomcat-8.5.20
11-Dec-2017 16:41:58.845 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=D:\Work\bin-java\apache-tomcat\apache-tomcat-8.5.20\temp
11-Dec-2017 16:41:58.845 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded APR based Apache Tomcat Native library [1.2.12] using APR version [1.5.2].
11-Dec-2017 16:41:58.846 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
11-Dec-2017 16:41:58.846 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true]
11-Dec-2017 16:41:59.954 信息 [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized [OpenSSL 1.0.2k  26 Jan 2017]
11-Dec-2017 16:42:00.360 信息 [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
11-Dec-2017 16:42:00.411 信息 [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
11-Dec-2017 16:42:00.422 信息 [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-nio-8009"]
11-Dec-2017 16:42:00.432 信息 [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
11-Dec-2017 16:42:00.433 信息 [main] org.apache.catalina.startup.Catalina.load Initialization processed in 2145 ms
11-Dec-2017 16:42:00.493 信息 [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina]
11-Dec-2017 16:42:00.493 信息 [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.5.20
11-Dec-2017 16:42:00.552 信息 [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
11-Dec-2017 16:42:00.572 信息 [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"]
11-Dec-2017 16:42:00.583 信息 [main] org.apache.catalina.startup.Catalina.start Server startup in 149 ms
Connected to server
[2017-12-11 04:42:00,737] Artifact wukong-practice-urule:war exploded: Artifact is being deployed, please wait...
11-Dec-2017 16:42:10.556 信息 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [D:\Work\bin-java\apache-tomcat\apache-tomcat-8.5.20\webapps\manager]
11-Dec-2017 16:42:10.811 信息 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [D:\Work\bin-java\apache-tomcat\apache-tomcat-8.5.20\webapps\manager] has finished in [254] ms
11-Dec-2017 16:42:14.207 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
11-Dec-2017 16:42:14.399 信息 [RMI TCP Connection(3)-127.0.0.1] org.springframework.web.context.ContextLoader.initWebApplicationContext Root WebApplicationContext: initialization started
11-Dec-2017 16:42:15.172 信息 [RMI TCP Connection(3)-127.0.0.1] org.springframework.context.support.AbstractApplicationContext.prepareRefresh Refreshing Root WebApplicationContext: startup date [Mon Dec 11 16:42:15 CST 2017]; root of context hierarchy
11-Dec-2017 16:42:15.914 信息 [RMI TCP Connection(3)-127.0.0.1] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions Loading XML bean definitions from file [D:\Work\Lab\ws-wukong\wukong-practice-urule\target\wkp-urule-0.0.1\WEB-INF\classes\spring-context-urule.xml]
11-Dec-2017 16:42:16.257 信息 [RMI TCP Connection(3)-127.0.0.1] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions Loading XML bean definitions from class path resource [urule-console-context.xml]
11-Dec-2017 16:42:16.308 信息 [RMI TCP Connection(3)-127.0.0.1] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions Loading XML bean definitions from class path resource [urule-core-context.xml]
11-Dec-2017 16:42:17.863 信息 [RMI TCP Connection(3)-127.0.0.1] org.springframework.core.io.support.PropertiesLoaderSupport.loadProperties Loading properties file from class path resource [urule-conf.properties]
11-Dec-2017 16:42:17.881 信息 [RMI TCP Connection(3)-127.0.0.1] org.springframework.core.io.support.PropertiesLoaderSupport.loadProperties Loading properties file from class path resource [urule-core-context.properties]
11-Dec-2017 16:42:17.885 信息 [RMI TCP Connection(3)-127.0.0.1] org.springframework.core.io.support.PropertiesLoaderSupport.loadProperties Loading properties file from class path resource [urule-console-context.properties]
Load built in actions...
11-Dec-2017 16:42:18.381 信息 [RMI TCP Connection(3)-127.0.0.1] com.bstek.urule.console.repository.RepositoryBuilder.initRepositoryDir Use "D:/tmp/urule" as urule repository home directory.
11-Dec-2017 16:42:19.023 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jackrabbit.core.RepositoryImpl.<init> Starting repository...
11-Dec-2017 16:42:19.032 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jackrabbit.core.fs.local.LocalFileSystem.init LocalFileSystem initialized at path D:\tmp\urule\repository
11-Dec-2017 16:42:19.458 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jackrabbit.core.nodetype.NodeTypeRegistry.loadCustomNodeTypeDefs no custom node type definitions found
11-Dec-2017 16:42:19.579 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jackrabbit.core.fs.local.LocalFileSystem.init LocalFileSystem initialized at path D:\tmp\urule\version
11-Dec-2017 16:42:19.662 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jackrabbit.core.fs.local.LocalFileSystem.init LocalFileSystem initialized at path D:\tmp\urule\version\blobs
11-Dec-2017 16:42:20.084 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.initialize initializing workspace 'default'...
11-Dec-2017 16:42:20.085 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jackrabbit.core.fs.local.LocalFileSystem.init LocalFileSystem initialized at path D:\tmp\urule\workspaces\default
11-Dec-2017 16:42:20.087 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jackrabbit.core.fs.local.LocalFileSystem.init LocalFileSystem initialized at path D:\tmp\urule\workspaces\default\blobs
11-Dec-2017 16:42:20.534 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.initialize workspace 'default' initialized
11-Dec-2017 16:42:20.587 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jackrabbit.core.RepositoryImpl.initSecurityManager SecurityManager = class org.apache.jackrabbit.core.security.simple.SimpleSecurityManager
11-Dec-2017 16:42:20.601 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jackrabbit.core.security.simple.SimpleSecurityManager.init init: using Repository LoginModule configuration for uruleRepoSecurity
11-Dec-2017 16:42:20.629 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jackrabbit.core.RepositoryImpl.<init> Repository started (1606ms)

_____  __________ _____  ________ ________________ 
__  / / /___  __ \__  / / /___  / ___  ____/__|__ \
_  / / / __  /_/ /_  / / / __  /  __  __/   ____/ /
/ /_/ /  _  _, _/ / /_/ /  _  /____  /___   _  __/ 
\____/   /_/ |_|  \____/   /_____//_____/   /____/ 
.....................................................................................................
.  uRule, is a Chinese style rule engine licensed under the Apache License 2.0,                     .
.  which is opensource, easy to use,high-performance, with browser-based-designer.                  .
.....................................................................................................

11-Dec-2017 16:42:22.623 信息 [RMI TCP Connection(3)-127.0.0.1] org.springframework.web.context.ContextLoader.initWebApplicationContext Root WebApplicationContext: initialization completed in 8223 ms
[2017-12-11 04:42:22,698] Artifact wukong-practice-urule:war exploded: Artifact is deployed successfully
[2017-12-11 04:42:22,698] Artifact wukong-practice-urule:war exploded: Deploy took 21,961 milliseconds
java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.bstek.urule.console.servlet.BaseServletHandler.invokeMethod(BaseServletHandler.java:38)
	at com.bstek.urule.console.servlet.respackage.PackageServletHandler.execute(PackageServletHandler.java:110)
	at com.bstek.urule.console.servlet.URuleServlet.service(URuleServlet.java:80)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1457)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
	at com.bstek.urule.console.repository.RepositoryServiceImpl.createFile(RepositoryServiceImpl.java:943)
	at com.bstek.urule.console.repository.RepositoryServiceImpl.loadProjectResourcePackages(RepositoryServiceImpl.java:978)
	at com.bstek.urule.console.servlet.respackage.PackageServletHandler.loadPackages(PackageServletHandler.java:125)
	... 34 more

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.