0 0

Spring中的经典疑问: Error creating bean with name 'urlMapping' ...30

正在学习spring的多动作控制器,然而配置完成运行后,出现了这样的错误信息,我估计很多老鸟见过,如下:

 

Error creating bean with name 'urlMapping' defined in ServletContext resource [/WEB-INF/classes/applicationContext.xml]: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'multiController' defined in ServletContext resource [/WEB-INF/classes/applicationContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.page.NewIndexShowListController]: Constructor threw exception; nested exception is java.lang.NullPointerException
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:521)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:562)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:871)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:423)
	at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:443)
	at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:459)
	at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:340)
	at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:307)
	at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:127)
	at javax.servlet.GenericServlet.init(GenericServlet.java:212)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161)
	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981)
	at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4042)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4348)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
	at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920)
	at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
	at org.apache.catalina.core.StandardService.start(StandardService.java:516)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)

  我查过好多网上信息,都没有解决,再看我的applicationContent.xml配置

 

 <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
   <property name="mappings">
    <props>
     
     <prop key="/*Page.htm">multiController</prop>
     
     </props>
   </property>
  </bean>


	 <bean id="propMethodResolver" 
			class="org.springframework.web.servlet.mvc.multiaction.PropertiesMethodNameResolver">
		<property name="mappings">
			<props>
				<prop key="/nextPage.htm">nextPage</prop>
				<prop key="/previousPage.htm">previousPage</prop>
				<prop key="/firstPage.htm">firstPage</prop>
				<prop key="/lastPage.htm">lastPage</prop>
				<prop key="/getPage.htm">getPage</prop>
			</props>
		</property>
	</bean> 
	
	<bean id="multiController" class="com.page.NewIndexShowListController">
		<property name="methodNameResolver">
			<ref bean="propMethodResolver"/>
		</property>
		<property name="myuserDAO">
			<ref bean="MyuserDAO"/>
		</property>
	</bean>

 以及 web.xml配置

 

	<servlet>
		<servlet-name>dispatcher</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>/WEB-INF/classes/applicationContext.xml</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>dispatcher</servlet-name>
		<url-pattern>*.do,*.htm</url-pattern>
	</servlet-mapping>
	
	<filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
   

    <init-param>
       <param-name>encoding</param-name>
       <param-value>GBK</param-value>
    </init-param>

    <init-param>
       <param-name>forceEncoding</param-name>
       <param-value>true</param-value>
    </init-param>

</filter>

 

<filter-mapping>
  <filter-name>encodingFilter</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>

  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

  前台的简单代码:

 

 
  <body>
  	
   <a href="nextPage.htm">下一页</a>
    <a href="previousPage.htm">前一页</a>
    <a href="firstPage.htm">首页</a>
    <a href="lastPage.htm">尾页</a>
    <a href="getPage.htm">某页</a>
  
  
  </body>

  后台的代码:

 

public class NewIndexShowListController extends MultiActionController{
	private MyuserDAO myuserDAO;
	Map map=new HashMap();
	@SuppressWarnings("unchecked")
	List<Myuser> userList=myuserDAO.findAllOrderByTime();
	PageModel pageModel=new PageModel(userList, 5);
	int pageCount=pageModel.getTotalPages();
	
	public ModelAndView nextPage(HttpServletRequest req,HttpServletResponse res)throws Exception
	{
		
		System.out.println("将显示下一页");
		List sublist=pageModel.getNextPage();
		 for(int i = 0; i < sublist.size(); i++) 
	        {  
	            System.out.println(sublist.get(i));  
	            
	           
	        }  
		map.put("sublist",sublist);
		return new ModelAndView("success","map",map);
		
	}
	public ModelAndView previousPage(HttpServletRequest req,HttpServletResponse res)throws Exception
	{
		
		System.out.println("将显示前一页");
		List sublist=pageModel.getPreviousPage();
		for(int i = 0; i < sublist.size(); i++) 
        {  
            System.out.println(sublist.get(i));  
           
        } 
		map.put("sublist",sublist);
		return new ModelAndView("success","map",map);
	}
	public ModelAndView firstPage(HttpServletRequest req,HttpServletResponse res)throws Exception
	{	
		System.out.println("将显示首页");
		
		
		List sublist=pageModel.getFirstPage();
		for(int i=0;i<sublist.size();i++)
		{
			System.out.println(sublist.get(i));
		}
		map.put("sublist",sublist);
		return new ModelAndView("success","map",map);
	}
	public ModelAndView lastPage(HttpServletRequest req,HttpServletResponse res)throws Exception
	{
		System.out.println("将显示尾页");
		
		List sublist=pageModel.getLastPage();
		for(int i=0;i<sublist.size();i++)
		{
			System.out.print(sublist.get(i));
		}
		map.put("sublist",sublist);
		return new ModelAndView("success","map",map);
	}
	
