NutzCN Logo
问答 权限管理的页面及入口方法---启动并观察日志 报错 java.lang.NullPointerException
发布于 1668天前 作者 linGe0712 2382 次浏览 复制 上一个帖子 下一个帖子
标签:

G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31\bin\catalina.bat run
[2019-09-04 03:12:46,856] Artifact nutzbook:war: Waiting for server connection to start artifact deployment...
Using CATALINA_BASE: "C:\Users\Administrator.IntelliJIdea2018.2\system\tomcat\Unnamed_nutzbook"
Using CATALINA_HOME: "G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31"
Using CATALINA_TMPDIR: "G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31\temp"
Using JRE_HOME: "F:\java\jdk1.8.0"
Using CLASSPATH: "G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31\bin\bootstrap.jar;G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31\bin\tomcat-juli.jar"
04-Sep-2019 15:12:47.555 警告 [main] org.apache.catalina.startup.ClassLoaderFactory.validateFile Problem with directory [G:\develop\apache-tomcat-8.5.31-windows-64??\apache-tomcat-8.5.31\lib], exists: [false], isDirectory: [false], canRead: [false]
04-Sep-2019 15:12:47.557 警告 [main] org.apache.catalina.startup.ClassLoaderFactory.validateFile Problem with directory [G:\develop\apache-tomcat-8.5.31-windows-64??\apache-tomcat-8.5.31\lib], exists: [false], isDirectory: [false], canRead: [false]
04-Sep-2019 15:12:48.235 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Server version: Apache Tomcat/8.5.31
04-Sep-2019 15:12:48.236 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Server built: Apr 27 2018 20:24:25 UTC
04-Sep-2019 15:12:48.236 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Server number: 8.5.31.0
04-Sep-2019 15:12:48.236 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Windows 10
04-Sep-2019 15:12:48.236 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version: 10.0
04-Sep-2019 15:12:48.236 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture: amd64
04-Sep-2019 15:12:48.237 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home: F:\java\jdk1.8.0\jre
04-Sep-2019 15:12:48.237 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version: 1.8.0_181-b13
04-Sep-2019 15:12:48.238 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor: Oracle Corporation
04-Sep-2019 15:12:48.238 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: C:\Users\Administrator.IntelliJIdea2018.2\system\tomcat\Unnamed_nutzbook
04-Sep-2019 15:12:48.239 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31
04-Sep-2019 15:12:48.240 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=C:\Users\Administrator.IntelliJIdea2018.2\system\tomcat\Unnamed_nutzbook\conf\logging.properties
04-Sep-2019 15:12:48.240 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
04-Sep-2019 15:12:48.241 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote=
04-Sep-2019 15:12:48.241 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.port=1099
04-Sep-2019 15:12:48.241 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.ssl=false
04-Sep-2019 15:12:48.241 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.authenticate=false
04-Sep-2019 15:12:48.242 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.rmi.server.hostname=127.0.0.1
04-Sep-2019 15:12:48.242 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
04-Sep-2019 15:12:48.242 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
04-Sep-2019 15:12:48.243 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs=
04-Sep-2019 15:12:48.244 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=C:\Users\Administrator.IntelliJIdea2018.2\system\tomcat\Unnamed_nutzbook
04-Sep-2019 15:12:48.245 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31
04-Sep-2019 15:12:48.245 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31\temp
04-Sep-2019 15:12:48.246 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded APR based Apache Tomcat Native library [1.2.16] using APR version [1.6.3].
04-Sep-2019 15:12:48.246 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
04-Sep-2019 15:12:48.246 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true]
04-Sep-2019 15:12:49.317 信息 [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized [OpenSSL 1.0.2m 2 Nov 2017]
04-Sep-2019 15:12:49.521 信息 [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
04-Sep-2019 15:12:49.556 信息 [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
04-Sep-2019 15:12:49.568 信息 [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-nio-8009"]
04-Sep-2019 15:12:49.574 信息 [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
04-Sep-2019 15:12:49.574 信息 [main] org.apache.catalina.startup.Catalina.load Initialization processed in 1958 ms
04-Sep-2019 15:12:49.627 信息 [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina]
04-Sep-2019 15:12:49.627 信息 [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.5.31
04-Sep-2019 15:12:49.643 信息 [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
04-Sep-2019 15:12:49.661 信息 [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"]
04-Sep-2019 15:12:49.667 信息 [main] org.apache.catalina.startup.Catalina.start Server startup in 91 ms
Connected to server
[2019-09-04 03:12:49,703] Artifact nutzbook:war: Artifact is being deployed, please wait...
04-Sep-2019 15:12:56.567 信息 [RMI TCP Connection(5)-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.
2019-09-04 15:12:56,718 org.apache.shiro.web.env.EnvironmentLoader.initEnvironment(EnvironmentLoader.java:128) INFO - Starting Shiro environment initialization.
2019-09-04 15:12:56,743 org.apache.shiro.web.env.IniWebEnvironment.init(IniWebEnvironment.java:76) DEBUG - Checking any specified config locations.
2019-09-04 15:12:56,743 org.apache.shiro.web.env.IniWebEnvironment.init(IniWebEnvironment.java:81) DEBUG - No INI instance or config locations specified. Trying default config locations.
2019-09-04 15:12:56,753 org.apache.shiro.io.ResourceUtils.loadFromClassPath(ResourceUtils.java:159) DEBUG - Opening resource from class path [shiro.ini]
2019-09-04 15:12:56,763 org.apache.shiro.config.Ini.load(Ini.java:351) DEBUG - Parsing [main]
2019-09-04 15:12:56,770 org.apache.shiro.config.Ini.load(Ini.java:351) DEBUG - Parsing [urls]
2019-09-04 15:12:56,779 org.apache.shiro.web.env.IniWebEnvironment.getDefaultIni(IniWebEnvironment.java:136) DEBUG - Discovered non-empty INI configuration at location 'classpath:shiro.ini'. Using for configuration.
2019-09-04 15:12:56,789 org.apache.shiro.config.IniFactorySupport.createInstance(IniFactorySupport.java:122) DEBUG - Creating instance from Ini [sections=main,urls]
2019-09-04 15:12:57,359 org.apache.shiro.realm.AuthorizingRealm.getAuthorizationCacheLazy(AuthorizingRealm.java:234) DEBUG - No authorizationCache instance set. Checking for a cacheManager...
2019-09-04 15:12:57,359 org.apache.shiro.realm.AuthorizingRealm.getAuthorizationCacheLazy(AuthorizingRealm.java:248) DEBUG - No cache or cacheManager properties have been set. Authorization cache cannot be obtained.
2019-09-04 15:12:57,361 org.apache.shiro.config.ReflectionBuilder.createNewInstance(ReflectionBuilder.java:296) INFO - An instance with name 'authc' already exists. Redefining this object as a new instance of type org.nutz.integration.shiro.SimpleAuthenticationFilter
2019-09-04 15:12:57,520 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: false
2019-09-04 15:12:57,521 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Boolean' value 'false' to type 'Boolean'
2019-09-04 15:12:57,528 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Boolean
2019-09-04 15:12:57,535 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0
2019-09-04 15:12:57,535 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Integer' value '0' to type 'Byte'
2019-09-04 15:12:57,540 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:171) DEBUG - Converted to Byte value '0'
2019-09-04 15:12:57,541 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value:
2019-09-04 15:12:57,542 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Character' value ' ' to type 'Character'
2019-09-04 15:12:57,542 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Character
2019-09-04 15:12:57,544 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0
2019-09-04 15:12:57,544 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Integer' value '0' to type 'Double'
2019-09-04 15:12:57,544 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:171) DEBUG - Converted to Double value '0.0'
2019-09-04 15:12:57,546 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0
2019-09-04 15:12:57,546 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Integer' value '0' to type 'Float'
2019-09-04 15:12:57,546 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:171) DEBUG - Converted to Float value '0.0'
2019-09-04 15:12:57,548 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0
2019-09-04 15:12:57,548 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Integer' value '0' to type 'Integer'
2019-09-04 15:12:57,548 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Integer
2019-09-04 15:12:57,550 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0
2019-09-04 15:12:57,550 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Integer' value '0' to type 'Long'
2019-09-04 15:12:57,550 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:171) DEBUG - Converted to Long value '0'
2019-09-04 15:12:57,551 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0
2019-09-04 15:12:57,552 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Integer' value '0' to type 'Short'
2019-09-04 15:12:57,552 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:171) DEBUG - Converted to Short value '0'
2019-09-04 15:12:57,555 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0.0
2019-09-04 15:12:57,555 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'BigDecimal' value '0.0' to type 'BigDecimal'
2019-09-04 15:12:57,556 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a BigDecimal
2019-09-04 15:12:57,557 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0
2019-09-04 15:12:57,558 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'BigInteger' value '0' to type 'BigInteger'
2019-09-04 15:12:57,558 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a BigInteger
2019-09-04 15:12:57,558 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: false
2019-09-04 15:12:57,559 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Boolean' value 'false' to type 'Boolean'
2019-09-04 15:12:57,560 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Boolean
2019-09-04 15:12:57,560 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0
2019-09-04 15:12:57,561 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Integer' value '0' to type 'Byte'
2019-09-04 15:12:57,562 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:171) DEBUG - Converted to Byte value '0'
2019-09-04 15:12:57,563 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value:
2019-09-04 15:12:57,564 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Character' value ' ' to type 'Character'
2019-09-04 15:12:57,565 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Character
2019-09-04 15:12:57,565 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0
2019-09-04 15:12:57,566 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Integer' value '0' to type 'Double'
2019-09-04 15:12:57,567 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:171) DEBUG - Converted to Double value '0.0'
2019-09-04 15:12:57,568 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0
2019-09-04 15:12:57,568 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Integer' value '0' to type 'Float'
2019-09-04 15:12:57,569 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:171) DEBUG - Converted to Float value '0.0'
2019-09-04 15:12:57,569 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0
2019-09-04 15:12:57,571 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Integer' value '0' to type 'Integer'
2019-09-04 15:12:57,571 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Integer
2019-09-04 15:12:57,572 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0
2019-09-04 15:12:57,573 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Integer' value '0' to type 'Long'
2019-09-04 15:12:57,574 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:171) DEBUG - Converted to Long value '0'
2019-09-04 15:12:57,574 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: 0
2019-09-04 15:12:57,575 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Integer' value '0' to type 'Short'
2019-09-04 15:12:57,575 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:171) DEBUG - Converted to Short value '0'
2019-09-04 15:12:57,577 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value:
2019-09-04 15:12:57,578 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'String' value '' to type 'String'
2019-09-04 15:12:57,614 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Z@69fcd39b
2019-09-04 15:12:57,615 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'boolean[]' value '[Z@69fcd39b' to type 'boolean[]'
2019-09-04 15:12:57,615 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a boolean[]
2019-09-04 15:12:57,617 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [B@1716535f
2019-09-04 15:12:57,620 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'byte[]' value '[B@1716535f' to type 'byte[]'
2019-09-04 15:12:57,621 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a byte[]
2019-09-04 15:12:57,622 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [C@31d795a8
2019-09-04 15:12:57,623 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'char[]' value '[C@31d795a8' to type 'char[]'
2019-09-04 15:12:57,624 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a char[]
2019-09-04 15:12:57,624 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [D@3d670058
2019-09-04 15:12:57,625 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'double[]' value '[D@3d670058' to type 'double[]'
2019-09-04 15:12:57,625 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a double[]
2019-09-04 15:12:57,626 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [F@32087c64
2019-09-04 15:12:57,628 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'float[]' value '[F@32087c64' to type 'float[]'
2019-09-04 15:12:57,629 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a float[]
2019-09-04 15:12:57,629 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [I@17a14dd1
2019-09-04 15:12:57,630 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'int[]' value '[I@17a14dd1' to type 'int[]'
2019-09-04 15:12:57,631 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a int[]
2019-09-04 15:12:57,631 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [J@1a56f058
2019-09-04 15:12:57,633 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'long[]' value '[J@1a56f058' to type 'long[]'
2019-09-04 15:12:57,634 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a long[]
2019-09-04 15:12:57,635 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [S@1fb6568a
2019-09-04 15:12:57,635 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'short[]' value '[S@1fb6568a' to type 'short[]'
2019-09-04 15:12:57,636 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a short[]
2019-09-04 15:12:57,637 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.math.BigDecimal;@6eacf244
2019-09-04 15:12:57,639 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'BigDecimal[]' value '[Ljava.math.BigDecimal;@6eacf244' to type 'BigDecimal[]'
2019-09-04 15:12:57,640 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a BigDecimal[]
2019-09-04 15:12:57,641 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.math.BigInteger;@5e870f92
2019-09-04 15:12:57,644 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'BigInteger[]' value '[Ljava.math.BigInteger;@5e870f92' to type 'BigInteger[]'
2019-09-04 15:12:57,645 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a BigInteger[]
2019-09-04 15:12:57,646 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.lang.Boolean;@7a9fe22d
2019-09-04 15:12:57,646 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Boolean[]' value '[Ljava.lang.Boolean;@7a9fe22d' to type 'Boolean[]'
2019-09-04 15:12:57,650 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Boolean[]
2019-09-04 15:12:57,650 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.lang.Byte;@185409f2
2019-09-04 15:12:57,651 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Byte[]' value '[Ljava.lang.Byte;@185409f2' to type 'Byte[]'
2019-09-04 15:12:57,652 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Byte[]
2019-09-04 15:12:57,653 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.lang.Character;@2ec2d598
2019-09-04 15:12:57,656 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Character[]' value '[Ljava.lang.Character;@2ec2d598' to type 'Character[]'
2019-09-04 15:12:57,657 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Character[]
2019-09-04 15:12:57,658 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.lang.Double;@238cdb3a
2019-09-04 15:12:57,658 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Double[]' value '[Ljava.lang.Double;@238cdb3a' to type 'Double[]'
2019-09-04 15:12:57,664 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Double[]
2019-09-04 15:12:57,666 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.lang.Float;@7e5423b4
2019-09-04 15:12:57,666 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Float[]' value '[Ljava.lang.Float;@7e5423b4' to type 'Float[]'
2019-09-04 15:12:57,667 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Float[]
2019-09-04 15:12:57,667 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.lang.Integer;@5adbf568
2019-09-04 15:12:57,668 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Integer[]' value '[Ljava.lang.Integer;@5adbf568' to type 'Integer[]'
2019-09-04 15:12:57,668 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Integer[]
2019-09-04 15:12:57,670 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.lang.Long;@519c2824
2019-09-04 15:12:57,671 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Long[]' value '[Ljava.lang.Long;@519c2824' to type 'Long[]'
2019-09-04 15:12:57,671 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Long[]
2019-09-04 15:12:57,672 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.lang.Short;@16a5c3a8
2019-09-04 15:12:57,673 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Short[]' value '[Ljava.lang.Short;@16a5c3a8' to type 'Short[]'
2019-09-04 15:12:57,673 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Short[]
2019-09-04 15:12:57,674 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.lang.String;@7f057a8c
2019-09-04 15:12:57,674 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'String[]' value '[Ljava.lang.String;@7f057a8c' to type 'String[]'
2019-09-04 15:12:57,675 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a String[]
2019-09-04 15:12:57,675 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.lang.Class;@6ce6f98f
2019-09-04 15:12:57,676 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Class[]' value '[Ljava.lang.Class;@6ce6f98f' to type 'Class[]'
2019-09-04 15:12:57,676 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Class[]
2019-09-04 15:12:57,676 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.util.Date;@54e6df38
2019-09-04 15:12:57,679 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Date[]' value '[Ljava.util.Date;@54e6df38' to type 'Date[]'
2019-09-04 15:12:57,679 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Date[]
2019-09-04 15:12:57,681 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.util.Calendar;@a330177
2019-09-04 15:12:57,681 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'Calendar[]' value '[Ljava.util.Calendar;@a330177' to type 'Calendar[]'
2019-09-04 15:12:57,682 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a Calendar[]
2019-09-04 15:12:57,682 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.io.File;@33bfb120
2019-09-04 15:12:57,683 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'java.io.File[]' value '[Ljava.io.File;@33bfb120' to type 'java.io.File[]'
2019-09-04 15:12:57,684 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a java.io.File[]
2019-09-04 15:12:57,685 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.sql.Date;@49c26bba
2019-09-04 15:12:57,685 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'java.sql.Date[]' value '[Ljava.sql.Date;@49c26bba' to type 'java.sql.Date[]'
2019-09-04 15:12:57,687 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a java.sql.Date[]
2019-09-04 15:12:57,687 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.sql.Time;@4365bcdc
2019-09-04 15:12:57,689 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'java.sql.Time[]' value '[Ljava.sql.Time;@4365bcdc' to type 'java.sql.Time[]'
2019-09-04 15:12:57,689 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a java.sql.Time[]
2019-09-04 15:12:57,690 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.sql.Timestamp;@55cd2e2
2019-09-04 15:12:57,691 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'java.sql.Timestamp[]' value '[Ljava.sql.Timestamp;@55cd2e2' to type 'java.sql.Timestamp[]'
2019-09-04 15:12:57,691 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a java.sql.Timestamp[]
2019-09-04 15:12:57,692 org.apache.commons.beanutils.converters.AbstractConverter.setDefaultValue(AbstractConverter.java:353) DEBUG - Setting default value: [Ljava.net.URL;@f9f91c3
2019-09-04 15:12:57,692 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'java.net.URL[]' value '[Ljava.net.URL;@f9f91c3' to type 'java.net.URL[]'
2019-09-04 15:12:57,693 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:162) DEBUG - No conversion required, value is already a java.net.URL[]
2019-09-04 15:12:57,754 org.apache.commons.beanutils.ConvertUtilsBean.convert(ConvertUtilsBean.java:481) DEBUG - Convert string '/user/login' to class 'java.lang.String'
2019-09-04 15:12:57,754 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'String' value '/user/login' to type 'String'
2019-09-04 15:12:57,793 org.apache.commons.beanutils.ConvertUtilsBean.convert(ConvertUtilsBean.java:481) DEBUG - Convert string '/user/login' to class 'java.lang.String'
2019-09-04 15:12:57,794 org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:140) DEBUG - Converting 'String' value '/user/login' to type 'String'
2019-09-04 15:12:57,796 org.apache.shiro.realm.AuthorizingRealm.getAuthorizationCacheLazy(AuthorizingRealm.java:234) DEBUG - No authorizationCache instance set. Checking for a cacheManager...
2019-09-04 15:12:57,797 org.apache.shiro.realm.AuthorizingRealm.getAuthorizationCacheLazy(AuthorizingRealm.java:248) DEBUG - No cache or cacheManager properties have been set. Authorization cache cannot be obtained.
2019-09-04 15:12:57,805 org.apache.shiro.config.IniFactorySupport.createInstance(IniFactorySupport.java:122) DEBUG - Creating instance from Ini [sections=main,urls]
2019-09-04 15:12:57,816 org.apache.shiro.web.filter.mgt.DefaultFilterChainManager.createChain(DefaultFilterChainManager.java:127) DEBUG - Creating chain [/rs/*] from String definition [anon]
2019-09-04 15:12:57,817 org.apache.shiro.web.filter.mgt.DefaultFilterChainManager.applyChainConfig(DefaultFilterChainManager.java:278) DEBUG - Attempting to apply path [/rs/*] to filter [anon] with config [null]
2019-09-04 15:12:57,819 org.apache.shiro.web.filter.mgt.DefaultFilterChainManager.createChain(DefaultFilterChainManager.java:127) DEBUG - Creating chain [/user/logout] from String definition [logout]
2019-09-04 15:12:57,821 org.apache.shiro.web.filter.mgt.DefaultFilterChainManager.applyChainConfig(DefaultFilterChainManager.java:278) DEBUG - Attempting to apply path [/user/logout] to filter [logout] with config [null]
2019-09-04 15:12:57,822 org.apache.shiro.web.filter.mgt.DefaultFilterChainManager.createChain(DefaultFilterChainManager.java:127) DEBUG - Creating chain [/user/error] from String definition [anon]
2019-09-04 15:12:57,823 org.apache.shiro.web.filter.mgt.DefaultFilterChainManager.applyChainConfig(DefaultFilterChainManager.java:278) DEBUG - Attempting to apply path [/user/error] to filter [anon] with config [null]
2019-09-04 15:12:57,824 org.apache.shiro.web.filter.mgt.DefaultFilterChainManager.createChain(DefaultFilterChainManager.java:127) DEBUG - Creating chain [/user/login] from String definition [anon]
2019-09-04 15:12:57,825 org.apache.shiro.web.filter.mgt.DefaultFilterChainManager.applyChainConfig(DefaultFilterChainManager.java:278) DEBUG - Attempting to apply path [/user/login] to filter [anon] with config [null]
2019-09-04 15:12:57,826 org.apache.shiro.web.filter.mgt.DefaultFilterChainManager.createChain(DefaultFilterChainManager.java:127) DEBUG - Creating chain [/user/profile/active/mail] from String definition [anon]
2019-09-04 15:12:57,830 org.apache.shiro.web.filter.mgt.DefaultFilterChainManager.applyChainConfig(DefaultFilterChainManager.java:278) DEBUG - Attempting to apply path [/user/profile/active/mail] to filter [anon] with config [null]
2019-09-04 15:12:57,832 org.apache.shiro.web.env.EnvironmentLoader.initEnvironment(EnvironmentLoader.java:136) DEBUG - Published WebEnvironment as ServletContext attribute with name [org.apache.shiro.web.env.EnvironmentLoader.ENVIRONMENT_ATTRIBUTE_KEY]
2019-09-04 15:12:57,832 org.apache.shiro.web.env.EnvironmentLoader.initEnvironment(EnvironmentLoader.java:141) INFO - Shiro environment initialized in 1111 ms.
2019-09-04 15:12:58,325 org.nutz.mvc.NutFilter._init(NutFilter.java:85) INFO - NutFilter[nutz] starting ...
2019-09-04 15:12:58,359 org.nutz.resource.Scans.printLocations(Scans.java:527) DEBUG - Locations count=4 time use 10ms
2019-09-04 15:12:58,418 org.nutz.resource.Scans.printLocations(Scans.java:527) DEBUG - Locations count=36 time use 59ms
2019-09-04 15:12:58,453 org.nutz.mvc.config.AbstractNutConfig.createLoading(AbstractNutConfig.java:62) DEBUG - Loading by class org.nutz.mvc.impl.NutLoading
2019-09-04 15:12:58,458 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:55) INFO - Nutz Version : 1.r.67-20190109
2019-09-04 15:12:58,458 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:56) INFO - Nutz.Mvc[nutz] is initializing ...
2019-09-04 15:12:58,458 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:60) DEBUG - Web Container Information:
2019-09-04 15:12:58,461 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:61) DEBUG - - Default Charset : GBK
2019-09-04 15:12:58,462 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:62) DEBUG - - Current . path : G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31\bin.
2019-09-04 15:12:58,462 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:63) DEBUG - - Java Version : 1.8.0_181
2019-09-04 15:12:58,462 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:64) DEBUG - - File separator : \
2019-09-04 15:12:58,464 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:65) DEBUG - - Timezone : Asia/Shanghai
2019-09-04 15:12:58,464 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:66) DEBUG - - OS : Windows 10 amd64
2019-09-04 15:12:58,466 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:67) DEBUG - - ServerInfo : Apache Tomcat/8.5.31
2019-09-04 15:12:58,466 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:68) DEBUG - - Servlet API : 3.1
2019-09-04 15:12:58,466 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:73) DEBUG - - ContextPath : /nutzbook
2019-09-04 15:12:58,467 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:74) DEBUG - - context.tempdir : C:\Users\Administrator.IntelliJIdea2018.2\system\tomcat\Unnamed_nutzbook\work\Catalina\localhost\nutzbook
2019-09-04 15:12:58,468 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:75) DEBUG - - MainModule : net.wendal.nutzbook.MainModule
2019-09-04 15:12:58,469 org.nutz.mvc.impl.NutLoading.createContext(NutLoading.java:239) DEBUG - >> app.root = G:/develop/apache-tomcat-8.5.31-windows-64位/apache-tomcat-8.5.31/webapps/nutzbook
2019-09-04 15:12:58,647 org.nutz.castor.Castors.reload(Castors.java:116) DEBUG - Using 107 castor for Castors
2019-09-04 15:12:58,648 org.nutz.mvc.impl.NutLoading.createIoc(NutLoading.java:379) DEBUG - @IocBy(type=org.nutz.mvc.ioc.provider.ComboIocProvider, args=["*js", "ioc/", "*anno", "net.wendal.nutzbook", "*tx", "*quartz"],init=[])
2019-09-04 15:12:58,708 org.nutz.resource.Scans.scan(Scans.java:280) DEBUG - Found 2 resource by src( ioc/ ) , regex( ^(.+[.])(js|json)$ )
2019-09-04 15:12:58,709 org.nutz.ioc.loader.json.JsonLoader.(JsonLoader.java:49) DEBUG - loading [dao.js]
2019-09-04 15:12:58,714 org.nutz.ioc.loader.json.JsonLoader.(JsonLoader.java:49) DEBUG - loading [mail.js]
2019-09-04 15:12:58,715 org.nutz.ioc.loader.json.JsonLoader.(JsonLoader.java:57) DEBUG - Loaded 5 bean define from path=[ioc/] --> [conf, dao, emailAuthenticator, dataSource, htmlEmail]
2019-09-04 15:12:58,732 org.nutz.ioc.loader.annotation.AnnotationIocLoader.(AnnotationIocLoader.java:51) INFO - > scan 'net.wendal.nutzbook'
2019-09-04 15:12:58,746 org.nutz.resource.Scans.scan(Scans.java:280) DEBUG - Found 21 resource by src( net/wendal/nutzbook/ ) , regex( ^.+[.]class$ )
2019-09-04 15:12:58,775 org.nutz.ioc.loader.annotation.AnnotationIocLoader.addClass(AnnotationIocLoader.java:99) INFO - > add 'authorityModule ' - net.wendal.nutzbook.module.AuthorityModule
2019-09-04 15:12:58,797 org.nutz.ioc.loader.annotation.AnnotationIocLoader.addClass(AnnotationIocLoader.java:99) INFO - > add 'captchaModule ' - net.wendal.nutzbook.module.CaptchaModule
2019-09-04 15:12:58,802 org.nutz.ioc.loader.annotation.AnnotationIocLoader.addClass(AnnotationIocLoader.java:99) INFO - > add 'userModule ' - net.wendal.nutzbook.module.UserModule
2019-09-04 15:12:58,809 org.nutz.ioc.loader.annotation.AnnotationIocLoader.addClass(AnnotationIocLoader.java:99) INFO - > add 'userProfileModule ' - net.wendal.nutzbook.module.UserProfileModule
2019-09-04 15:12:58,819 org.nutz.ioc.loader.annotation.AnnotationIocLoader.addClass(AnnotationIocLoader.java:99) INFO - > add 'cleanNonActiveUserJob ' - net.wendal.nutzbook.quartz.job.CleanNonActiveUserJob
2019-09-04 15:12:58,825 org.nutz.ioc.loader.annotation.AnnotationIocLoader.addClass(AnnotationIocLoader.java:99) INFO - > add 'authorityService ' - net.wendal.nutzbook.service.AuthorityServiceImpl
2019-09-04 15:12:58,826 org.nutz.ioc.loader.annotation.AnnotationIocLoader.addClass(AnnotationIocLoader.java:99) INFO - > add 'emailService ' - net.wendal.nutzbook.service.EmailServiceImpl
2019-09-04 15:12:58,828 org.nutz.ioc.loader.annotation.AnnotationIocLoader.addClass(AnnotationIocLoader.java:99) INFO - > add 'userService ' - net.wendal.nutzbook.service.UserService
2019-09-04 15:12:58,846 org.nutz.ioc.loader.combo.ComboIocLoader.createIocLoader(ComboIocLoader.java:116) DEBUG - found quartz -- org.nutz.integration.quartz.QuartzIocLoader
2019-09-04 15:12:58,852 org.nutz.ioc.loader.json.JsonLoader.(JsonLoader.java:57) DEBUG - Loaded 0 bean define from path=[] --> []
2019-09-04 15:12:58,863 org.nutz.ioc.impl.NutIoc.(NutIoc.java:130) INFO - ... NutIoc init complete
2019-09-04 15:12:58,870 org.nutz.mvc.impl.NutLoading.evalUrlMapping(NutLoading.java:159) INFO - Build URL mapping by org.nutz.mvc.impl.UrlMappingImpl ...
2019-09-04 15:12:58,873 org.nutz.mvc.impl.NutLoading.createViewMakers(NutLoading.java:369) DEBUG - @Views(DefaultViewMaker.class)
2019-09-04 15:12:58,893 org.nutz.resource.Scans.scan(Scans.java:280) DEBUG - Found 1 resource by src( mvc/nutzbook-mvc-chain.js ) , regex( ^(.+[.])(js|json)$ )
2019-09-04 15:12:58,902 org.nutz.mvc.impl.chainconfig.JsonActionChainMakerConfiguretion.(JsonActionChainMakerConfiguretion.java:37) DEBUG - ActionChain Config:
{
"default": {
"ps": ["net.wendal.nutzbook.mvc.LogTimeProcessor", "org.nutz.mvc.impl.processor.UpdateRequestAttributesProcessor", "org.nutz.mvc.impl.processor.EncodingProcessor", "org.nutz.mvc.impl.processor.ModuleProcessor", "org.nutz.integration.shiro.NutShiroProcessor", "org.nutz.mvc.impl.processor.ActionFiltersProcessor", "org.nutz.mvc.impl.processor.AdaptorProcessor", "org.nutz.mvc.impl.processor.MethodInvokeProcessor", "org.nutz.mvc.impl.processor.ViewProcessor"],
"error": "org.nutz.mvc.impl.processor.FailProcessor"
}
}
2019-09-04 15:12:58,902 org.nutz.mvc.impl.NutLoading.createChainMaker(NutLoading.java:267) DEBUG - @ChainBy(org.nutz.mvc.impl.NutActionChainMaker)
2019-09-04 15:12:58,915 org.nutz.mvc.impl.Loadings.scanModules(Loadings.java:155) DEBUG - module class location 'file:/G:/develop/apache-tomcat-8.5.31-windows-64位/apache-tomcat-8.5.31/webapps/nutzbook/WEB-INF/classes/'
2019-09-04 15:12:58,915 org.nutz.mvc.impl.Loadings.scanModuleInPackage(Loadings.java:185) DEBUG - > scan 'net.wendal.nutzbook'
2019-09-04 15:12:58,927 org.nutz.resource.Scans.scan(Scans.java:280) DEBUG - Found 21 resource by src( net/wendal/nutzbook/ ) , regex( ^.+[.]class$ )
2019-09-04 15:12:58,961 org.nutz.mvc.impl.Loadings.checkModule(Loadings.java:204) DEBUG - >> add 'net.wendal.nutzbook.module.AuthorityModule'
2019-09-04 15:12:58,962 org.nutz.mvc.impl.Loadings.checkModule(Loadings.java:204) DEBUG - >> add 'net.wendal.nutzbook.module.CaptchaModule'
2019-09-04 15:12:58,963 org.nutz.mvc.impl.Loadings.checkModule(Loadings.java:204) DEBUG - >> add 'net.wendal.nutzbook.module.UserModule'
2019-09-04 15:12:58,964 org.nutz.mvc.impl.Loadings.checkModule(Loadings.java:204) DEBUG - >> add 'net.wendal.nutzbook.module.UserProfileModule'
2019-09-04 15:12:58,987 org.nutz.mvc.impl.NutLoading.evalUrlMapping(NutLoading.java:196) DEBUG - Use org.nutz.mvc.impl.NutEntryDeterminer as EntryMethodDeterminer
2019-09-04 15:12:59,123 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/profile/' >> (UserProfileModule.java:143).index : UserProfile | @Ok(jsp:jsp.user.profile) @Fail(jsp:jsp.500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,131 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/profile/get' >> (UserProfileModule.java:48).get : UserProfile | @Ok(json:full) @Fail(jsp:jsp.500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,180 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/profile/update' >> (UserProfileModule.java:64).update : void | @Ok(void ) @Fail(jsp:jsp.500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,187 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/profile/active/mail' >> (UserProfileModule.java:152).activeMail : Object | @Ok(json:full) @Fail(jsp:jsp.500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,191 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/profile/avatar' >> (UserProfileModule.java:129).readAvatar : Object | @Ok(raw:jpg) @Fail(jsp:jsp.500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,220 org.nutz.filepool.NutFilePool.(NutFilePool.java:28) INFO - Init file-pool by: G:/develop/apache-tomcat-8.5.31-windows-64位/apache-tomcat-8.5.31/webapps/nutzbook/WEB-INF/tmp/user_avatar [20000]
2019-09-04 15:12:59,227 org.nutz.filepool.NutFilePool.(NutFilePool.java:42) DEBUG - file-pool.home: 'G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31\webapps\nutzbook\WEB-INF\tmp\user_avatar'
2019-09-04 15:12:59,228 org.nutz.filepool.NutFilePool.(NutFilePool.java:50) INFO - file-pool.cursor: 0
2019-09-04 15:12:59,234 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/profile/avatar' >> (UserProfileModule.java:96).uploadAvatar : void | @Ok(>>:/user/profile) @Fail(jsp:jsp.500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,237 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/profile/active/mail' >> (UserProfileModule.java:181).activeMailCallback : String | @Ok(raw ) @Fail(jsp:jsp.500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,246 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/' >> (UserModule.java:189).index : void | @Ok(jsp:jsp.user.list) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,383 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/add' >> (UserModule.java:121).add : Object | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,392 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/count' >> (UserModule.java:46).count : int | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,400 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/update' >> (UserModule.java:135).update : Object | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,405 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/delete' >> (UserModule.java:157).delete : Object | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,434 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/query' >> (UserModule.java:172).query : Object | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,436 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/logout' >> (UserModule.java:80).logout : void | @Ok(>>:/ ) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,439 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/login' >> (UserModule.java:58).login : Object | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,442 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/user/login' >> (UserModule.java:198).loginPage : void | @Ok(jsp:jsp.user.login) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,447 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/captcha/next' >> (CaptchaModule.java:23).next : BufferedImage | @Ok(raw:png) @Fail(jsp:jsp.500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,451 org.nutz.mvc.impl.UrlMappingImpl.print(UrlMappingImpl.java:146) DEBUG - '/admin/authority/user/update' >> (AuthorityModule.java:32).updateUser : void | @Ok(void ) @Fail(jsp:jsp.500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2019-09-04 15:12:59,451 org.nutz.mvc.impl.NutLoading.evalUrlMapping(NutLoading.java:221) INFO - Found 18 module methods
2019-09-04 15:12:59,452 org.nutz.mvc.impl.NutLoading.evalLocalization(NutLoading.java:307) DEBUG - Localization: org.nutz.mvc.impl.NutMessageLoader('msg/') dft
2019-09-04 15:12:59,459 org.nutz.resource.Scans.scan(Scans.java:280) DEBUG - Found 1 resource by src( msg/ ) , regex( ^.+[.]properties$ )
2019-09-04 15:12:59,462 org.nutz.mvc.impl.NutMessageLoader.load(NutMessageLoader.java:27) DEBUG - Load Messages in 1 resource : [[File[G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31\webapps\nutzbook\WEB-INF\classes\msg\zh-CN\user.properties]]]
2019-09-04 15:12:59,465 org.nutz.mvc.impl.NutMessageLoader.load(NutMessageLoader.java:95) DEBUG - Message Loaded, size = 2
2019-09-04 15:12:59,469 org.nutz.mvc.impl.NutLoading.createSessionProvider(NutLoading.java:413) INFO - SessionBy --> org.nutz.integration.shiro.ShiroSessionProvider@5f45a4b7
2019-09-04 15:12:59,470 org.nutz.mvc.impl.NutLoading.evalSetup(NutLoading.java:275) INFO - Setup application...
2019-09-04 15:12:59,473 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'dao'<interface org.nutz.dao.Dao>
2019-09-04 15:12:59,476 org.nutz.ioc.aop.SimpleAopMaker.(SimpleAopMaker.java:79) DEBUG - Load AopConfigure for anno=org.nutz.ioc.aop.Aop by type=org.nutz.ioc.aop.config.impl.AnnotationAopConfigration
2019-09-04 15:12:59,479 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:192) DEBUG - >> Load definition name=dao
2019-09-04 15:12:59,491 org.nutz.ioc.loader.combo.ComboIocLoader.printFoundIocBean(ComboIocLoader.java:226) DEBUG - Found IocObject(dao) in JsonLoader(paths=[ioc/])
2019-09-04 15:12:59,492 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:223) DEBUG - >> Make...'dao'<interface org.nutz.dao.Dao>
2019-09-04 15:12:59,544 org.nutz.ioc.impl.ScopeContext.save(ScopeContext.java:65) DEBUG - Save object 'dao' to [app]
2019-09-04 15:12:59,547 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'dataSource'<>
2019-09-04 15:12:59,547 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:192) DEBUG - >> Load definition name=dataSource
2019-09-04 15:12:59,548 org.nutz.ioc.loader.combo.ComboIocLoader.printFoundIocBean(ComboIocLoader.java:226) DEBUG - Found IocObject(dataSource) in JsonLoader(paths=[ioc/])
2019-09-04 15:12:59,548 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:223) DEBUG - >> Make...'dataSource'<>
2019-09-04 15:12:59,548 org.nutz.ioc.impl.ScopeContext.save(ScopeContext.java:65) DEBUG - Save object 'dataSource' to [app]
2019-09-04 15:12:59,581 org.nutz.ioc.aop.impl.DefaultMirrorFactory.getMirror(DefaultMirrorFactory.java:76) DEBUG - Load class com.alibaba.druid.pool.DruidDataSource without AOP
2019-09-04 15:12:59,583 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'conf'<>
2019-09-04 15:12:59,583 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:192) DEBUG - >> Load definition name=conf
2019-09-04 15:12:59,583 org.nutz.ioc.loader.combo.ComboIocLoader.printFoundIocBean(ComboIocLoader.java:226) DEBUG - Found IocObject(conf) in JsonLoader(paths=[ioc/])
2019-09-04 15:12:59,584 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:223) DEBUG - >> Make...'conf'<>
2019-09-04 15:12:59,584 org.nutz.ioc.impl.ScopeContext.save(ScopeContext.java:65) DEBUG - Save object 'conf' to [app]
2019-09-04 15:12:59,585 org.nutz.ioc.aop.impl.DefaultMirrorFactory.getMirror(DefaultMirrorFactory.java:76) DEBUG - Load class org.nutz.ioc.impl.PropertiesProxy without AOP
04-Sep-2019 15:12:59.650 信息 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31\webapps\manager]
2019-09-04 15:12:59,782 org.nutz.resource.Scans.scan(Scans.java:280) DEBUG - Found 3 resource by src( custom/ ) , regex( ^.+[.]properties$ )
2019-09-04 15:12:59,788 org.nutz.ioc.impl.PropertiesProxy.setPaths(PropertiesProxy.java:106) DEBUG - load properties from File[G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31\webapps\nutzbook\WEB-INF\classes\custom\cron.properties]
2019-09-04 15:12:59,789 org.nutz.ioc.impl.PropertiesProxy.setPaths(PropertiesProxy.java:106) DEBUG - load properties from File[G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31\webapps\nutzbook\WEB-INF\classes\custom\db.properties]
2019-09-04 15:12:59,801 org.nutz.ioc.impl.PropertiesProxy.setPaths(PropertiesProxy.java:106) DEBUG - load properties from File[G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31\webapps\nutzbook\WEB-INF\classes\custom\mail.properties]
04-Sep-2019 15:12:59.864 信息 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [G:\develop\apache-tomcat-8.5.31-windows-64位\apache-tomcat-8.5.31\webapps\manager] has finished in [213] ms
2019-09-04 15:13:00,700 com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:1003) INFO - {dataSource-1} inited
2019-09-04 15:13:00,719 org.nutz.ioc.aop.impl.DefaultMirrorFactory.getMirror(DefaultMirrorFactory.java:76) DEBUG - Load class org.nutz.dao.impl.NutDao without AOP
2019-09-04 15:13:00,720 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'dataSource'<>
2019-09-04 15:13:01,074 org.nutz.dao.jdbc.Jdbcs.(Jdbcs.java:93) DEBUG - Jdbcs init complete
2019-09-04 15:13:01,074 org.nutz.dao.jdbc.Jdbcs.getExpert(Jdbcs.java:106) INFO - Get Connection from DataSource for JdbcExpert, if you lock at here, check your database server and configure
2019-09-04 15:13:01,391 org.nutz.dao.impl.DaoSupport.setDataSource(DaoSupport.java:188) DEBUG - select expert : org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert
2019-09-04 15:13:01,403 org.nutz.dao.impl.DaoSupport$1.invoke(DaoSupport.java:199) DEBUG - JDBC Driver --> mysql-connector-java-8.0.16 (Revision: 34cbc6bc61f72836e26327537a432d6db7c77de6)
2019-09-04 15:13:01,403 org.nutz.dao.impl.DaoSupport$1.invoke(DaoSupport.java:200) DEBUG - JDBC Name --> MySQL Connector/J
2019-09-04 15:13:01,404 org.nutz.dao.impl.DaoSupport$1.invoke(DaoSupport.java:202) DEBUG - JDBC URL --> jdbc:mysql://127.0.0.1:3306/nutzbook?serverTimezone=GMT%2B8
2019-09-04 15:13:01,605 org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert.checkDataSource(MysqlJdbcExpert.java:212) DEBUG - Mysql : character_set_client=utf8
2019-09-04 15:13:01,605 org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert.checkDataSource(MysqlJdbcExpert.java:212) DEBUG - Mysql : character_set_connection=utf8
2019-09-04 15:13:01,606 org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert.checkDataSource(MysqlJdbcExpert.java:212) DEBUG - Mysql : character_set_database=utf8
2019-09-04 15:13:01,607 org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert.checkDataSource(MysqlJdbcExpert.java:212) DEBUG - Mysql : character_set_filesystem=binary
2019-09-04 15:13:01,607 org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert.checkDataSource(MysqlJdbcExpert.java:212) DEBUG - Mysql : character_set_results=
2019-09-04 15:13:01,608 org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert.checkDataSource(MysqlJdbcExpert.java:212) DEBUG - Mysql : character_set_server=utf8
2019-09-04 15:13:01,609 org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert.checkDataSource(MysqlJdbcExpert.java:212) DEBUG - Mysql : character_set_system=utf8
2019-09-04 15:13:01,612 org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert.checkDataSource(MysqlJdbcExpert.java:212) DEBUG - Mysql : character_sets_dir=G:\MySql\share\charsets\
2019-09-04 15:13:01,615 org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert.checkDataSource(MysqlJdbcExpert.java:219) DEBUG - Mysql : binlog_format=STATEMENT
2019-09-04 15:13:01,617 org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert.checkDataSource(MysqlJdbcExpert.java:226) DEBUG - Mysql : database=nutzbook
2019-09-04 15:13:01,618 org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert.checkDataSource(MysqlJdbcExpert.java:232) DEBUG - Mysql : user=root@localhost
2019-09-04 15:13:01,683 org.nutz.dao.impl.DaoSupport.setDataSource(DaoSupport.java:221) DEBUG - Database info --> MYSQL:[MySQL - 5.5.40]
2019-09-04 15:13:01,705 org.nutz.resource.Scans.scan(Scans.java:280) DEBUG - Found 21 resource by src( net/wendal/nutzbook/ ) , regex( ^.+[.]class$ )
2019-09-04 15:13:01,792 org.nutz.dao.impl.sql.run.NutDaoExecutor.printSQL(NutDaoExecutor.java:388) DEBUG - SELECT COUNT(*) FROM t_user
2019-09-04 15:13:01,794 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'nutQuartzCronJobFactory'<class org.nutz.integration.quartz.NutQuartzCronJobFactory>
2019-09-04 15:13:01,795 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:192) DEBUG - >> Load definition name=nutQuartzCronJobFactory
2019-09-04 15:13:01,795 org.nutz.ioc.loader.combo.ComboIocLoader.printFoundIocBean(ComboIocLoader.java:226) DEBUG - Found IocObject(nutQuartzCronJobFactory) in JsonLoader(paths=[])
2019-09-04 15:13:01,796 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:223) DEBUG - >> Make...'nutQuartzCronJobFactory'<class org.nutz.integration.quartz.NutQuartzCronJobFactory>
2019-09-04 15:13:01,796 org.nutz.ioc.impl.ScopeContext.save(ScopeContext.java:65) DEBUG - Save object 'nutQuartzCronJobFactory' to [app]
2019-09-04 15:13:01,800 org.nutz.ioc.aop.impl.DefaultMirrorFactory.getMirror(DefaultMirrorFactory.java:76) DEBUG - Load class org.nutz.integration.quartz.NutQuartzCronJobFactory without AOP
2019-09-04 15:13:01,806 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'scheduler'<>
2019-09-04 15:13:01,806 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:192) DEBUG - >> Load definition name=scheduler
2019-09-04 15:13:01,807 org.nutz.ioc.loader.combo.ComboIocLoader.printFoundIocBean(ComboIocLoader.java:226) DEBUG - Found IocObject(scheduler) in JsonLoader(paths=[])
2019-09-04 15:13:01,807 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:223) DEBUG - >> Make...'scheduler'<>
2019-09-04 15:13:01,807 org.nutz.ioc.impl.ScopeContext.save(ScopeContext.java:65) DEBUG - Save object 'scheduler' to [app]
2019-09-04 15:13:01,946 org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1184) INFO - Using default implementation for ThreadExecutor
2019-09-04 15:13:01,988 org.quartz.core.SchedulerSignalerImpl.(SchedulerSignalerImpl.java:61) INFO - Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl
2019-09-04 15:13:01,988 org.quartz.core.QuartzScheduler.(QuartzScheduler.java:240) INFO - Quartz Scheduler v.2.2.1 created.
2019-09-04 15:13:01,991 org.quartz.simpl.RAMJobStore.initialize(RAMJobStore.java:155) INFO - RAMJobStore initialized.
2019-09-04 15:13:02,019 org.quartz.core.QuartzScheduler.initialize(QuartzScheduler.java:305) INFO - Scheduler meta-data: Quartz Scheduler (v2.2.1) 'NutzbookScheduler' with instanceId 'NON_CLUSTERED'
Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.
NOT STARTED.
Currently in standby mode.
Number of jobs executed: 0
Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 3 threads.
Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.

2019-09-04 15:13:02,020 org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1339) INFO - Quartz scheduler 'NutzbookScheduler' initialized from default resource file in Quartz package: 'quartz.properties'
2019-09-04 15:13:02,020 org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1343) INFO - Quartz scheduler version: 2.2.1
2019-09-04 15:13:02,023 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'jobFactory'<>
2019-09-04 15:13:02,023 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:192) DEBUG - >> Load definition name=jobFactory
2019-09-04 15:13:02,027 org.nutz.ioc.loader.combo.ComboIocLoader.printFoundIocBean(ComboIocLoader.java:226) DEBUG - Found IocObject(jobFactory) in JsonLoader(paths=[])
2019-09-04 15:13:02,028 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:223) DEBUG - >> Make...'jobFactory'<>
2019-09-04 15:13:02,029 org.nutz.ioc.impl.ScopeContext.save(ScopeContext.java:65) DEBUG - Save object 'jobFactory' to [app]
2019-09-04 15:13:02,032 org.nutz.ioc.aop.impl.DefaultMirrorFactory.getMirror(DefaultMirrorFactory.java:76) DEBUG - Load class org.nutz.integration.quartz.NutQuartzJobFactory without AOP
2019-09-04 15:13:02,101 org.quartz.core.QuartzScheduler.setJobFactory(QuartzScheduler.java:2311) INFO - JobFactory set to: org.nutz.integration.quartz.NutQuartzJobFactory@34f452b7
2019-09-04 15:13:02,182 org.quartz.core.QuartzScheduler.start(QuartzScheduler.java:575) INFO - Scheduler NutzbookScheduler_$_NON_CLUSTERED started.
2019-09-04 15:13:02,183 org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:276) DEBUG - batch acquisition of 0 triggers
2019-09-04 15:13:02,185 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'conf'<>
2019-09-04 15:13:02,185 org.nutz.integration.quartz.NutQuartzCronJobFactory.init(NutQuartzCronJobFactory.java:29) DEBUG - found cron job packages = net.wendal.nutzbook.quartz.job
2019-09-04 15:13:02,187 org.nutz.resource.Scans.scan(Scans.java:280) DEBUG - Found 1 resource by src( net/wendal/nutzbook/quartz/job/ ) , regex( ^.+[.]class$ )
2019-09-04 15:13:02,188 org.nutz.integration.quartz.NutQuartzCronJobFactory.init(NutQuartzCronJobFactory.java:36) DEBUG - job define name=net.wendal.nutzbook.quartz.job.CleanNonActiveUserJob cron=0 0/2 * * * ?
2019-09-04 15:13:02,232 org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:276) DEBUG - batch acquisition of 0 triggers
2019-09-04 15:13:02,233 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'htmlEmail'<class org.apache.commons.mail.HtmlEmail>
2019-09-04 15:13:02,233 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:192) DEBUG - >> Load definition name=htmlEmail
2019-09-04 15:13:02,233 org.nutz.ioc.loader.combo.ComboIocLoader.printFoundIocBean(ComboIocLoader.java:226) DEBUG - Found IocObject(htmlEmail) in JsonLoader(paths=[ioc/])
2019-09-04 15:13:02,235 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:223) DEBUG - >> Make...'htmlEmail'<class org.apache.commons.mail.HtmlEmail>
2019-09-04 15:13:02,265 org.nutz.ioc.aop.impl.DefaultMirrorFactory.getMirror(DefaultMirrorFactory.java:76) DEBUG - Load class org.apache.commons.mail.ImageHtmlEmail without AOP
2019-09-04 15:13:02,481 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'conf'<>
2019-09-04 15:13:02,490 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'conf'<>
2019-09-04 15:13:02,492 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'emailAuthenticator'<>
2019-09-04 15:13:02,492 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:192) DEBUG - >> Load definition name=emailAuthenticator
2019-09-04 15:13:02,494 org.nutz.ioc.loader.combo.ComboIocLoader.printFoundIocBean(ComboIocLoader.java:226) DEBUG - Found IocObject(emailAuthenticator) in JsonLoader(paths=[ioc/])
2019-09-04 15:13:02,496 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:223) DEBUG - >> Make...'emailAuthenticator'<>
2019-09-04 15:13:02,497 org.nutz.ioc.impl.ScopeContext.save(ScopeContext.java:65) DEBUG - Save object 'emailAuthenticator' to [app]
2019-09-04 15:13:02,498 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'conf'<>
2019-09-04 15:13:02,498 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'conf'<>
2019-09-04 15:13:02,501 org.nutz.ioc.aop.impl.DefaultMirrorFactory.getMirror(DefaultMirrorFactory.java:76) DEBUG - Load class org.apache.commons.mail.DefaultAuthenticator without AOP
2019-09-04 15:13:02,502 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'conf'<>
2019-09-04 15:13:02,503 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'conf'<>
2019-09-04 15:13:02,506 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'conf'<>
2019-09-04 15:13:02,507 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'conf'<>
2019-09-04 15:13:02,515 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'conf'<>
2019-09-04 15:13:03,062 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'authorityService'<interface net.wendal.nutzbook.service.AuthorityService>
2019-09-04 15:13:03,062 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:192) DEBUG - >> Load definition name=authorityService
2019-09-04 15:13:03,062 org.nutz.ioc.loader.combo.ComboIocLoader.printFoundIocBean(ComboIocLoader.java:226) DEBUG - Found IocObject(authorityService) in AnnotationIocLoader(packages=[net.wendal.nutzbook])
2019-09-04 15:13:03,063 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:223) DEBUG - >> Make...'authorityService'<interface net.wendal.nutzbook.service.AuthorityService>
2019-09-04 15:13:03,063 org.nutz.ioc.impl.ScopeContext.save(ScopeContext.java:65) DEBUG - Save object 'authorityService' to [app]
2019-09-04 15:13:03,063 org.nutz.ioc.aop.impl.DefaultMirrorFactory.getMirror(DefaultMirrorFactory.java:76) DEBUG - Load class net.wendal.nutzbook.service.AuthorityServiceImpl without AOP
2019-09-04 15:13:03,068 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get 'dao'<interface org.nutz.dao.Dao>
2019-09-04 15:13:03,077 org.nutz.dao.impl.sql.run.NutDaoExecutor.printSQL(NutDaoExecutor.java:388) DEBUG - SELECT * FROM t_user WHERE name=?
| 1 |
|-------|
| admin |
For example:> "SELECT * FROM t_user WHERE name='admin'"
2019-09-04 15:13:03,109 org.nutz.dao.impl.sql.run.NutDaoExecutor.printSQL(NutDaoExecutor.java:388) DEBUG - SELECT * FROM t_role WHERE name=?
| 1 |
|-------|
| admin |
For example:> "SELECT * FROM t_role WHERE name='admin'"
2019-09-04 15:13:03,127 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:125) ERROR - Error happend during start serivce!
java.lang.NullPointerException
at net.wendal.nutzbook.service.AuthorityServiceImpl.checkBasicRoles(AuthorityServiceImpl.java:34)
at net.wendal.nutzbook.MainSetup.init(MainSetup.java:67)
at org.nutz.mvc.impl.NutLoading.evalSetup(NutLoading.java:278)
at org.nutz.mvc.impl.NutLoading.load(NutLoading.java:121)
at org.nutz.mvc.ActionHandler.(ActionHandler.java:19)
at org.nutz.mvc.NutFilter._init(NutFilter.java:91)
at org.nutz.mvc.NutFilter.init(NutFilter.java:69)
at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:285)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:266)
at org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:108)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4637)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5282)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1736)
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 org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:482)
at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:431)
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 org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1468)
at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76)
at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1309)
at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1401)
at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:829)
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 sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:357)
at sun.rmi.transport.Transport$1.run(Transport.java:200)
at sun.rmi.transport.Transport$1.run(Transport.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:573)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:834)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:688)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:687)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
2019-09-04 15:13:03,137 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:127) ERROR - try to depose ioc
2019-09-04 15:13:03,140 org.nutz.ioc.impl.NutIoc.depose(NutIoc.java:287) INFO - org.nutz.ioc.impl.NutIoc@776792398 is closing. startup date [19-09-04 15:12:58.859]
2019-09-04 15:13:03,140 org.nutz.ioc.impl.ScopeContext.clear(ScopeContext.java:109) DEBUG - Depose object 'authorityService' ...
2019-09-04 15:13:03,141 org.nutz.ioc.impl.ScopeContext.clear(ScopeContext.java:109) DEBUG - Depose object 'emailAuthenticator' ...
2019-09-04 15:13:03,141 org.nutz.ioc.impl.ScopeContext.clear(ScopeContext.java:109) DEBUG - Depose object 'jobFactory' ...
2019-09-04 15:13:03,141 org.nutz.ioc.impl.ScopeContext.clear(ScopeContext.java:109) DEBUG - Depose object 'scheduler' ...
2019-09-04 15:13:03,141 org.quartz.core.QuartzScheduler.shutdown(QuartzScheduler.java:694) INFO - Scheduler NutzbookScheduler_$_NON_CLUSTERED shutting down.
2019-09-04 15:13:03,142 org.quartz.core.QuartzScheduler.standby(QuartzScheduler.java:613) INFO - Scheduler NutzbookScheduler_$_NON_CLUSTERED paused.
2019-09-04 15:13:03,142 org.quartz.simpl.SimpleThreadPool.shutdown(SimpleThreadPool.java:328) DEBUG - Shutting down threadpool...
2019-09-04 15:13:03,143 org.quartz.simpl.SimpleThreadPool.shutdown(SimpleThreadPool.java:395) DEBUG - Shutdown of threadpool complete.
2019-09-04 15:13:03,143 org.quartz.core.QuartzScheduler.shutdown(QuartzScheduler.java:771) INFO - Scheduler NutzbookScheduler_$_NON_CLUSTERED shutdown complete.
2019-09-04 15:13:03,143 org.nutz.ioc.impl.ScopeContext.clear(ScopeContext.java:109) DEBUG - Depose object 'nutQuartzCronJobFactory' ...
2019-09-04 15:13:03,143 org.nutz.ioc.impl.ScopeContext.clear(ScopeContext.java:109) DEBUG - Depose object 'conf' ...
2019-09-04 15:13:03,144 org.nutz.ioc.impl.ScopeContext.clear(ScopeContext.java:109) DEBUG - Depose object 'dao' ...
2019-09-04 15:13:03,144 org.nutz.ioc.impl.ScopeContext.clear(ScopeContext.java:114) DEBUG - Depose object 'dataSource' ...
2019-09-04 15:13:03,144 com.alibaba.druid.pool.DruidDataSource.close(DruidDataSource.java:1948) INFO - {dataSource-1} closing ...
2019-09-04 15:13:03,230 com.alibaba.druid.pool.DruidDataSource.close(DruidDataSource.java:2020) INFO - {dataSource-1} closed
2019-09-04 15:13:03,231 org.nutz.ioc.impl.NutIoc.depose(NutIoc.java:301) INFO - org.nutz.ioc.impl.NutIoc@776792398 is deposed. startup date [19-09-04 15:12:58.859]
04-Sep-2019 15:13:03.234 严重 [RMI TCP Connection(5)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal One or more Filters failed to start. Full details will be found in the appropriate container log file
04-Sep-2019 15:13:03.234 严重 [RMI TCP Connection(5)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal Context [/nutzbook] startup failed due to previous errors
04-Sep-2019 15:13:03.241 警告 [RMI TCP Connection(5)-127.0.0.1] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc The web application [nutzbook] registered the JDBC driver [com.alibaba.druid.proxy.DruidDriver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
04-Sep-2019 15:13:03.242 警告 [RMI TCP Connection(5)-127.0.0.1] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc The web application [nutzbook] registered the JDBC driver [com.mysql.cj.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
[2019-09-04 03:13:03,260] Artifact nutzbook:war: Error during artifact deployment. See server log for details.
2019-09-04 15:13:03,532 org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:612) DEBUG - WorkerThread is shut down.
2019-09-04 15:13:03,533 org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:612) DEBUG - WorkerThread is shut down.
2019-09-04 15:13:03,533 org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:612) DEBUG - WorkerThread is shut down.
04-Sep-2019 15:13:05.634 信息 [mysql-cj-abandoned-connection-cleanup] org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading Illegal access: this web application instance has been stopped already. Could not load []. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load []. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1328)
at org.apache.catalina.loader.WebappClassLoaderBase.getResource(WebappClassLoaderBase.java:1003)
at com.mysql.cj.jdbc.AbandonedConnectionCleanupThread.checkThreadContextClassLoader(AbandonedConnectionCleanupThread.java:117)
at com.mysql.cj.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:84)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

20 回复

没看发帖提示?

就是启动空指针异常,

贴 MainSetup

package net.wendal.nutzbook;

import net.wendal.nutzbook.bean.User;
import net.wendal.nutzbook.service.UserService;
import org.nutz.dao.Dao;
import org.nutz.dao.util.Daos;
import org.nutz.integration.quartz.NutQuartzCronJobFactory;
import org.nutz.ioc.Ioc;
import org.nutz.mvc.NutConfig;
import org.nutz.mvc.Setup;

public class MainSetup implements Setup {
@Override
public void init(NutConfig nc) {
Ioc ioc = nc.getIoc();
Dao dao = ioc.get(Dao.class);
Daos.createTablesInPackage(dao, "net.wendal.nutzbook", false);
Daos.migration(dao, User.class, true, false, false);

    // 初始化默认根用户
    if (dao.count(User.class) == 0) {
        UserService us = ioc.get(UserService.class);
        us.add("admin", "123456");
    }

    ioc.get(NutQuartzCronJobFactory.class);

// // 做测试发送邮件
// try {
// HtmlEmail email = ioc.get(HtmlEmail.class);
// email.setSubject("测试NutzBook");
// email.setMsg("This is a test mail ... :-)" + System.currentTimeMillis());
// email.addTo("litf941116@aliyun.com");//请务必改成您自己的邮箱啊!!!
// email.buildMimeMessage();
// email.sendMimeMessage();
// } catch (Exception e) {
// e.printStackTrace();
// }
}

@Override
public void destroy(NutConfig nc) {

}

}

大神 是不是没初始化ROLE 表和PERMISSON 表的数据啊

2019-09-04 15:13:03,127 org.nutz.mvc.impl.NutLoading.load(NutLoading.java:125) ERROR - Error happend during start serivce!
java.lang.NullPointerException
 at net.wendal.nutzbook.service.AuthorityServiceImpl.checkBasicRoles(AuthorityServiceImpl.java:34)
 at net.wendal.nutzbook.MainSetup.init(MainSetup.java:67)
 at org.nutz.mvc.impl.NutLoading.evalSetup(NutLoading.java:278)

报错的是MainModule的67行调用AuthorityServiceImpl, 但你贴的代码里面没有呀, 被吃掉了?

as.checkBasicRoles(dao.fetch(User.class, "admin"));

没有,没被吃掉,就是这行

重新贴,你前面贴的代码里面没有呀

package net.wendal.nutzbook;

import net.wendal.nutzbook.bean.Role;
import net.wendal.nutzbook.bean.User;
import net.wendal.nutzbook.service.AuthorityService;
import net.wendal.nutzbook.service.UserService;
import org.apache.commons.mail.HtmlEmail;
import org.nutz.dao.Dao;
import org.nutz.dao.util.Daos;
import org.nutz.integration.quartz.NutQuartzCronJobFactory;
import org.nutz.ioc.Ioc;
import org.nutz.mvc.NutConfig;
import org.nutz.mvc.Setup;

import java.util.Date;

public class MainSetup implements Setup{

// 特别留意一下,是init方法,不是destroy方法!!!!!
public void init(NutConfig nc) {
    Ioc ioc = nc.getIoc();
    Dao dao = ioc.get(Dao.class);
    // 如果没有createTablesInPackage,请检查nutz版本
    Daos.createTablesInPackage(dao, "net.wendal.nutzbook", false);
    //通过Daos.migration实现表结构自动修改
    Daos.migration(dao, User.class, true, false, false);

    /*// 初始化默认根用户
    if (dao.count(User.class) == 0) {
        User user = new User();
        user.setName("admin");
        user.setPassword("123456");
        user.setCreateTime(new Date());
        user.setUpdateTime(new Date());
        dao.insert(user);
    }*/

    // 初始化默认根用户
    if (dao.count(User.class) == 0) {
        UserService us = ioc.get(UserService.class);
        us.add("admin", "123456");
    }
    if (dao.count(Role.class) == 0) {
        UserService us = ioc.get(UserService.class);
        us.add("admin", "123456");
    }
    // 获取NutQuartzCronJobFactory从而触发计划任务的初始化与启动
    ioc.get(NutQuartzCronJobFactory.class);


    // 测试发送邮件
    try {
        HtmlEmail email = ioc.get(HtmlEmail.class);
        email.setSubject("测试NutzBook");
        email.setMsg("This is a test mail ... :-)" + System.currentTimeMillis());
        email.addTo("wsglgb@163.com");//请务必改成您自己的邮箱啊!!!
        email.buildMimeMessage();
        email.sendMimeMessage();
    } catch (Exception e) {
        e.printStackTrace();
    }

    //以下代码就能在启动时扫描注解,初始化最基本的权限模型,即:
  /* 用户admin存在
    角色admin存在
    用户admin属于admin角色
    admin角色拥有所有user:和authority:开头的权限
  */
    AuthorityService as = ioc.get(AuthorityService.class);
    as.initFormPackage("net.wendal.nutzbook");
    as.checkBasicRoles(dao.fetch(User.class, "admin"));

}

public void destroy(NutConfig nc) {
}

}

贴AuthorityServiceImpl,感觉缺@Inject

package net.wendal.nutzbook.service;

import net.wendal.nutzbook.bean.Permission;
import net.wendal.nutzbook.bean.Role;
import net.wendal.nutzbook.bean.User;
import org.nutz.dao.Chain;
import org.nutz.dao.Cnd;
import org.nutz.dao.Dao;
import org.nutz.dao.entity.Record;
import org.nutz.ioc.loader.annotation.Inject;
import org.nutz.ioc.loader.annotation.IocBean;

import java.util.List;

@IocBean(name = "authorityService")
public class AuthorityServiceImpl implements AuthorityService {

@Inject
protected Dao dao;

@Override
public void initFormPackage(String pkg) {

}

@Override
public void checkBasicRoles(User admin) {
    // 检查一下admin的权限
    Role adminRole = dao.fetch(Role.class, "admin");
    if (adminRole == null) {
        adminRole = addRole("admin");
    }
    // admin账号必须存在与admin组
    if (0 == dao.count("t_user_role", Cnd.where("u_id", "=", admin.getId()).and("role_id", "=", adminRole.getId()))) {
        dao.insert("t_user_role", Chain.make("u_id", admin.getId()).add("role_id", adminRole.getId()));
    }
    // admin组必须有authority:* 也就是权限管理相关的权限
    List<Record> res = dao.query("t_role_permission", Cnd.where("role_id", "=", adminRole.getId()));
    OUT: for (Permission permission : dao.query(Permission.class, Cnd.where("name", "like", "authority:%").or("name", "like", "user:%"), null)) {
        for (Record re : res) {
            if (re.getInt("permission_id") == permission.getId())
                continue OUT;
        }
        dao.insert("t_role_permission", Chain.make("role_id", adminRole.getId()).add("permission_id", permission.getId()));
    };
}

@Override
public void addPermission(String permission) {

}

@Override
public Role addRole(String role) {
    return null;
}

}

没有 大神 啥都有

addRole怎么直接return null了

我就根据官网的文档写的啊

不对 官网只贴出了部分代码

那应该怎么改呢 大神

添加回复
请先登陆
回到顶部