WAS上创建SqlMapClient时出错

我的项目使用的是spring3.1.1-RELEASE + ibatis2.3.4.726。本地使用tomcat6+Java HotSpot(TM) 64-Bit Server VM 1.6。本地没有问题,生成上使用WebSphere Platform 8.0.0.7+IBM J9 VM。部署到生产环境时报错:
************ Start Display Current Environment ************
WebSphere Platform 8.0.0.7 [ND 8.0.0.7 cf071329.03] running with process name zjtysjyy02Cell01zjtysjyy02Node01server1 and process id 32433
Host Operating System is Linux, version 2.6.32-358.el6.x86_64
Java version = 1.6.0, Java Compiler = j9jit26, Java VM name = IBM J9 VM
was.install.root = /WAS/WebSphere/AppServer
user.install.root = /udas/profiles/appSrv01
Java Home = /WAS/WebSphere/AppServer/java/jre
ws.ext.dirs = /WAS/WebSphere/AppServer/java/lib:/udas/profiles/appSrv01/classes:/WAS/WebSphere/AppServer/classes:/WAS/WebSphere/AppServer/lib:/WAS/WebSphere/AppServer/installedChannels:/WAS/WebSphere/AppServer/lib/ext:/WAS/WebSphere/AppServer/web/help:/WAS/WebSphere/AppServer/deploytool/itp/plugins/com.ibm.etools.ejbdeploy/runtime
Classpath = /udas/profiles/appSrv01/properties:/WAS/WebSphere/AppServer/properties:/WAS/WebSphere/AppServer/lib/startup.jar:/WAS/WebSphere/AppServer/lib/bootstrap.jar:/WAS/WebSphere/AppServer/lib/jsf-nls.jar:/WAS/WebSphere/AppServer/lib/lmproxy.jar:/WAS/WebSphere/AppServer/lib/urlprotocols.jar:/WAS/WebSphere/AppServer/deploytool/itp/batchboot.jar:/WAS/WebSphere/AppServer/deploytool/itp/batch2.jar:/WAS/WebSphere/AppServer/java/lib/tools.jar
Java Library path = /WAS/WebSphere/AppServer/lib/native/linux/x86_64/:/WAS/WebSphere/AppServer/java/jre/lib/amd64/compressedrefs:/WAS/WebSphere/AppServer/java/jre/lib/amd64:/WAS/WebSphere/AppServer/lib/native/linux/x86_64/:/WAS/WebSphere/AppServer/bin:/usr/lib:
Orb Version = IBM Java ORB build orb626ifx-20130530.00 (IX90121)
************* End Display Current Environment *************
[4/25/15 0:18:22:952 CST] 0000003c webapp        E com.ibm.ws.webcontainer.webapp.WebApp logServletError SRVE0293E: [Servlet Error]-[ServletNameNotFound]: org.springframework.beans.factory.BeanCreationException: 
        Error creating bean with name 'tdSqlMapClient' defined in file [/udas/profiles/appSrv01/installedApps/zjtysjyy02Cell01/ida19_war.ear/ida19.war/WEB-INF/classes/spring/dao.spring.xml]: 
        Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: At least 1 'configLocation' entry is required
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1455)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:567)
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:913)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464)
        at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139)
        at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:83)
        at com.teradata.adf.core.service.SpringServiceLocator.getContext(SpringServiceLocator.java:54)
        at com.teradata.adf.core.service.SpringServiceLocator.getService(SpringServiceLocator.java:65)
        at com.teradata.ida.common.utils.Constant.getStPara(Constant.java:297)
        at com.ibm._jsp._login._jspService(_login.java:210)
        at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:99)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
        at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1230)
        at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:779)
        at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)
        at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
        at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:122)
        at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:205)
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:79)
        at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:960)
        at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1064)
        at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:1385)
        at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:194)
        at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:653)
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:97)
        at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
        at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:960)
        at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1064)
        at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3763)
        at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304)
        at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:976)
        at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1662)
        at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:200)
        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:453)
        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:515)
        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:306)
        at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:84)
        at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
        at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
        at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
        at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
        at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
        at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
        at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
        at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1700)
Caused by: java.lang.IllegalArgumentException: At least 1 'configLocation' entry is required
        at org.springframework.orm.ibatis.SqlMapClientFactoryBean.buildSqlMapClient(SqlMapClientFactoryBean.java:330)
        at org.springframework.orm.ibatis.SqlMapClientFactoryBean.afterPropertiesSet(SqlMapClientFactoryBean.java:291)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1514)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1452)
        ... 55 more


报错的dao.spring.xml内容为:


        
        
                
                
        
        
                
                
        
        
                
                
        
        
        
                
                
        
        
        
                
                
                
                
        
        
                
                
                
        




我在SqlMapClientFactoryBean为注入configLocations时,没有使用configLocation,而使用的是configLocations,不知到这在Websphere上有什么问题?
参与3

2同行回答

dx871021dx871021软件开发工程师学生
回复 2# bisu 我在本地(tomcat6 + Hotspot VM)试了一下将dao.spring.xml中的configLocations改成configLocation,确实没问题。等到下周去现场用这个版本试一下。谢谢您!显示全部
回复 2# bisu

我在本地(tomcat6 + Hotspot VM)试了一下将dao.spring.xml中的configLocations改成configLocation,确实没问题。等到下周去现场用这个版本试一下。谢谢您!收起
IT咨询服务 · 2015-04-30
浏览1003
bisubisu售后技术支持SYNNEX
错误日志的意思是websphere无法识别configLocations,发现没有configLocation就直接抛异常了。你只能修改dao.spring.xml,用configLocation标签加载配置文件,或者用mapperLocations试试显示全部
错误日志的意思是websphere无法识别configLocations,发现没有configLocation就直接抛异常了。你只能修改dao.spring.xml,用configLocation标签加载配置文件,或者用mapperLocations试试收起
IT咨询服务 · 2015-04-30
浏览979

提问者

dx871021
软件开发工程师学生

问题状态

  • 发布时间:2015-04-30
  • 关注会员:1 人
  • 问题浏览:3427
  • 最近回答:2015-04-30
  • X社区推广