java.lang.IllegalArgumentException: 'name' must not be null

来源:互联网 发布:安尔捷网络可信吗 编辑:程序博客网 时间:2024/05/18 02:40

java.lang.IllegalArgumentException: 'name' must not be null
 at org.springframework.util.Assert.notNull(Assert.java:112)
 at org.springframework.beans.factory.BeanFactoryUtils.transformedBeanName(BeanFactoryUtils.java:71)
 at org.springframework.beans.factory.support.AbstractBeanFactory.transformedBeanName(AbstractBeanFactory.java:859)
 at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:202)
 atorg.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
 at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
 at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:881)
 at org.directwebremoting.spring.SpringCreator.getInstance(SpringCreator.java:144)
 at org.directwebremoting.impl.DefaultRemoter.execute(DefaultRemoter.java:348)
 at org.directwebremoting.impl.DefaultRemoter.execute(DefaultRemoter.java:283)
 at org.directwebremoting.servlet.PlainCallHandler.handle(PlainCallHandler.java:52)
 at org.directwebremoting.servlet.UrlProcessor.handle(UrlProcessor.java:101)
 at org.directwebremoting.servlet.DwrServlet.doPost(DwrServlet.java:146)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
 at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
 at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
 at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
 at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
 at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
 at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
 at java.lang.Thread.run(Unknown Source)
2011-06-03 10:45:19 星期五, 718 [WARN] org.directwebremoting.dwrp.BaseCallMarshaller
--Erroring: batchId[0] message[java.lang.IllegalArgumentException: 'name' must not be null]

 

找了好久终于让我找到了答案:so easy!!!

要说这种错误只能是初学者出的错,呵呵!!!

让我来解释下吧:

(1)我们原来的错误代码:

<create javascript="bigScreen" creator="spring">
  <param name="class" value="com.sinpo.upbs.action.AjaxAction"></param>
  <include method="findBigScreen"/>
  <include method="findBigScreen1"/>
  <include method="findTotal"/>
  <include method="findTotal1"/>
  </create>

改正后的代码:

<create javascript="bigScreen" creator="spring">
  <param name="beanName" value="AjaxDAO"></param>
  <include method="findBigScreen"/>
  <include method="findBigScreen1"/>
  <include method="findTotal"/>
  <include method="findTotal1"/>
  </create>

原因是:①调用自己写的类,creator="new" param="calss" value="com.sinpo.upbs.action.AjaxAction"这三个参数都是不能变的

②调用Spring的接口:creator="spring" param="beanName" value="AjaxDAO"

AjaxDAO要在spring的配置文件里面配置。

红色字体部分是不能够修改的,是固定格式

呵呵   搞定了!!!!