NutzCN Logo
问答 nutzbook 现在登陆异常 什么方法都提示java.lang.NullPointerException
发布于 2066天前 作者 qq_183ceadf 1604 次浏览 复制 上一个帖子 下一个帖子
标签:
package com.cn.module;

import java.util.Date;

import javax.servlet.http.HttpSession;

import org.nutz.dao.Cnd;

import org.nutz.dao.QueryResult;
import org.nutz.dao.pager.Pager;

import org.nutz.ioc.loader.annotation.IocBean;
import org.nutz.lang.Strings;
import org.nutz.lang.util.NutMap;
import org.nutz.mvc.annotation.At;
import org.nutz.mvc.annotation.Attr;
import org.nutz.mvc.annotation.By;
import org.nutz.mvc.annotation.Fail;
import org.nutz.mvc.annotation.Filters;
import org.nutz.mvc.annotation.Ok;
import org.nutz.mvc.annotation.Param;
import org.nutz.mvc.filter.CheckSession;

import com.cn.bean.User;

@Filters(@By(type=CheckSession.class, args={"me", "/"}))
@IocBean // 还记得@IocBy吗? 这个跟@IocBy有很大的关系哦
@At("/user")
@Ok("json:{locked:'password|salt',ignoreNull:true}")
@Fail("http:500")
public class UserModule extends BaseModule{
	
	 
	 @At
	    public int count() {
	        return dao.count(User.class);
	    }
	 
