My Oracle Support Banner

Geocoder JDBC Error java.sql.SQLException: Connection Has Already Been Closed (Doc ID 1457361.1)

Last updated on FEBRUARY 03, 2022

Applies to:

Oracle Spatial and Graph - Version 11.2.0.2.0 to 11.2.0.2.0
Information in this document applies to any platform.Symptoms

Geocoder request getting error java.sql.SQLException: Connection has already been closed.


[oracle.lbs.geocoder.server.Settlement, Wed Mar 21 10:15:38 CET 2012, ERROR] java.sql.SQLException: Connection has already been closed.
at weblogic.jdbc.wrapper.PoolConnection.checkConnection(PoolConnection.java:58)
at weblogic.jdbc.wrapper.Connection.preInvocationHandler(Connection.java:94)
at weblogic.jdbc.wrapper.Connection.getMetaData(Connection.java:436)
at oracle.spatial.geocoder.server.GeocoderConfig.getConnection(GeocoderConfig.java:297)
at oracle.spatial.geocoder.server.Settlement.resolveInDB(Settlement.java:742)
at oracle.spatial.geocoder.server.Settlement.resolve(Settlement.java:219)
at oracle.spatial.geocoder.server.GenericGeocoder.resolveCity(GenericGeocoder.java:844)
at oracle.spatial.geocoder.server.GenericGeocoder.geocodeLoc(GenericGeocoder.java:276)
at oracle.spatial.geocoder.server.GenericGeocoder.geocode(GenericGeocoder.java:203)
at oracle.spatial.geocoder.server.GeocoderImpl.geocode(GeocoderImpl.java:449)
at oracle.spatial.geocoder.GCServer.process(GCServer.java:401)
at oracle.spatial.geocoder.GCServer.doPost(GCServer.java:205)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:821)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:184)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3717)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)

[oracle.spatial.geocoder.GCServer, Wed Mar 21 10:15:38 CET 2012, DEBUG]


Steps:
1. From the "Geocoder XML sample requests" page (http://host:port/geocoder/xmlreq.html) make the following reverse geocoding request (second form):

 
    country="ES"
  longitude="0" latitude="0" >


2.After a while, longer than usual, the response is:
Error:
Message:Error in ReverseGeocoder
Nested exception is:
java.sql.SQLRecoverableException: No hay más datos para leer del socket


3. And then any other request to the reverse geocoder, even those that were working before the error, now always return the same error.

4. Then I tested the connection pool (named GeocoderDS-nonXA1-PROD, the only pool included in multi data source GeocoderMultiDS-nonXA-PROD, the one configured in geocoder) from the WLS admin console and it reported also an error.

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Cause
Solution


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.