[Geoserver-users] DB2 Datastore: Feature type could not be found for ...

Folks (especially David),

I still have a problem when defining a FeatureType stored in DB2.

I've done the following:
1) Installed DB2 8.2 and Spatial Extender (both at FP11), on a Windows 2000 Server box.
2) Installed GeoServer 1.3.1 on Jetty on said Windows box.
3) Loaded some shapefiles on SE (yes, I've defined the coordinate system and built a spatial index for the both of them and SE added a surrogate PK on these tables).
3) Defined a data store using DB2.
4) Tried to define a FeatureType for tables coming from said shapefiles: they show on the list, but when I hit "New"...

  1349660 [FINE] org.geotools.data.jdbc.ConnectionPool$ConnectionListManager - Co
nnection closed - adding to available connections.
  1349660 [INFO] org.geotools.data.db2.DB2DataStoreFactory - Successfully created
  DB2Datastore for: jdbc:db2://localhost:50000/SAMPLE
  1349670 [FINE] org.geotools.data.jdbc.ConnectionPool - Getting available connec
tion.
  1349941 [FINE] org.geotools.data.jdbc.ConnectionPool$ConnectionListManager - Co
nnection closed - adding to available connections.
org.geotools.data.SchemaNotFoundException: Feature type could not be found for P
OGFAGGIO2
         at org.geotools.data.jdbc.fidmapper.DefaultFIDMapperFactory.getPkColumnI
nfo(DefaultFIDMapperFactory.java:300)
         at org.geotools.data.jdbc.fidmapper.DefaultFIDMapperFactory.getMapper(De
faultFIDMapperFactory.java:95)
         at org.geotools.data.db2.DB2FIDMapperFactory.getMapper(DB2FIDMapperFacto
ry.java:77)
         at org.geotools.data.jdbc.JDBC1DataStore.buildFIDMapper(JDBC1DataStore.j
ava:1037)
         at org.geotools.data.jdbc.FeatureTypeHandler.getFIDMapper(FeatureTypeHan
dler.java:234)
         at org.geotools.data.jdbc.FeatureTypeHandler.getFeatureTypeInfo(FeatureT
ypeHandler.java:200)
         at org.geotools.data.jdbc.FeatureTypeHandler.getSchema(FeatureTypeHandle
r.java:169)
         at org.geotools.data.jdbc.JDBC1DataStore.getSchema(JDBC1DataStore.java:3
60)
         at org.vfny.geoserver.action.data.DataFeatureTypesNewAction.execute(Data
FeatureTypesNewAction.java:86)
         at org.vfny.geoserver.action.ConfigAction.execute(ConfigAction.java:98)
         at org.apache.struts.action.RequestProcessor.processActionPerform(Reques
tProcessor.java:484)
         at org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
va:274)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:148
2)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)

         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:360
)
         at org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApp
licationHandler.java:328)
         at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCha
racterEncodingFilter.java:122)
         at org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApp
licationHandler.java:320)
         at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicati
onHandler.java:272)
         at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:5
58)
         at org.mortbay.http.HttpContext.handle(HttpContext.java:1717)
         at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplication
Context.java:549)
         at org.mortbay.http.HttpContext.handle(HttpContext.java:1667)
         at org.mortbay.http.HttpServer.service(HttpServer.java:863)
         at org.mortbay.http.HttpConnection.service(HttpConnection.java:773)
         at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:937)
         at org.mortbay.http.HttpConnection.handle(HttpConnection.java:790)
         at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:
201)
         at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
         at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:455)
Caused by: com.ibm.db2.jcc.a.SqlException: DB2 SQL error: SQLCODE: -443, SQLSTAT
E: 38553, SQLERRMC: SYSIBM.SQLPRIMARYKEYS;PRIMARYKEYS;SYSIBM:CLI:-805
         at com.ibm.db2.jcc.a.rf.d(rf.java:1396)
         at com.ibm.db2.jcc.b.jb.l(jb.java:356)
         at com.ibm.db2.jcc.b.jb.e(jb.java:92)
         at com.ibm.db2.jcc.b.w.e(w.java:72)
         at com.ibm.db2.jcc.b.cc.i(cc.java:202)
         at com.ibm.db2.jcc.a.rf.q(rf.java:1363)
         at com.ibm.db2.jcc.a.sf.d(sf.java:2350)
         at com.ibm.db2.jcc.a.tf.X(tf.java:188)
         at com.ibm.db2.jcc.a.t.a(t.java:7199)
         at com.ibm.db2.jcc.a.t.d(t.java:6561)
         at com.ibm.db2.jcc.a.t.getPrimaryKeys(t.java:6489)
         at org.geotools.data.jdbc.fidmapper.DefaultFIDMapperFactory.getPkColumnI
nfo(DefaultFIDMapperFactory.java:254)
         ... 31 more
  1350201 [INFO] org.geotools.data.db2.DB2ConnectionFactory - Successfully obtain
ed DB2 ConnectionPool
  1350201 [FINE] org.geotools.data.jdbc.ConnectionPool - Getting available connec
tion.
  1350211 [FINE] org.geotools.data.jdbc.ConnectionPool$ConnectionListManager - Co
nnection closed - adding to available connections.

Any clue ?

--------------------
    Luca Morandini
www.lucamorandini.it
--------------------