Ich versuche herauszufinden, warum ein Teil meiner Anwendung plötzlich nicht mehr funktioniert. Ich benutze Spring 1 mit Weblogic 8.1.4.0 und Hibernate. Der Berichtgenerator ist der Teil, der fehlgeschlagen ist, zuerst auf unserem Produktionsserver, dann auf den Dev- und Qa-Servern am Freitag, während ich experimentierte. Ich habe keine Änderungen am Code vorgenommen, aber ich erhalte jetzt eine Ausnahme für fehlende Datenquellen in der Kompilierungsanweisung einer Zuordnungsabfrage. Das einzige, was sich geändert hat, waren ein paar Datensätze in der Datenbank, aber es waren ziemlich einfache Änderungen, von denen ich bezweifle, dass sie Auswirkungen hatten. Ich habe auch die folgende Fehlermeldung von Freitag um die Zeit, dass die beiden Entwicklungs Anwendungen versagt haben:ContextLoader: Kontextinitialisierung fehlgeschlagen
Hier ist der Fehler in den Protokollen von Entwicklungsserver:
04-06 14:31:34 ERROR [main] org.springframework.web.context.ContextLoader: Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'myDataSource' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Initialization of bean failed; nested exception is javax.naming.LinkException:
Und es gibt ein ähnliches etwa 10 Minuten später, als ich auf dem QA-Server eingesetzt habe.
Es bezieht sich auf eine in WebLogic definierte Datenquelle und Verbindungspool. Ich habe die Verbindung überprüft und getestet und es scheint keine Probleme damit zu geben.
Was könnte möglicherweise passieren, dass dies verursacht hätte? Ich kehrte sogar aus dem vergangenen Woche zu einem Build zurück, um sicherzustellen, es war keine Codeänderung, aber die gleiche Datenquelle erforderlich Ausnahme auftritt:
04-07 16:15:04 DEBUG [ExecuteThread: '14' for queue: 'default'] org.eei.survey.data.RegionDataDAO$NERCRegionMappingQuery: RdbmsOperation with SQL [{call prc_NERCRegions_get}] compiled
04-07 16:15:04 ERROR [ExecuteThread: '14' for queue: 'default'] error.jsp: Error page displayed to user due to unhandled exception
org.springframework.dao.InvalidDataAccessApiUsageException: dataSource is required
at org.springframework.jdbc.object.RdbmsOperation.compile(RdbmsOperation.java:300)
at org.eei.survey.data.ReportDAO$NCRMappingQuery.<init>(ReportDAO.java:535)
at org.eei.survey.data.ReportDAO.executePrcNCR(ReportDAO.java:548)
at org.eei.survey.data.ReportDAO.getNCR(ReportDAO.java:59)
at jsp_servlet._reliability._charts.__barncr._jspService(__barncr.java:235)
Jede Hilfe würde geschätzt.
UPDATE: Hier ist die vollständige Stacktrace des Fehlers:
04-08 14:56:19 WARN [ExecuteThread: '14' for queue: 'default'] org.apache.shale.faces.ShaleViewHandler: No ViewController for viewId /reliability/support/reportgen.faces found under name reliability$support$reportgen
04-08 14:56:19 DEBUG [ExecuteThread: '14' for queue: 'default'] org.eei.survey.data.ReportDAO: java.lang.IllegalArgumentException: No DataSource specified
04-08 14:56:19 ERROR [ExecuteThread: '14' for queue: 'default'] error.jsp: Error page displayed to user due to unhandled exception
java.lang.NullPointerException
at jsp_servlet._reliability._support.__reportgen._jspService(__reportgen.java:156)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1006)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:419)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:315)
at weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:322)
at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
at org.apache.shale.faces.ShaleViewHandler.renderView(ShaleViewHandler.java:142)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1006)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:419)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at org.apache.shale.faces.InvokeCommand.execute(InvokeCommand.java:40)
at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:166)
at org.apache.shale.faces.ShaleApplicationFilter.doFilter(ShaleApplicationFilter.java:218)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at org.eei.survey.web.UserFilter.doFilterInternal(UserFilter.java:30)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6724)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3764)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2644)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
Können Sie mehr vom StackTrace erhalten? – chrislovecnm
Vollständiger Stacktrace wurde hinzugefügt. – jwBurnside
Sie definieren Ihre Datenquelle Bean? – chrislovecnm