	 @At
	 @Filters()
	    public Object login(@Param("username")String name, @Param("password")String password, HttpSession session) {
	        User user = dao.fetch(User.class, Cnd.where("name", "=", name).and("password", "=", password));
	        if (user == null) {
	            return false;
	        } else {
	            session.setAttribute("me", user.getId());
	            return true;
	        }
	    }
八月 20, 2018 3:01:06 下午 org.apache.tomcat.util.digester.SetPropertiesRule begin
警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:asset' did not find a matching property.
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Server version:        Apache Tomcat/9.0.1
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Server built:          Sep 27 2017 17:31:52 UTC
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Server number:         9.0.1.0
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: OS Name:               Windows 10
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: OS Version:            10.0
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Architecture:          amd64
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Java Home:             C:\Program Files\Java\jre1.8.0_152
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: JVM Version:           1.8.0_152-b16
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: JVM Vendor:            Oracle Corporation
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: CATALINA_BASE:         D:\ec\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: CATALINA_HOME:         D:\apache-tomcat-9.0.1
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcatalina.base=D:\ec\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcatalina.home=D:\apache-tomcat-9.0.1
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dwtp.deploy=D:\ec\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Djava.endorsed.dirs=D:\apache-tomcat-9.0.1\endorsed
八月 20, 2018 3:01:06 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dfile.encoding=UTF-8
八月 20, 2018 3:01:06 下午 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
信息: Loaded APR based Apache Tomcat Native library [1.2.14] using APR version [1.6.2].
八月 20, 2018 3:01:06 下午 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
信息: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
八月 20, 2018 3:01:06 下午 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
信息: APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true]
八月 20, 2018 3:01:07 下午 org.apache.catalina.core.AprLifecycleListener initializeSSL
信息: OpenSSL successfully initialized [OpenSSL 1.0.2l  25 May 2017]
八月 20, 2018 3:01:07 下午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler ["http-nio-8080"]
八月 20, 2018 3:01:07 下午 org.apache.tomcat.util.net.NioSelectorPool getSharedSelector
信息: Using a shared selector for servlet write/read
八月 20, 2018 3:01:08 下午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler ["ajp-nio-8009"]
八月 20, 2018 3:01:08 下午 org.apache.tomcat.util.net.NioSelectorPool getSharedSelector
信息: Using a shared selector for servlet write/read
八月 20, 2018 3:01:08 下午 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 1685 ms
八月 20, 2018 3:01:08 下午 org.apache.catalina.core.StandardService startInternal
信息: Starting service [Catalina]
八月 20, 2018 3:01:08 下午 org.apache.catalina.core.StandardEngine startInternal
信息: Starting Servlet Engine: Apache Tomcat/9.0.1
八月 20, 2018 3:01:10 下午 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.
八月 20, 2018 3:01:14 下午 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.
八月 20, 2018 3:01:14 下午 org.apache.catalina.core.ApplicationContext log
信息: Initializing Shiro environment
WNP2P: 2018-08-20 15:01:14,230 [main] INFO  org.apache.shiro.web.env.EnvironmentLoader - Starting Shiro environment initialization.
WNP2P: 2018-08-20 15:01:14,259 [main] DEBUG org.apache.shiro.web.env.IniWebEnvironment - Checking any specified config locations.
WNP2P: 2018-08-20 15:01:14,259 [main] DEBUG org.apache.shiro.web.env.IniWebEnvironment - No INI instance or config locations specified.  Trying default config locations.
WNP2P: 2018-08-20 15:01:14,263 [main] DEBUG org.apache.shiro.io.ResourceUtils - Opening resource from class path [shiro.ini]
WNP2P: 2018-08-20 15:01:14,270 [main] DEBUG org.apache.shiro.config.Ini - Parsing [main]
WNP2P: 2018-08-20 15:01:14,271 [main] DEBUG org.apache.shiro.config.Ini - Parsing [urls]
WNP2P: 2018-08-20 15:01:14,272 [main] DEBUG org.apache.shiro.web.env.IniWebEnvironment - Discovered non-empty INI configuration at location 'classpath:shiro.ini'.  Using for configuration.
WNP2P: 2018-08-20 15:01:14,273 [main] DEBUG org.apache.shiro.config.IniFactorySupport - Creating instance from Ini [sections=urls]
WNP2P: 2018-08-20 15:01:14,763 [main] DEBUG org.apache.shiro.config.IniFactorySupport - Creating instance from Ini [sections=urls]
WNP2P: 2018-08-20 15:01:14,766 [main] DEBUG org.apache.shiro.web.filter.mgt.DefaultFilterChainManager - Creating chain [/*] from String definition [anon]
WNP2P: 2018-08-20 15:01:14,766 [main] DEBUG org.apache.shiro.web.filter.mgt.DefaultFilterChainManager - Attempting to apply path [/*] to filter [anon] with config [null]
WNP2P: 2018-08-20 15:01:14,767 [main] DEBUG org.apache.shiro.web.env.EnvironmentLoader - Published WebEnvironment as ServletContext attribute with name [org.apache.shiro.web.env.EnvironmentLoader.ENVIRONMENT_ATTRIBUTE_KEY]
WNP2P: 2018-08-20 15:01:14,767 [main] INFO  org.apache.shiro.web.env.EnvironmentLoader - Shiro environment initialized in 537 ms.
WNP2P: 2018-08-20 15:01:14,948 [main] INFO  org.nutz.mvc.NutFilter - NutFilter[nutz] starting ...
WNP2P: 2018-08-20 15:01:14,992 [main] DEBUG org.nutz.resource.Scans - Locations count=10 time use 28ms
WNP2P: 2018-08-20 15:01:15,001 [main] DEBUG org.nutz.resource.Scans - Locations count=22 time use 9ms
WNP2P: 2018-08-20 15:01:15,020 [main] DEBUG org.nutz.mvc.config.AbstractNutConfig - Loading by class org.nutz.mvc.impl.NutLoading
WNP2P: 2018-08-20 15:01:15,023 [main] INFO  org.nutz.mvc.impl.NutLoading - Nutz Version : 1.r.67-SNAPSHOT 
WNP2P: 2018-08-20 15:01:15,023 [main] INFO  org.nutz.mvc.impl.NutLoading - Nutz.Mvc[nutz] is initializing ...
WNP2P: 2018-08-20 15:01:15,023 [main] DEBUG org.nutz.mvc.impl.NutLoading - Web Container Information:
WNP2P: 2018-08-20 15:01:15,024 [main] DEBUG org.nutz.mvc.impl.NutLoading -  - Default Charset : UTF-8
WNP2P: 2018-08-20 15:01:15,024 [main] DEBUG org.nutz.mvc.impl.NutLoading -  - Current . path  : C:\Users\dyh\Desktop\.
WNP2P: 2018-08-20 15:01:15,024 [main] DEBUG org.nutz.mvc.impl.NutLoading -  - Java Version    : 1.8.0_152
WNP2P: 2018-08-20 15:01:15,024 [main] DEBUG org.nutz.mvc.impl.NutLoading -  - File separator  : \
WNP2P: 2018-08-20 15:01:15,024 [main] DEBUG org.nutz.mvc.impl.NutLoading -  - Timezone        : Asia/Shanghai
WNP2P: 2018-08-20 15:01:15,024 [main] DEBUG org.nutz.mvc.impl.NutLoading -  - OS              : Windows 10 amd64
WNP2P: 2018-08-20 15:01:15,024 [main] DEBUG org.nutz.mvc.impl.NutLoading -  - ServerInfo      : Apache Tomcat/9.0.1
WNP2P: 2018-08-20 15:01:15,024 [main] DEBUG org.nutz.mvc.impl.NutLoading -  - Servlet API     : 4.0
WNP2P: 2018-08-20 15:01:15,024 [main] DEBUG org.nutz.mvc.impl.NutLoading -  - ContextPath     : /asset
WNP2P: 2018-08-20 15:01:15,024 [main] DEBUG org.nutz.mvc.impl.NutLoading -  - context.tempdir : D:\ec\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\asset
WNP2P: 2018-08-20 15:01:15,024 [main] DEBUG org.nutz.mvc.impl.NutLoading -  - MainModule      : com.cn.MainModule
WNP2P: 2018-08-20 15:01:15,025 [main] DEBUG org.nutz.mvc.impl.NutLoading - >> app.root = D:/ec/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/asset
WNP2P: 2018-08-20 15:01:15,103 [main] DEBUG org.nutz.castor.Castors - Using 101 castor for Castors
WNP2P: 2018-08-20 15:01:15,103 [main] DEBUG org.nutz.mvc.impl.NutLoading - @IocBy(type=org.nutz.mvc.ioc.provider.ComboIocProvider, args=["*js", "ioc/", "*anno", "com.cn", "*tx", "*quartz"],init=[])
WNP2P: 2018-08-20 15:01:15,136 [main] DEBUG org.nutz.resource.Scans - Found 1 resource by src( ioc/ ) , regex( ^(.+[.])(js|json)$ )
WNP2P: 2018-08-20 15:01:15,137 [main] DEBUG org.nutz.ioc.loader.json.JsonLoader - loading [dao.js]
WNP2P: 2018-08-20 15:01:15,139 [main] DEBUG org.nutz.ioc.loader.json.JsonLoader - Loaded 3 bean define from path=[ioc/] --> [conf, dao, dataSource]
WNP2P: 2018-08-20 15:01:15,146 [main] INFO  org.nutz.ioc.loader.annotation.AnnotationIocLoader -  > scan 'com.cn'
WNP2P: 2018-08-20 15:01:15,156 [main] DEBUG org.nutz.resource.Scans - Found 14 resource by src( com/cn/ ) , regex( ^.+[.]class$ )
WNP2P: 2018-08-20 15:01:15,176 [main] INFO  org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'problemModule                           ' - com.cn.module.ProblemModule
WNP2P: 2018-08-20 15:01:15,186 [main] INFO  org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'userModule                              ' - com.cn.module.UserModule
WNP2P: 2018-08-20 15:01:15,206 [main] DEBUG org.nutz.ioc.loader.combo.ComboIocLoader - found quartz -- org.nutz.integration.quartz.QuartzIocLoader
WNP2P: 2018-08-20 15:01:15,212 [main] DEBUG org.nutz.ioc.loader.json.JsonLoader - Loaded 0 bean define from path=[] --> []
WNP2P: 2018-08-20 15:01:15,269 [main] INFO  org.nutz.ioc.impl.NutIoc - ... NutIoc init complete
WNP2P: 2018-08-20 15:01:15,275 [main] INFO  org.nutz.mvc.impl.NutLoading - Build URL mapping by org.nutz.mvc.impl.UrlMappingImpl ...
WNP2P: 2018-08-20 15:01:15,277 [main] DEBUG org.nutz.mvc.impl.NutLoading - @Views(DefaultViewMaker.class)
WNP2P: 2018-08-20 15:01:15,288 [main] DEBUG org.nutz.resource.Scans - Found 1 resource by src( mvc/asset-mvc-chain.js ) , regex( ^(.+[.])(js|json)$ )
WNP2P: 2018-08-20 15:01:15,291 [main] DEBUG org.nutz.mvc.impl.chainconfig.JsonActionChainMakerConfiguretion - ActionChain Config:
{
   "default": {
      "ps": ["com.cn.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"
   }
}
WNP2P: 2018-08-20 15:01:15,291 [main] DEBUG org.nutz.mvc.impl.NutLoading - @ChainBy(org.nutz.mvc.impl.NutActionChainMaker)
WNP2P: 2018-08-20 15:01:15,297 [main] DEBUG org.nutz.mvc.impl.Loadings - module class location 'file:/D:/ec/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/asset/WEB-INF/classes/'
WNP2P: 2018-08-20 15:01:15,297 [main] DEBUG org.nutz.mvc.impl.Loadings -  > scan 'com.cn'
WNP2P: 2018-08-20 15:01:15,307 [main] DEBUG org.nutz.resource.Scans - Found 14 resource by src( com/cn/ ) , regex( ^.+[.]class$ )
WNP2P: 2018-08-20 15:01:15,317 [main] DEBUG org.nutz.mvc.impl.Loadings -    >> add 'com.cn.module.ProblemModule'
WNP2P: 2018-08-20 15:01:15,317 [main] DEBUG org.nutz.mvc.impl.Loadings -    >> add 'com.cn.module.UserModule'
WNP2P: 2018-08-20 15:01:15,319 [main] DEBUG org.nutz.mvc.impl.NutLoading - Use org.nutz.mvc.impl.NutEntryDeterminer as EntryMethodDeterminer
WNP2P: 2018-08-20 15:01:15,455 [main] DEBUG org.nutz.mvc.impl.UrlMappingImpl -    '/user/'                    >> (UserModule.java:148).index           : void       | @Ok(jsp:user.list) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
WNP2P: 2018-08-20 15:01:15,542 [main] DEBUG org.nutz.mvc.impl.UrlMappingImpl -    '/user/add'                 >> (UserModule.java:90).add              : Object     | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
WNP2P: 2018-08-20 15:01:15,543 [main] DEBUG org.nutz.mvc.impl.UrlMappingImpl -    '/user/count'               >> (UserModule.java:36).count            : int        | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
WNP2P: 2018-08-20 15:01:15,543 [main] DEBUG org.nutz.mvc.impl.UrlMappingImpl -    '/user/update'              >> (UserModule.java:103).update          : Object     | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
WNP2P: 2018-08-20 15:01:15,549 [main] DEBUG org.nutz.mvc.impl.UrlMappingImpl -    '/user/delete'              >> (UserModule.java:117).delete          : Object     | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
WNP2P: 2018-08-20 15:01:15,556 [main] DEBUG org.nutz.mvc.impl.UrlMappingImpl -    '/user/query'               >> (UserModule.java:137).query           : Object     | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
WNP2P: 2018-08-20 15:01:15,557 [main] DEBUG org.nutz.mvc.impl.UrlMappingImpl -    '/user/login'               >> (UserModule.java:42).login            : Object     | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
WNP2P: 2018-08-20 15:01:15,558 [main] DEBUG org.nutz.mvc.impl.UrlMappingImpl -    '/user/logout'              >> (UserModule.java:54).logout           : void       | @Ok(>>:/ ) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
WNP2P: 2018-08-20 15:01:15,559 [main] DEBUG org.nutz.mvc.impl.UrlMappingImpl -    '/stup/count'               >> (ProblemModule.java:24).count         : int        | @Ok(json ) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
WNP2P: 2018-08-20 15:01:15,560 [main] DEBUG org.nutz.mvc.impl.UrlMappingImpl -    '/stup/query'               >> (ProblemModule.java:29).query         : Object     | @Ok(json ) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
WNP2P: 2018-08-20 15:01:15,560 [main] DEBUG org.nutz.mvc.impl.UrlMappingImpl -    '/stup/'                    >> (ProblemModule.java:39).indwe         : void       | @Ok(jsp:men.hme) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
WNP2P: 2018-08-20 15:01:15,560 [main] INFO  org.nutz.mvc.impl.NutLoading - Found 11 module methods
WNP2P: 2018-08-20 15:01:15,562 [main] DEBUG org.nutz.mvc.impl.NutLoading - @Localization not define
WNP2P: 2018-08-20 15:01:15,564 [main] INFO  org.nutz.mvc.impl.NutLoading - Setup application...
WNP2P: 2018-08-20 15:01:15,566 [main] DEBUG org.nutz.ioc.impl.NutIoc - Get 'dao'<interface org.nutz.dao.Dao>
WNP2P: 2018-08-20 15:01:15,569 [main] DEBUG org.nutz.ioc.aop.SimpleAopMaker - Load AopConfigure for anno=org.nutz.ioc.aop.Aop by type=org.nutz.ioc.aop.config.impl.AnnotationAopConfigration
WNP2P: 2018-08-20 15:01:15,570 [main] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=dao
WNP2P: 2018-08-20 15:01:15,577 [main] DEBUG org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dao) in JsonLoader(paths=[ioc/])
WNP2P: 2018-08-20 15:01:15,578 [main] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Make...'dao'<interface org.nutz.dao.Dao>
WNP2P: 2018-08-20 15:01:15,607 [main] DEBUG org.nutz.ioc.impl.ScopeContext - Save object 'dao' to [app] 
WNP2P: 2018-08-20 15:01:15,610 [main] DEBUG org.nutz.ioc.impl.NutIoc - Get 'dataSource'<>
WNP2P: 2018-08-20 15:01:15,610 [main] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=dataSource
WNP2P: 2018-08-20 15:01:15,610 [main] DEBUG org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dataSource) in JsonLoader(paths=[ioc/])
WNP2P: 2018-08-20 15:01:15,610 [main] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Make...'dataSource'<>
WNP2P: 2018-08-20 15:01:15,610 [main] DEBUG org.nutz.ioc.impl.ScopeContext - Save object 'dataSource' to [app] 
WNP2P: 2018-08-20 15:01:15,641 [main] DEBUG org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class com.alibaba.druid.pool.DruidDataSource without AOP
WNP2P: 2018-08-20 15:01:15,642 [main] DEBUG org.nutz.ioc.impl.NutIoc - Get 'conf'<>
WNP2P: 2018-08-20 15:01:15,642 [main] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=conf
WNP2P: 2018-08-20 15:01:15,642 [main] DEBUG org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(conf) in JsonLoader(paths=[ioc/])
WNP2P: 2018-08-20 15:01:15,642 [main] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Make...'conf'<>
WNP2P: 2018-08-20 15:01:15,642 [main] DEBUG org.nutz.ioc.impl.ScopeContext - Save object 'conf' to [app] 
WNP2P: 2018-08-20 15:01:15,642 [main] DEBUG org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.ioc.impl.PropertiesProxy without AOP
WNP2P: 2018-08-20 15:01:15,738 [main] DEBUG org.nutz.resource.Scans - Found 1 resource by src( custom/ ) , regex( ^.+[.]properties$ )
WNP2P: 2018-08-20 15:01:15,738 [main] DEBUG org.nutz.ioc.impl.PropertiesProxy - load properties from File[D:\ec\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\asset\WEB-INF\classes\custom\db.properties]
WNP2P: 2018-08-20 15:01:16,091 [main] INFO  com.alibaba.druid.pool.DruidDataSource - {dataSource-1} inited
WNP2P: 2018-08-20 15:01:16,105 [main] DEBUG org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.dao.impl.NutDao without AOP
WNP2P: 2018-08-20 15:01:16,106 [main] DEBUG org.nutz.ioc.impl.NutIoc - Get 'dataSource'<>
WNP2P: 2018-08-20 15:01:16,310 [main] DEBUG org.nutz.dao.jdbc.Jdbcs - Jdbcs init complete
WNP2P: 2018-08-20 15:01:16,310 [main] INFO  org.nutz.dao.jdbc.Jdbcs - Get Connection from DataSource for JdbcExpert, if you lock at here, check your database server and configure
WNP2P: 2018-08-20 15:01:16,530 [main] DEBUG org.nutz.dao.impl.DaoSupport - select expert : org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert
WNP2P: 2018-08-20 15:01:16,538 [main] DEBUG org.nutz.dao.impl.DaoSupport - JDBC Driver --> mysql-connector-java-5.1.14 ( Revision: ${bzr.revision-id} )
WNP2P: 2018-08-20 15:01:16,538 [main] DEBUG org.nutz.dao.impl.DaoSupport - JDBC Name   --> MySQL-AB JDBC Driver
WNP2P: 2018-08-20 15:01:16,538 [main] DEBUG org.nutz.dao.impl.DaoSupport - JDBC URL    --> jdbc:mysql://127.0.0.1:3306/nutzbook
WNP2P: 2018-08-20 15:01:16,629 [main] DEBUG org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_client=utf8mb4
WNP2P: 2018-08-20 15:01:16,629 [main] DEBUG org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_connection=utf8mb4
WNP2P: 2018-08-20 15:01:16,629 [main] DEBUG org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_database=utf8
WNP2P: 2018-08-20 15:01:16,629 [main] DEBUG org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_filesystem=binary
WNP2P: 2018-08-20 15:01:16,629 [main] DEBUG org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_results=
WNP2P: 2018-08-20 15:01:16,629 [main] DEBUG org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_server=utf8
WNP2P: 2018-08-20 15:01:16,629 [main] DEBUG org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_system=utf8
WNP2P: 2018-08-20 15:01:16,629 [main] DEBUG org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_sets_dir=C:\Program Files (x86)\MySQL\MySQL Server 5.5\share\charsets\
WNP2P: 2018-08-20 15:01:16,631 [main] DEBUG org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : binlog_format=STATEMENT
WNP2P: 2018-08-20 15:01:16,631 [main] DEBUG org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : database=nutzbook
WNP2P: 2018-08-20 15:01:16,632 [main] DEBUG org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : user=root@localhost
WNP2P: 2018-08-20 15:01:16,667 [main] DEBUG org.nutz.dao.impl.DaoSupport - Database info --> MYSQL:[MySQL - 5.5.25a]
WNP2P: 2018-08-20 15:01:16,675 [main] DEBUG org.nutz.resource.Scans - Found 14 resource by src( com/cn/ ) , regex( ^.+[.]class$ )
WNP2P: 2018-08-20 15:01:16,758 [main] DEBUG org.nutz.dao.impl.sql.run.NutDaoExecutor - SELECT COUNT(*) FROM t1_user 
WNP2P: 2018-08-20 15:01:16,760 [main] DEBUG org.nutz.dao.impl.sql.run.NutDaoExecutor - SELECT COUNT(*) FROM asset 
WNP2P: 2018-08-20 15:01:16,761 [main] DEBUG org.nutz.dao.impl.sql.run.NutDaoExecutor - SELECT COUNT(*) FROM Riskcategory 
WNP2P: 2018-08-20 15:01:16,762 [main] DEBUG org.nutz.ioc.impl.NutIoc - Get 'nutQuartzCronJobFactory'<class org.nutz.integration.quartz.NutQuartzCronJobFactory>
WNP2P: 2018-08-20 15:01:16,762 [main] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=nutQuartzCronJobFactory
WNP2P: 2018-08-20 15:01:16,762 [main] DEBUG org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nutQuartzCronJobFactory) in JsonLoader(paths=[])
WNP2P: 2018-08-20 15:01:16,762 [main] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Make...'nutQuartzCronJobFactory'<class org.nutz.integration.quartz.NutQuartzCronJobFactory>
WNP2P: 2018-08-20 15:01:16,762 [main] DEBUG org.nutz.ioc.impl.ScopeContext - Save object 'nutQuartzCronJobFactory' to [app] 
WNP2P: 2018-08-20 15:01:16,766 [main] DEBUG org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.integration.quartz.NutQuartzCronJobFactory without AOP
WNP2P: 2018-08-20 15:01:16,771 [main] DEBUG org.nutz.ioc.impl.NutIoc - Get 'scheduler'<>
WNP2P: 2018-08-20 15:01:16,771 [main] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=scheduler
WNP2P: 2018-08-20 15:01:16,771 [main] DEBUG org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(scheduler) in JsonLoader(paths=[])
WNP2P: 2018-08-20 15:01:16,771 [main] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Make...'scheduler'<>
WNP2P: 2018-08-20 15:01:16,771 [main] DEBUG org.nutz.ioc.impl.ScopeContext - Save object 'scheduler' to [app] 
WNP2P: 2018-08-20 15:01:16,810 [main] INFO  org.quartz.impl.StdSchedulerFactory - Using default implementation for ThreadExecutor
WNP2P: 2018-08-20 15:01:16,830 [main] INFO  org.quartz.core.SchedulerSignalerImpl - Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl
WNP2P: 2018-08-20 15:01:16,830 [main] INFO  org.quartz.core.QuartzScheduler - Quartz Scheduler v.2.2.3 created.
WNP2P: 2018-08-20 15:01:16,832 [main] INFO  org.quartz.simpl.RAMJobStore - RAMJobStore initialized.
WNP2P: 2018-08-20 15:01:16,833 [main] INFO  org.quartz.core.QuartzScheduler - Scheduler meta-data: Quartz Scheduler (v2.2.3) 'assetScheduler' 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.

WNP2P: 2018-08-20 15:01:16,833 [main] INFO  org.quartz.impl.StdSchedulerFactory - Quartz scheduler 'assetScheduler' initialized from default resource file in Quartz package: 'quartz.properties'
WNP2P: 2018-08-20 15:01:16,833 [main] INFO  org.quartz.impl.StdSchedulerFactory - Quartz scheduler version: 2.2.3
WNP2P: 2018-08-20 15:01:16,834 [main] DEBUG org.nutz.ioc.impl.NutIoc - Get 'jobFactory'<>
WNP2P: 2018-08-20 15:01:16,834 [main] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=jobFactory
WNP2P: 2018-08-20 15:01:16,835 [main] DEBUG org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(jobFactory) in JsonLoader(paths=[])
WNP2P: 2018-08-20 15:01:16,835 [main] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Make...'jobFactory'<>
WNP2P: 2018-08-20 15:01:16,835 [main] DEBUG org.nutz.ioc.impl.ScopeContext - Save object 'jobFactory' to [app] 
WNP2P: 2018-08-20 15:01:16,837 [main] DEBUG org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.integration.quartz.NutQuartzJobFactory without AOP
WNP2P: 2018-08-20 15:01:16,901 [main] INFO  org.quartz.core.QuartzScheduler - JobFactory set to: org.nutz.integration.quartz.NutQuartzJobFactory@3b678c5
WNP2P: 2018-08-20 15:01:16,944 [assetScheduler_QuartzSchedulerThread] DEBUG org.quartz.core.QuartzSchedulerThread - batch acquisition of 0 triggers
WNP2P: 2018-08-20 15:01:16,944 [main] INFO  org.quartz.core.QuartzScheduler - Scheduler assetScheduler_$_NON_CLUSTERED started.
WNP2P: 2018-08-20 15:01:16,944 [main] DEBUG org.nutz.ioc.impl.NutIoc - Get 'conf'<>
WNP2P: 2018-08-20 15:01:16,945 [main] INFO  org.nutz.mvc.impl.NutLoading - Nutz.Mvc[nutz] is up in 1921ms
WNP2P: 2018-08-20 15:01:16,945 [main] INFO  org.nutz.mvc.NutFilter - exclusionsPrefix  = ^(/rs/|/druid/)
八月 20, 2018 3:01:16 下午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["http-nio-8080"]
八月 20, 2018 3:01:16 下午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["ajp-nio-8009"]
八月 20, 2018 3:01:16 下午 org.apache.catalina.startup.Catalina start
信息: Server startup in 8966 ms
WNP2P: 2018-08-20 15:01:29,092 [http-nio-8080-exec-3] DEBUG org.nutz.mvc.impl.UrlMappingImpl - Found mapping for [POST] path=/user/login : UserModule.login(UserModule.java:42)
WNP2P: 2018-08-20 15:01:29,094 [http-nio-8080-exec-3] DEBUG org.nutz.ioc.impl.NutIoc - Get 'userModule'<class com.cn.module.UserModule>
WNP2P: 2018-08-20 15:01:29,094 [http-nio-8080-exec-3] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=userModule
WNP2P: 2018-08-20 15:01:29,094 [http-nio-8080-exec-3] DEBUG org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(userModule) in AnnotationIocLoader(packages=[com.cn])
WNP2P: 2018-08-20 15:01:29,094 [http-nio-8080-exec-3] DEBUG org.nutz.ioc.impl.NutIoc - 	 >> Make...'userModule'<class com.cn.module.UserModule>
WNP2P: 2018-08-20 15:01:29,095 [http-nio-8080-exec-3] DEBUG org.nutz.ioc.impl.ScopeContext - Save object 'userModule' to [app] 
WNP2P: 2018-08-20 15:01:29,095 [http-nio-8080-exec-3] DEBUG org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class com.cn.module.UserModule without AOP
WNP2P: 2018-08-20 15:01:29,114 [http-nio-8080-exec-3] DEBUG com.cn.mvc.LogTimeProcessor - [POST]URI=/asset/user/login 20ms
WNP2P: 2018-08-20 15:01:29,116 [http-nio-8080-exec-3] WARN  org.nutz.mvc.impl.processor.FailProcessor - Error@/user/login :
java.lang.NullPointerException
	at com.cn.module.UserModule.login(UserModule.java:42)
	at com.cn.module.UserModule$FM$login$5520491e2dc8d9bd66cdf74959710b28.invoke(UserModule.java)
	at org.nutz.mvc.impl.processor.MethodInvokeProcessor.process(MethodInvokeProcessor.java:31)
	at org.nutz.mvc.impl.processor.AbstractProcessor.doNext(AbstractProcessor.java:44)
	at org.nutz.mvc.impl.processor.AdaptorProcessor.process(AdaptorProcessor.java:38)
	at org.nutz.mvc.impl.processor.AbstractProcessor.doNext(AbstractProcessor.java:44)
	at org.nutz.mvc.impl.processor.ActionFiltersProcessor.process(ActionFiltersProcessor.java:58)
	at org.nutz.mvc.impl.processor.AbstractProcessor.doNext(AbstractProcessor.java:44)
	at org.nutz.integration.shiro.NutShiroProcessor.process(NutShiroProcessor.java:126)
	at org.nutz.mvc.impl.processor.AbstractProcessor.doNext(AbstractProcessor.java:44)
	at org.nutz.mvc.impl.processor.ModuleProcessor.process(ModuleProcessor.java:123)
	at org.nutz.mvc.impl.processor.AbstractProcessor.doNext(AbstractProcessor.java:44)
	at org.nutz.mvc.impl.processor.EncodingProcessor.process(EncodingProcessor.java:27)
	at org.nutz.mvc.impl.processor.AbstractProcessor.doNext(AbstractProcessor.java:44)
	at org.nutz.mvc.impl.processor.UpdateRequestAttributesProcessor.process(UpdateRequestAttributesProcessor.java:15)
	at org.nutz.mvc.impl.processor.AbstractProcessor.doNext(AbstractProcessor.java:44)
	at com.cn.mvc.LogTimeProcessor.process(LogTimeProcessor.java:19)
	at org.nutz.mvc.impl.NutActionChain.doChain(NutActionChain.java:44)
	at org.nutz.mvc.impl.ActionInvoker.invoke(ActionInvoker.java:67)
	at org.nutz.mvc.ActionHandler.handle(ActionHandler.java:31)
	at org.nutz.mvc.NutFilter.doFilter(NutFilter.java:202)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:123)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
	at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
	at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
	at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
	at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:387)
	at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
	at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
	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:199)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:475)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651)
	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:500)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:754)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1376)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Unknown Source)

7 回复

既然是报空指针,那就确定一下什么变量/属性是null

现在所有的方法 只要去调用 都是控制住了

是不是改了BaseModule,然后dao属性没加@Inject

只要涉及到 dao的 都是这样

User user = dao.fetch(User.class, Cnd.where("name", "=", name).and("password", "=", password));
package com.cn.module;




import org.nutz.dao.Dao;

import org.nutz.ioc.loader.annotation.Inject;


public  abstract  class BaseModule {
	
	@Inject
    protected static Dao dao;
    
   

}

baseModule 我改过 后面又改回来了

大神 我这到底是什么原因啊

protected static Dao dao;

你加个static干毛线

@Inject
protected Dao dao;
已经解决 谢谢

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