Now is when we benefit from the merging of the two pieces of code.  I  
now have to modify the code so that the splitter knows about the  
precise functions that are supported.

Let me know if it works... It should but I don't have anything to  
test it against.

Jesse

On 24-Jul-06, at 3:28 PM, Chris Holmes wrote:

>
>
> Jesse Eichar wrote:
>> Hi Chris,
>> I've changed 2.2.x so it is backwards compatible as you suggest in  
>> this email.  But I'm leaving the changes on 2.3 because the new  
>> constructor is more flexible.
> Perfect, yeah, for sure things on trunk should have the latest and  
> greatest.  I'll try it out.
>
> Chris
>
>
>
>> Jesse
>> On 24-Jul-06, at 8:30 AM, Chris Holmes wrote:
>>> Sequence of events:
>>>
>>> 1. PostGIS filter processing wasn't working right with Functions  
>>> (correct me if I'm wrong here, this is my surface level  
>>> understanding, I couldn't figure out a deeper sense when really  
>>> digging in to the code as the function handling seemed to be  
>>> really naive)
>>>
>>> 2. Jesse ported WFS filter processing code to main, and Cory  
>>> ported it to PostGIS.
>>>
>>> 3. I complained about the port, since all the previous code that  
>>> did filter splitting still remained, and the new stuff was just  
>>> dumped in to PostGISDataStore, ignoring the nice decomposition we  
>>> did previously.
>>>
>>> 4. Cory fixed it the right way.  But changed the method signature  
>>> since the new filter stuff requires to know the attribute and  
>>> some transaction stuff.
>>>
>>> 5. All datastores were updated to the new method signature.
>>>
>>> 5 is the step that broke backwards compatibility, since if I just  
>>> build Oracle on its own, but don't also build main (which is the  
>>> right way from a customer perspective, I just pass them a new  
>>> oracle jar, not a whole new gt2-main jar), then it doesn't find  
>>> the method.
>>>
>>> I believe a way to fix may be to have all the non-WFS datastores  
>>> use the old method signature.  I know that this poses one  
>>> problem, since the featureType will be null.  I believe that sql  
>>> splitting code should not need to depend on knowing the  
>>> AttributeType - at least it did fine before, and the new stuff  
>>> doesn't depend on functions.  I concede that the new stuff might  
>>> do something a bit smarter, but I don't know it well enough, and  
>>> I know the older stuff worked just fine with out the additional  
>>> type checking.  The new stuff works fine without the transaction  
>>> argument thing, but in looking at the code, I fear that right now  
>>> it requires the featureType, or else it passes everything to the  
>>> post filter, which is obviously less than ideal.
>>>
>>> best regards,
>>>
>>> Chris
>>>
>>> Jody Garnett wrote:
>>>> Trying to figure out the sequence of events that broke  
>>>> compatibility here ...
>>>> Did you guys sort this out ... there is no follow up email.
>>>> Lets grab an agenda item if this is not resolved.
>>>> Jody
>>>>> So we lost backwards compatibility with DataStores.  I built a  
>>>>> new Oracle jar with a bug fix that didn't make it across from  
>>>>> 2.1.x.  I couldn't build because it needed a new main build as  
>>>>> there was a class not found.  So I built main again, and then  
>>>>> tried to just distribute the oracle jar.
>>>>>
>>>>> Got this error, buried is:
>>>>> Caused by: java.lang.NoSuchMethodError:
>>>>> org.geotools.data.jdbc.DefaultSQLBuilder.<init>(Lorg/geotools/ 
>>>>> filter/SQL
>>>>> Encoder;Lorg/geotools/feature/FeatureType;Lorg/geotools/filter/ 
>>>>> visitor/C
>>>>> lientTransactionAccessor;)V
>>>>>
>>>>> So now I have to distribute a 2.5 meg main jar to get users  
>>>>> working right.  Is there any way to make it so this code is  
>>>>> backwards compatible?  I'm not sure what a client transaction  
>>>>> accessor is.  This is RC's, so I'm not going to raise a big fit  
>>>>> which I would if it was 2.2.0.  But it kinda sucks since  
>>>>> GeoServer is in 1.3.2, and we did the upgrade to 2.2.x for  
>>>>> 1.3.1 since we thought it'd be stable - I'd ideally like my  
>>>>> datastore users to be able to upgrade a bug fix with only  
>>>>> having to put in one new jar.
>>>>>
>>>>> Chris
>>>>>
>>>>> -------- Original Message --------
>>>>> Subject: RE: [Geoserver-users] Geoserver leaves (again) too  
>>>>> many open database  connections to Oracle?
>>>>> Date: Fri, 21 Jul 2006 17:04:44 +0200
>>>>> From: Hans-Ulrich Otto <[EMAIL PROTECTED]>
>>>>> To: Chris Holmes <[EMAIL PROTECTED]>
>>>>> CC: Tilman klar <[EMAIL PROTECTED]>,    Hannes  
>>>>> Scharmann <[EMAIL PROTECTED]>
>>>>>
>>>>> Hi,
>>>>>
>>>>> I am getting the exceptions below, when I try to access WMS (via
>>>>> mapbuilder) with this jar:
>>>>>
>>>>> Thanks for the help,
>>>>> Uli.
>>>>> -----------------------------------
>>>>>
>>>>> http.HttpServlet.service(HttpServlet.java:689)
>>>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java: 
>>>>> 802)
>>>>>     at
>>>>> org.vfny.geoserver.wms.servlets.WmsDispatcher.doResponse 
>>>>> (WmsDispatcher.j
>>>>> ava:156)
>>>>>     at
>>>>> org.vfny.geoserver.wms.servlets.WmsDispatcher.doGet 
>>>>> (WmsDispatcher.java:1
>>>>> 15)
>>>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java: 
>>>>> 689)
>>>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java: 
>>>>> 802)
>>>>>     at
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
>>>>> (Applica
>>>>> tionFilterChain.java:252)
>>>>>     at
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter 
>>>>> (ApplicationFilt
>>>>> erChain.java:173)
>>>>>     at
>>>>> org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter 
>>>>> (SetCharac
>>>>> terEncodingFilter.java:122)
>>>>>     at
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
>>>>> (Applica
>>>>> tionFilterChain.java:202)
>>>>>     at
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter 
>>>>> (ApplicationFilt
>>>>> erChain.java:173)
>>>>>     at
>>>>> org.apache.catalina.core.StandardWrapperValve.invoke 
>>>>> (StandardWrapperValv
>>>>> e.java:213)
>>>>>     at
>>>>> org.apache.catalina.core.StandardContextValve.invoke 
>>>>> (StandardContextValv
>>>>> e.java:178)
>>>>>     at
>>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke 
>>>>> (Authenticator
>>>>> Base.java:524)
>>>>>     at
>>>>> org.apache.catalina.core.StandardHostValve.invoke 
>>>>> (StandardHostValve.java
>>>>> :126)
>>>>>     at
>>>>> org.apache.catalina.valves.ErrorReportValve.invoke 
>>>>> (ErrorReportValve.java
>>>>> :105)
>>>>>     at
>>>>> org.apache.catalina.core.StandardEngineValve.invoke 
>>>>> (StandardEngineValve.
>>>>> java:107)
>>>>>     at
>>>>> org.apache.catalina.connector.CoyoteAdapter.service 
>>>>> (CoyoteAdapter.java:1
>>>>> 48)
>>>>>     at
>>>>> org.apache.coyote.http11.Http11AprProcessor.process 
>>>>> (Http11AprProcessor.j
>>>>> ava:831)
>>>>>     at
>>>>> org.apache.coyote.http11.Http11AprProtocol 
>>>>> $Http11ConnectionHandler.proce
>>>>> ss(Http11AprProtocol.java:639)
>>>>>     at
>>>>> org.apache.tomcat.util.net.AprEndpoint$Worker.run 
>>>>> (AprEndpoint.java:1196)
>>>>>     at java.lang.Thread.run(Thread.java:595)
>>>>> Caused by: java.lang.NoSuchMethodError:
>>>>> org.geotools.data.jdbc.DefaultSQLBuilder.<init>(Lorg/geotools/ 
>>>>> filter/SQL
>>>>> Encoder;Lorg/geotools/feature/FeatureType;Lorg/geotools/filter/ 
>>>>> visitor/C
>>>>> lientTransactionAccessor;)V
>>>>>     at
>>>>> org.geotools.data.oracle.OracleDataStore.getSqlBuilder 
>>>>> (OracleDataStore.j
>>>>> ava:257)
>>>>>     at
>>>>> org.geotools.data.jdbc.JDBC1DataStore.getFeatureReader 
>>>>> (JDBC1DataStore.ja
>>>>> va:601)
>>>>>     at
>>>>> org.geotools.data.jdbc.JDBCFeatureCollection.reader 
>>>>> (JDBCFeatureCollectio
>>>>> n.java:78)
>>>>>     at
>>>>> org.geotools.renderer.lite.StreamingRenderer.getReader 
>>>>> (StreamingRenderer
>>>>> .java:1096)
>>>>>     at
>>>>> org.geotools.renderer.lite.StreamingRenderer.processStylers 
>>>>> (StreamingRen
>>>>> derer.java:1194)
>>>>>     at
>>>>> org.geotools.renderer.lite.StreamingRenderer.paint 
>>>>> (StreamingRenderer.jav
>>>>> a:506)
>>>>>     at
>>>>> org.geotools.renderer.lite.StreamingRenderer.paint 
>>>>> (StreamingRenderer.jav
>>>>> a:390)
>>>>>     at
>>>>> org.vfny.geoserver.wms.responses.DefaultRasterMapProducer.produceM 
>>>>> ap(Def
>>>>> aultRasterMapProducer.java:244)
>>>>>     at
>>>>> org.vfny.geoserver.wms.responses.GetMapResponse.execute 
>>>>> (GetMapResponse.j
>>>>> ava:187)
>>>>>     at
>>>>> org.vfny.geoserver.servlets.AbstractService.doService 
>>>>> (AbstractService.ja
>>>>> va:452)
>>>>>     ... 23 more
>>>>>
>>>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java: 
>>>>> 689)
>>>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java: 
>>>>> 802)
>>>>>     at
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
>>>>> (Applica
>>>>> tionFilterChain.java:252)
>>>>>     at
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter 
>>>>> (ApplicationFilt
>>>>> erChain.java:173)
>>>>>     at
>>>>> org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter 
>>>>> (SetCharac
>>>>> terEncodingFilter.java:122)
>>>>>     at
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
>>>>> (Applica
>>>>> tionFilterChain.java:202)
>>>>>     at
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter 
>>>>> (ApplicationFilt
>>>>> erChain.java:173)
>>>>>     at
>>>>> org.apache.catalina.core.StandardWrapperValve.invoke 
>>>>> (StandardWrapperValv
>>>>> e.java:213)
>>>>>     at
>>>>> org.apache.catalina.core.StandardContextValve.invoke 
>>>>> (StandardContextValv
>>>>> e.java:178)
>>>>>     at
>>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke 
>>>>> (Authenticator
>>>>> Base.java:524)
>>>>>     at
>>>>> org.apache.catalina.core.StandardHostValve.invoke 
>>>>> (StandardHostValve.java
>>>>> :126)
>>>>>     at
>>>>> org.apache.catalina.valves.ErrorReportValve.invoke 
>>>>> (ErrorReportValve.java
>>>>> :105)
>>>>>     at
>>>>> org.apache.catalina.core.StandardEngineValve.invoke 
>>>>> (StandardEngineValve.
>>>>> java:107)
>>>>>     at
>>>>> org.apache.catalina.connector.CoyoteAdapter.service 
>>>>> (CoyoteAdapter.java:1
>>>>> 48)
>>>>>     at
>>>>> org.apache.coyote.http11.Http11AprProcessor.process 
>>>>> (Http11AprProcessor.j
>>>>> ava:831)
>>>>>     at
>>>>> org.apache.coyote.http11.Http11AprProtocol 
>>>>> $Http11ConnectionHandler.proce
>>>>> ss(Http11AprProtocol.java:639)
>>>>>     at
>>>>> org.apache.tomcat.util.net.AprEndpoint$Worker.run 
>>>>> (AprEndpoint.java:1196)
>>>>>     at java.lang.Thread.run(Thread.java:595)
>>>>> Caused by: java.lang.NoSuchMethodError:
>>>>> org.geotools.data.jdbc.DefaultSQLBuilder.<init>(Lorg/geotools/ 
>>>>> filter/SQL
>>>>> Encoder;Lorg/geotools/feature/FeatureType;Lorg/geotools/filter/ 
>>>>> visitor/C
>>>>> lientTransactionAccessor;)V
>>>>>     at
>>>>> org.geotools.data.oracle.OracleDataStore.getSqlBuilder 
>>>>> (OracleDataStore.j
>>>>> ava:257)
>>>>>     at
>>>>> org.geotools.data.jdbc.JDBC1DataStore.getFeatureReader 
>>>>> (JDBC1DataStore.ja
>>>>> va:601)
>>>>>     at
>>>>> org.geotools.data.jdbc.JDBCFeatureCollection.reader 
>>>>> (JDBCFeatureCollectio
>>>>> n.java:78)
>>>>>     at
>>>>> org.geotools.renderer.lite.StreamingRenderer.getReader 
>>>>> (StreamingRenderer
>>>>> .java:1096)
>>>>>     at
>>>>> org.geotools.renderer.lite.StreamingRenderer.processStylers 
>>>>> (StreamingRen
>>>>> derer.java:1194)
>>>>>     at
>>>>> org.geotools.renderer.lite.StreamingRenderer.paint 
>>>>> (StreamingRenderer.jav
>>>>> a:506)
>>>>>     at
>>>>> org.geotools.renderer.lite.StreamingRenderer.paint 
>>>>> (StreamingRenderer.jav
>>>>> a:390)
>>>>>     at
>>>>> org.vfny.geoserver.wms.responses.DefaultRasterMapProducer.produceM 
>>>>> ap(Def
>>>>> aultRasterMapProducer.java:244)
>>>>>     at
>>>>> org.vfny.geoserver.wms.responses.GetMapResponse.execute 
>>>>> (GetMapResponse.j
>>>>> ava:187)
>>>>>     at
>>>>> org.vfny.geoserver.servlets.AbstractService.doService 
>>>>> (AbstractService.ja
>>>>> va:452)
>>>>>     ... 23 more
>>>>> erChain.doFilter(ApplicationFilterChain.java:173)
>>>>>     at
>>>>> org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter 
>>>>> (SetCharac
>>>>> terEncodingFilter.java:122)
>>>>>     at
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
>>>>> (Applica
>>>>> tionFilterChain.java:202)
>>>>>     at
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter 
>>>>> (ApplicationFilt
>>>>> erChain.java:173)
>>>>>     at
>>>>> org.apache.catalina.core.StandardWrapperValve.invoke 
>>>>> (StandardWrapperValv
>>>>> e.java:213)
>>>>>     at
>>>>> org.apache.catalina.core.StandardContextValve.invoke 
>>>>> (StandardContextValv
>>>>> e.java:178)
>>>>>     at
>>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke 
>>>>> (Authenticator
>>>>> Base.java:524)
>>>>>     at
>>>>> org.apache.catalina.core.StandardHostValve.invoke 
>>>>> (StandardHostValve.java
>>>>> :126)
>>>>>     at
>>>>> org.apache.catalina.valves.ErrorReportValve.invoke 
>>>>> (ErrorReportValve.java
>>>>> :105)
>>>>>     at
>>>>> org.apache.catalina.core.StandardEngineValve.invoke 
>>>>> (StandardEngineValve.
>>>>> java:107)
>>>>>     at
>>>>> org.apache.catalina.connector.CoyoteAdapter.service 
>>>>> (CoyoteAdapter.java:1
>>>>> 48)
>>>>>     at
>>>>> org.apache.coyote.http11.Http11AprProcessor.process 
>>>>> (Http11AprProcessor.j
>>>>> ava:831)
>>>>>     at
>>>>> org.apache.coyote.http11.Http11AprProtocol 
>>>>> $Http11ConnectionHandler.proce
>>>>> ss(Http11AprProtocol.java:639)
>>>>>     at
>>>>> org.apache.tomcat.util.net.AprEndpoint$Worker.run 
>>>>> (AprEndpoint.java:1196)
>>>>>     at java.lang.Thread.run(Thread.java:595)
>>>>> Caused by: java.lang.NoSuchMethodError:
>>>>> org.geotools.data.jdbc.DefaultSQLBuilder.<init>(Lorg/geotools/ 
>>>>> filter/SQL
>>>>> Encoder;Lorg/geotools/feature/FeatureType;Lorg/geotools/filter/ 
>>>>> visitor/C
>>>>> lientTransactionAccessor;)V
>>>>>     at
>>>>> org.geotools.data.oracle.OracleDataStore.getSqlBuilder 
>>>>> (OracleDataStore.j
>>>>> ava:257)
>>>>>     at
>>>>> org.geotools.data.jdbc.JDBC1DataStore.getFeatureReader 
>>>>> (JDBC1DataStore.ja
>>>>> va:601)
>>>>>     at
>>>>> org.geotools.data.jdbc.JDBCFeatureCollection.reader 
>>>>> (JDBCFeatureCollectio
>>>>> n.java:78)
>>>>>     at
>>>>> org.geotools.renderer.lite.StreamingRenderer.getReader 
>>>>> (StreamingRenderer
>>>>> .java:1096)
>>>>>     at
>>>>> org.geotools.renderer.lite.StreamingRenderer.processStylers 
>>>>> (StreamingRen
>>>>> derer.java:1194)
>>>>>     at
>>>>> org.geotools.renderer.lite.StreamingRenderer.paint 
>>>>> (StreamingRenderer.jav
>>>>> a:506)
>>>>>     at
>>>>> org.geotools.renderer.lite.StreamingRenderer.paint 
>>>>> (StreamingRenderer.jav
>>>>> a:390)
>>>>>     at
>>>>> org.vfny.geoserver.wms.responses.DefaultRasterMapProducer.produceM 
>>>>> ap(Def
>>>>> aultRasterMapProducer.java:244)
>>>>>     at
>>>>> org.vfny.geoserver.wms.responses.GetMapResponse.execute 
>>>>> (GetMapResponse.j
>>>>> ava:187)
>>>>>     at
>>>>> org.vfny.geoserver.servlets.AbstractService.doService 
>>>>> (AbstractService.ja
>>>>> va:452)
>>>>>     ... 23 more
>>>>>
>>>>>
>>>>>
>>>>> -----Original Message-----
>>>>> From: Chris Holmes [mailto:[EMAIL PROTECTED]
>>>>> Sent: Freitag, 21. Juli 2006 16:45
>>>>> To: Hans-Ulrich Otto
>>>>> Cc: Tilman klar; Hannes Scharmann
>>>>> Subject: Re: [Geoserver-users] Geoserver leaves (again) too  
>>>>> many open
>>>>> database connections to Oracle?
>>>>>
>>>>> What was the error?
>>>>>
>>>>> Maybe I'll try the oracle express edition this weekend, as it's  
>>>>> supposed
>>>>>
>>>>> to be lightweight and I can test on it.
>>>>>
>>>>> C
>>>>>
>>>>> Hans-Ulrich Otto wrote:
>>>>>> Hi,
>>>>>>
>>>>>> Thanks for the quick reply. Unfortunately, the jar does not work.
>>>>> After
>>>>>> replacing and restarting, geoserver was not able to connect to  
>>>>>> Oracle
>>>>> at
>>>>>> all.
>>>>>> Best regards,
>>>>>>
>>>>>> Uli.
>>>>>>
>>>>>> -----Original Message-----
>>>>>> From: Chris Holmes [mailto:[EMAIL PROTECTED] Sent:  
>>>>>> Donnerstag, 20. Juli 2006 21:41
>>>>>> To: Hans-Ulrich Otto
>>>>>> Cc: Tilman klar; Hannes Scharmann
>>>>>> Subject: Re: [Geoserver-users] Geoserver leaves (again) too  
>>>>>> many open
>>>>>> database connections to Oracle?
>>>>>>
>>>>>> Could you guys give this one a whirl?  There's been some  
>>>>>> development that leads to a small chance that I need to give  
>>>>>> you another update,
>>>>> but
>>>>>> the developers told me this should work.  If it's good, I'll  
>>>>>> go ahead and put out a plug-in release.
>>>>>>
>>>>>> best regards,
>>>>>>
>>>>>> Chris
>>>>>>
>>>>>> Hans-Ulrich Otto wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>>
>>>>>>> We upgraded this week geoserver 1.3.2 (from 1.3.0) and  
>>>>>>> noticed that suddenly an old (and in 1.3.0) already fixed  
>>>>>>> problem happens again: Geoserver leaves a lot of open  
>>>>>>> connections to Oracle db. At some
>>>>> point
>>>>>>> in time the max. number of connections is reached (in our  
>>>>>>> case 160)
>>>>>> and
>>>>>>> Oracle rejects any further access.
>>>>>>>
>>>>>>>
>>>>>>> Can we maybe fix this by using an older Oracle connector?
>>>>>>>
>>>>>>>
>>>>>>> Thanks in advance for a quick reply,
>>>>>>>
>>>>>>>
>>>>>>> Uli.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>> ------------------------------------------------------------------ 
>>>>> ------
>>>>> ------------------------------------------------------------------ 
>>>>> ------
>>>>>> -
>>>>>>> Take Surveys. Earn Cash. Influence the Future of IT
>>>>>>> Join SourceForge.net's Techsay panel and you'll get the  
>>>>>>> chance to
>>>>>> share your
>>>>>>> opinions on IT & business topics through brief surveys -- and  
>>>>>>> earn
>>>>>> cash
>>>>>>
>>>>> http://www.techsay.com/default.php? 
>>>>> page=join.php&p=sourceforge&CID=DEVDE
>>>>>> V
>>>>>>>
>>>>>>>
>>>>>>>
>>>>> ------------------------------------------------------------------ 
>>>>> ------
>>>>>>> _______________________________________________
>>>>>>> Geoserver-users mailing list
>>>>>>> [EMAIL PROTECTED]
>>>>>>> https://lists.sourceforge.net/lists/listinfo/geoserver-users
>>>>>>>
>>>>>>>
>>>>>>>
>>>>> ------------------------------------------------------------------ 
>>>>> -------
>>>>> Take Surveys. Earn Cash. Influence the Future of IT
>>>>> Join SourceForge.net's Techsay panel and you'll get the chance  
>>>>> to share your
>>>>> opinions on IT & business topics through brief surveys -- and  
>>>>> earn cash
>>>>> http://www.techsay.com/default.php? 
>>>>> page=join.php&p=sourceforge&CID=DEVDEV
>>>>> ------------------------------------------------------------------ 
>>>>> ------
>>>>>
>>>>> _______________________________________________
>>>>> Geotools-devel mailing list
>>>>> [email protected]
>>>>> https://lists.sourceforge.net/lists/listinfo/geotools-devel
>>>>>
>>>> ------------------------------------------------------------------- 
>>>> ------
>>>> Take Surveys. Earn Cash. Influence the Future of IT
>>>> Join SourceForge.net's Techsay panel and you'll get the chance  
>>>> to share your
>>>> opinions on IT & business topics through brief surveys -- and  
>>>> earn cash
>>>> http://www.techsay.com/default.php? 
>>>> page=join.php&p=sourceforge&CID=DEVDEV
>>>> _______________________________________________
>>>> Geotools-devel mailing list
>>>> [email protected]
>>>> https://lists.sourceforge.net/lists/listinfo/geotools-devel
>>>>
>>>
>>> --Chris Holmes
>>> The Open Planning Project
>>> http://topp.openplans.org
>>> <cholmes.vcf>
>>> -------------------------------------------------------------------- 
>>> -----
>>> Take Surveys. Earn Cash. Influence the Future of IT
>>> Join SourceForge.net's Techsay panel and you'll get the chance to  
>>> share your
>>> opinions on IT & business topics through brief surveys -- and  
>>> earn cash
>>> http://www.techsay.com/default.php? 
>>> page=join.php&p=sourceforge&CID=DEVDEV______________________________ 
>>> _________________
>>> Geotools-devel mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/geotools-devel
>> !DSPAM:1003,44c4f81a113702095110867!
>
> -- 
> Chris Holmes
> The Open Planning Project
> http://topp.openplans.org
> <cholmes.vcf>


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Geotools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to