一、异常描述
1. 登录到weblogic后台,配置完数据源,如下图所示,点击“部署”- “更新”重启应用服务,提示i“激活更改期间出错,有关详细信息,请查看日志,weblogic.application.MouuleException..”
2. 通过spring的JndiObjectFactoryBean配置jndiName为“java:comp/env/jdbc/DataSource”,运行始终抛出“javax.naming.NameNotFoundException:While trying to look up comp/env/jdbc/DataSource in /app/webapp/WebRoot/24375103.; remaining name 'comp/env/jdbc/DataSource' ”异常,如下图所示
3. 根据spring中配置的“java:comp/env/jdbc/DataSource”在weblogic配置数据源“jdbc/DataSource”,如下图所示
二、解决步骤
1. 在weblogic管理后台的“服务” - “数据源”修改JNDI 名称配置 为“jdbc/utx”,如下图所示
2. 将spring配置文件将原来的jndiName修改为步骤1中对应配置的“jndi/utx”,如下图
3. 在weblogic后台点击“部署”,勾选对应部署名,点击更新,重启服务后,问题解决了