	public ModelAndView getPage(HttpServletRequest req,HttpServletResponse res)throws Exception
	{
		
		int pagenum=Integer.parseInt(req.getParameter("pagenum"));
		List sublist=pageModel.getObjects(pagenum);
		 for(int i = 0; i < sublist.size(); i++) 
	        {  
	            System.out.println(sublist.get(i));  
	           
	        }  
		 map.put("sublist",sublist);
		 return new ModelAndView("success","map",map);
	}
	
	
	 public void setMyuserDAO(MyuserDAO myuserDAO)
	 	{
		 	this.myuserDAO=myuserDAO;
	 	}
	 public MyuserDAO getMyuserDAO()
	 	{
		 	return this.myuserDAO;
	 	}
}

  控制器代码继承了MuitiActionCotroller,不明白报这样的错误说明了什么,哪里出了错误?虚心求教,感激不尽~


问题补充:<div class="quote_title">小哀好困 写道</div><div class="quote_div">public class NewIndexShowListController extends MultiActionController{&nbsp; <br />&nbsp;&nbsp;&nbsp; private MyuserDAO myuserDAO;&nbsp; <br />&nbsp;&nbsp;&nbsp; Map map=new HashMap();&nbsp; <br />&nbsp;&nbsp;&nbsp; @SuppressWarnings("unchecked")&nbsp; <br />&nbsp;&nbsp;&nbsp; List&lt;Myuser&gt; userList=myuserDAO.findAllOrderByTime();&nbsp; <br />&nbsp;&nbsp;&nbsp; PageModel pageModel=new PageModel(userList, 5);&nbsp; <br />&nbsp;&nbsp;&nbsp; int pageCount=pageModel.getTotalPages();&nbsp; <br /> <br />这一段就有问题了 <br /> <br />myuserDAO是通过spring注入进来的,注意类初始化顺序 <br /> <br />你的很多操作,在构造函数运行前运行。。</div> <br /><div class="quote_title">小哀好困 写道</div><div class="quote_div">public class NewIndexShowListController extends MultiActionController{&nbsp; <br />&nbsp;&nbsp;&nbsp; private MyuserDAO myuserDAO;&nbsp; <br />&nbsp;&nbsp;&nbsp; Map map=new HashMap();&nbsp; <br />&nbsp;&nbsp;&nbsp; @SuppressWarnings("unchecked")&nbsp; <br />&nbsp;&nbsp;&nbsp; List&lt;Myuser&gt; userList=myuserDAO.findAllOrderByTime();&nbsp; <br />&nbsp;&nbsp;&nbsp; PageModel pageModel=new PageModel(userList, 5);&nbsp; <br />&nbsp;&nbsp;&nbsp; int pageCount=pageModel.getTotalPages();&nbsp; <br /> <br />这一段就有问题了 <br /> <br />myuserDAO是通过spring注入进来的,注意类初始化顺序 <br /> <br />你的很多操作,在构造函数运行前运行。。</div> <br /> <br />恩,你说的对,我改了下顺序,但是还是出现了404错误,也就是前台的超链接无法连到指定的方法去。。。这是地址出问题了么?
2012年4月07日 10:30

4个答案 按时间排序 按投票排序

0 0

采纳的答案

404? 额,这。。可能是地址出问题。。哈哈,等于没回答。。。

2012年4月08日 06:00
0 0

之前也有这个问题。我的问题出在:在一个model类中声明了另一个类的变量,没有指定这两个类的关系。spring不知道怎么装载吧,估计是

2013年1月06日 23:41
0 0

public class NewIndexShowListController extends MultiActionController{ 
    private MyuserDAO myuserDAO; 
    Map map=new HashMap(); 
    @SuppressWarnings("unchecked") 
    List<Myuser> userList=myuserDAO.findAllOrderByTime(); 
    PageModel pageModel=new PageModel(userList, 5); 
    int pageCount=pageModel.getTotalPages(); 

这一段就有问题了

myuserDAO是通过spring注入进来的,注意类初始化顺序

你的很多操作,在构造函数运行前运行。。

2012年4月07日 21:24
0 0

org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.page.NewIndexShowListController]: Constructor threw exception; nested exception is java.lang.NullPointerException

这个应该是在调用NewIndexShowListController父类MultiActionController的构造方法中出现空指针导致,请检查该构造方法。

2012年4月07日 16:23

相关推荐

    org.springframework.web.servlet-3.0.1.RELEASE-A.jar

    Error creating bean with name 'org.springframework.web.servlet.handler.SimpleUrlHandlerMapping#0' defined in ServletContext resource [/WEB-INF/springMVC-servlet.xml]: Initialization of bean failed;...

    springAOP demo 带错误解决文档

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.aop.config.internalAutoProxyCreator': Instantiation of bean failed; nested exception is org....

    asm5.0.jar

    2013-08-12 14:33:37.672:WARN::Nested in org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in URL [file:/E:/cloudwave-core/src/main/...

    S2SH整合报错

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Instantiation of bean failed;...

    org.springframework.transaction-3.1.2.RELEASE.zip

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.transaction.interceptor.TransactionInterceptor#0': Error setting property values; nested ...

    解决SpringDataJPA报错:org.hibernate.HibernateException: Access to DialectResolutionInfo cannot be null w

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/...

    spring-security-oauth-test.rar

    SpringCloud +Spring Security + OAuth2.0 实现权限认证,通过数据库和Redis进行权限认证。自定义认证方案认证

    struts2驱动包

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [applicationContext.xml]: Initialization of bean failed; nested ...

    spring-framework-reference-4.1.2

    Aliasing a bean outside the bean definition ................................................ 28 Instantiating beans .......................................................................................

    spring-framework-reference4.1.4

    Aliasing a bean outside the bean definition ................................................ 28 Instantiating beans .......................................................................................

    spring框架进行简单的增加操作出现的错误,解决方法

    Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class ...

    Spring底层学习:【AOP源码的探究】

    AOP源码探究AOP源码探究:一、@EnableAspectJAutoProxy...@Import(AspectJAutoProxyRegistrar.class):给容器中导入AspectJAutoProxyRegistrar,利用AspectJAutoProxyRegistrar自定义给容器中注册bean组件: internalAu

    com.springsource.org.objectweb.asm-3.2.0.jar

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'customAreaService' defined in class path resource [applicationContext.xml]: Initialization of bean failed;...

    spring-boot-reference.pdf

    Mapping Error Pages outside of Spring MVC 27.1.12. Spring HATEOAS 27.1.13. CORS Support 27.2. The “Spring WebFlux Framework” 27.2.1. Spring WebFlux Auto-configuration 27.2.2. HTTP Codecs with ...

    基于springboot+mybatis实现的外卖订餐系统源码+项目说明(毕设).zip

    Error creating bean with name 'sqlSessionFactory' defined in class path resource [org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.class]: Bean instantiation via factory method ...

    ssmDemo1:SSM框架整合练习项目 来自《2017-7黑马49期web》

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager' defined in file [F:\IdeaProjects\ssmDemo1\out\artifacts\ssmDemo1_war_exp

    freemarker总结

    使用import指令导入库到模板中,Freemarker会为导入的库创建新的名字空间,并可以通过import指令中指定的散列变量访问库中的变量: &lt;#import "/lib/my_test.ftl" as my&gt; &lt;#assign mail="fred@acme.com"&gt; ...

Global site tag (gtag.js) - Google Analytics