GeoTools
  1. GeoTools
  2. GEOT-2676

ArcSDE and jdbc-ng JNDI store factory parameters conflict, and arcsde complains

    Details

    • Type: Bug Bug
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.5.7, 2.6-M2
    • Fix Version/s: 2.5.8, 2.6-M3
    • Component/s: arcsde plugin
    • Labels:
      None

      Description

      Surely because of using the same DataAccess.Param name than the jdbc-ng jndi factories... and arcsde may be doing an extra unnecesary check on canProcess or something like that...

      User report:

      Hi,

      I installed GeoServer 2.0 RC1 WAR version on Tomcat 6.0 on Windows. Full environment settings are below:

      Windows XP
      Java: 1.6.0_15
      Tomcat: 6.0

      ArcSDE: 9.2
      Oracle: 10gR2

      If I install both the ArcSDE plugin and Oracle plugin and try to configure an Oracle (NG) DataStore using a valid JNDI path to an Oracle JDBC connection pool, I get the following error:

      Could not list layers for this store, an error occurred retrieving them: Unknown JNDI resource on path java:comp/env/jdbc/mydatabase. Expected one of [org.geotools.arcsde.session.ArcSDEConnectionConfig, org.geotools.arcsde.session.ISessionPool] but got org.apache.tomcat.dbcp.dbcp.BasicDataSource (org.apache.tomcat.dbcp.dbcp.BasicDataSource@26cb0f)

      I've tested deploying the same thing (using same Tomcat instance and JNDI database pool) with GeoServer 1.7.6 and 1.7.5, and I get no error for 1.7.5 but the same error on 1.7.6.

      If I remove the ArcSDE plugin jars, I can configure the Oracle DataStore with identical settings without problem.

      Here is the full stack trace. Any ideas what the problem is?

      Micah

      25 Aug 16:07:24 WARN [data.store] - Error obtaining new data store
      org.geotools.data.DataSourceException: Unknown JNDI resource on path java:comp/e
      nv/jdbc/awois-oradev. Expected one of [org.geotools.arcsde.session.ArcSDEConnect
      ionConfig, org.geotools.arcsde.session.ISessionPool] but got org.apache.tomcat.d
      bcp.dbcp.BasicDataSource (org.apache.tomcat.dbcp.dbcp.BasicDataSource@26cb0f)
      at org.geotools.arcsde.ArcSDEJNDIDataStoreFactory.getSessionPool(ArcSDEJ
      NDIDataStoreFactory.java:152)
      at org.geotools.arcsde.ArcSDEJNDIDataStoreFactory.createDataStore(ArcSDE
      JNDIDataStoreFactory.java:103)
      at org.geotools.arcsde.ArcSDEJNDIDataStoreFactory.createDataStore(ArcSDE
      JNDIDataStoreFactory.java:70)
      at org.vfny.geoserver.util.DataStoreUtils.getDataAccess(DataStoreUtils.j
      ava:96)
      at org.geoserver.catalog.ResourcePool.getDataStore(ResourcePool.java:265
      )
      at org.geoserver.catalog.impl.DataStoreInfoImpl.getDataStore(DataStoreIn
      foImpl.java:34)
      at org.geoserver.web.data.store.DataAccessNewPage.onSaveDataStore(DataAc
      cessNewPage.java:87)
      at org.geoserver.web.data.store.AbstractDataAccessPage$1.onSubmit(Abstra
      ctDataAccessPage.java:159)
      at org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onSubmit(Aja
      xSubmitLink.java:94)
      at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSu
      bmitBehavior.java:128)
      at org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.ja
      va:163)
      at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(Abstract
      DefaultAjaxBehavior.java:297)
      at org.apache.wicket.request.target.component.listener.BehaviorRequestTa
      rget.processEvents(BehaviorRequestTarget.java:104)
      at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents
      (AbstractRequestCycleProcessor.java:91)
      at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.j
      ava:1220)
      at org.apache.wicket.RequestCycle.step(RequestCycle.java:1297)
      at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1399)
      at org.apache.wicket.RequestCycle.request(RequestCycle.java:529)
      at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:
      356)
      at org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.ja
      va:145)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      at org.springframework.web.servlet.mvc.ServletWrappingController.handleR
      equestInternal(ServletWrappingController.java:158)
      at org.springframework.web.servlet.mvc.AbstractController.handleRequest(
      AbstractController.java:153)
      at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.ha
      ndle(SimpleControllerHandlerAdapter.java:48)
      at org.springframework.web.servlet.DispatcherServlet.doDispatch(Dispatch
      erServlet.java:875)
      at org.springframework.web.servlet.DispatcherServlet.doService(Dispatche
      rServlet.java:809)
      at org.springframework.web.servlet.FrameworkServlet.processRequest(Frame
      workServlet.java:571)
      at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServ
      let.java:511)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
      icationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
      ilterChain.java:206)
      at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCha
      racterEncodingFilter.java:108)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
      icationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
      ilterChain.java:206)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
      ilterChainProxy.java:265)
      at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(Filt
      erSecurityInterceptor.java:107)
      at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(Fi
      lterSecurityInterceptor.java:72)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
      ilterChainProxy.java:275)
      at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTra
      nslationFilter.java:124)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
      ilterChainProxy.java:275)
      at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFil
      ter(AnonymousProcessingFilter.java:125)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
      ilterChainProxy.java:275)
      at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(R
      ememberMeProcessingFilter.java:142)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
      ilterChainProxy.java:275)
      at org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doF
      ilter(SecurityContextHolderAwareRequestFilter.java:81)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
      ilterChainProxy.java:275)
      at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProces
      singFilter.java:271)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
      ilterChainProxy.java:275)
      at org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:1
      10)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
      ilterChainProxy.java:275)
      at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilte
      r(HttpSessionContextIntegrationFilter.java:249)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
      ilterChainProxy.java:275)
      at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.jav
      a:149)
      at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.j
      ava:98)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
      icationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
      ilterChain.java:206)
      at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
      icationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
      ilterChain.java:206)
      at org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.
      java:183)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
      icationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
      ilterChain.java:206)
      at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:41)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
      icationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
      ilterChain.java:206)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
      alve.java:230)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
      alve.java:175)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
      ava:128)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
      ava:104)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
      ve.java:109)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
      a:261)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
      :844)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
      ss(Http11Protocol.java:581)
      at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
      7)
      at java.lang.Thread.run(Thread.java:619)

      ------------------------------------------------------------------------------
      Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
      trial. Simplify your report design, integration and deployment - and focus on
      what you do best, core application coding. Discover what's new with
      Crystal Reports now. http://p.sf.net/sfu/bobj-july

      _______________________________________________
      Geoserver-users mailing list
      Geoserver-users@lists.sourceforge.net
      https://lists.sourceforge.net/lists/listinfo/geoserver-users

        Activity

        Hide
        Gabriel Roldan added a comment -
        fixed at r33805 for trunk and 33806 for 2.5.x.
        Changed the arcsde jndi datastore factory parameter from "jndiReferenceName" to "ArcSDE_jndiReferenceName"
        Show
        Gabriel Roldan added a comment - fixed at r33805 for trunk and 33806 for 2.5.x. Changed the arcsde jndi datastore factory parameter from "jndiReferenceName" to "ArcSDE_jndiReferenceName"

          People

          • Assignee:
            Gabriel Roldan
            Reporter:
            Gabriel Roldan
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: