Thread: Right version of jdbc
Raivo Rebane schrieb am 25.09.2023 um 10:36: > I use : > PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bit > and > PostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1 > > What versions of jdbc driver I have to use for proper work ? Use the latest, i.e. 42.6.0
Hi,I use :PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bitandPostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1What versions of jdbc driver I have to use for proper work ?Regards,Raivo
Hi,The latest version of the driver is usually the right answer. So 42.5.4Dave Cramerwww.postgres.rocksOn Mon, 25 Sept 2023 at 07:03, Raivo Rebane <raivore55@gmail.com> wrote:Hi,I use :PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bitandPostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1What versions of jdbc driver I have to use for proper work ?Regards,Raivo
[INFO] Copying postgresql-42.6.0.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\postgresql-42.6.0.jar
[INFO] Copying checker-qual-3.31.0.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\checker-qual-3.31.0.jar
at backendproject.ProcQueryMushrooms.ProcQuery(ProcQueryMushrooms.java:41)
at backendproject.BackendMain.main(BackendMain.java:81)
Caused by: java.lang.ClassNotFoundException: org.postgis.PGgeometry
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
PostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
Sorry 42.6.0Interesting that github still has 42.5.4 as the releaseDave Cramerwww.postgres.rocksOn Mon, 25 Sept 2023 at 07:27, Dave Cramer <davecramer@postgres.rocks> wrote:Hi,The latest version of the driver is usually the right answer. So 42.5.4Dave Cramerwww.postgres.rocksOn Mon, 25 Sept 2023 at 07:03, Raivo Rebane <raivore55@gmail.com> wrote:Hi,I use :PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bitandPostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1What versions of jdbc driver I have to use for proper work ?Regards,Raivo
Hi,now I using following -[INFO] Copying postgis-jdbc-2.1.7.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\postgis-jdbc-2.1.7.jar
[INFO] Copying postgresql-42.6.0.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\postgresql-42.6.0.jar
[INFO] Copying checker-qual-3.31.0.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\checker-qual-3.31.0.jarbut on executions I got -Exception in thread "main" java.lang.NoClassDefFoundError: org/postgis/PGgeometry
at backendproject.ProcQueryMushrooms.ProcQuery(ProcQueryMushrooms.java:41)
at backendproject.BackendMain.main(BackendMain.java:81)
Caused by: java.lang.ClassNotFoundException: org.postgis.PGgeometry
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)What I have to do ?I use following -PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bit
PostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1RegardsRaivoOn Mon, Sep 25, 2023 at 2:29 PM Dave Cramer <davecramer@postgres.rocks> wrote:Sorry 42.6.0Interesting that github still has 42.5.4 as the releaseDave Cramerwww.postgres.rocksOn Mon, 25 Sept 2023 at 07:27, Dave Cramer <davecramer@postgres.rocks> wrote:Hi,The latest version of the driver is usually the right answer. So 42.5.4Dave Cramerwww.postgres.rocksOn Mon, 25 Sept 2023 at 07:03, Raivo Rebane <raivore55@gmail.com> wrote:Hi,I use :PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bitandPostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1What versions of jdbc driver I have to use for proper work ?Regards,Raivo
<dependency>
<groupId>org.postgis</groupId>
<artifactId>postgis-jdbc</artifactId>
<version>1.3.3</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.5.4</version> <!-- Kasuta kõige uuemat versiooni -->
</dependency>
</dependencies>
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getString(AbstractJdbc2ResultSet.java:1889)
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp(AbstractJdbc2ResultSet.java:438)
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp(AbstractJdbc2ResultSet.java:2406)
at backendproject.BackendMain.main(BackendMain.java:64)
Hi,now I using following -[INFO] Copying postgis-jdbc-2.1.7.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\postgis-jdbc-2.1.7.jar
[INFO] Copying postgresql-42.6.0.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\postgresql-42.6.0.jar
[INFO] Copying checker-qual-3.31.0.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\checker-qual-3.31.0.jarbut on executions I got -Exception in thread "main" java.lang.NoClassDefFoundError: org/postgis/PGgeometry
at backendproject.ProcQueryMushrooms.ProcQuery(ProcQueryMushrooms.java:41)
at backendproject.BackendMain.main(BackendMain.java:81)
Caused by: java.lang.ClassNotFoundException: org.postgis.PGgeometry
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)What I have to do ?I use following -PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bit
PostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1RegardsRaivoOn Mon, Sep 25, 2023 at 2:29 PM Dave Cramer <davecramer@postgres.rocks> wrote:Sorry 42.6.0Interesting that github still has 42.5.4 as the releaseDave Cramerwww.postgres.rocksOn Mon, 25 Sept 2023 at 07:27, Dave Cramer <davecramer@postgres.rocks> wrote:Hi,The latest version of the driver is usually the right answer. So 42.5.4Dave Cramerwww.postgres.rocksOn Mon, 25 Sept 2023 at 07:03, Raivo Rebane <raivore55@gmail.com> wrote:Hi,I use :PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bitandPostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1What versions of jdbc driver I have to use for proper work ?Regards,Raivo
25.09.2023 15:35 <DIR> .
25.09.2023 15:33 <DIR> ..
25.09.2023 15:33 214 381 checker-qual-3.5.0.jar
25.09.2023 13:14 75 847 postgis-jdbc-1.3.3.jar
25.09.2023 13:14 2 833 postgis-stubs-1.3.3.jar
25.09.2023 15:33 1 049 651 postgresql-42.5.4.jar
25.09.2023 13:14 474 746 postgresql-8.3-603.jdbc4.jar
Hi, now I use -<dependencies>
<dependency>
<groupId>org.postgis</groupId>
<artifactId>postgis-jdbc</artifactId>
<version>1.3.3</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.5.4</version> <!-- Kasuta kõige uuemat versiooni -->
</dependency>
</dependencies>But I got error -Exception in thread "main" java.lang.NoSuchMethodError: 'org.postgresql.core.Encoding org.postgresql.core.BaseConnection.getEncoding()'
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getString(AbstractJdbc2ResultSet.java:1889)
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp(AbstractJdbc2ResultSet.java:438)
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp(AbstractJdbc2ResultSet.java:2406)
at backendproject.BackendMain.main(BackendMain.java:64)Whats wrong ?RaivoOn Mon, Sep 25, 2023 at 3:26 PM Raivo Rebane <raivore55@gmail.com> wrote:Hi,now I using following -[INFO] Copying postgis-jdbc-2.1.7.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\postgis-jdbc-2.1.7.jar
[INFO] Copying postgresql-42.6.0.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\postgresql-42.6.0.jar
[INFO] Copying checker-qual-3.31.0.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\checker-qual-3.31.0.jarbut on executions I got -Exception in thread "main" java.lang.NoClassDefFoundError: org/postgis/PGgeometry
at backendproject.ProcQueryMushrooms.ProcQuery(ProcQueryMushrooms.java:41)
at backendproject.BackendMain.main(BackendMain.java:81)
Caused by: java.lang.ClassNotFoundException: org.postgis.PGgeometry
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)What I have to do ?I use following -PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bit
PostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1RegardsRaivoOn Mon, Sep 25, 2023 at 2:29 PM Dave Cramer <davecramer@postgres.rocks> wrote:Sorry 42.6.0Interesting that github still has 42.5.4 as the releaseDave Cramerwww.postgres.rocksOn Mon, 25 Sept 2023 at 07:27, Dave Cramer <davecramer@postgres.rocks> wrote:Hi,The latest version of the driver is usually the right answer. So 42.5.4Dave Cramerwww.postgres.rocksOn Mon, 25 Sept 2023 at 07:03, Raivo Rebane <raivore55@gmail.com> wrote:Hi,I use :PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bitandPostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1What versions of jdbc driver I have to use for proper work ?Regards,Raivo
And target/lib is s following :Directory of C:\Users\Raivo\eclipse-workspace\backendproject\target\lib
25.09.2023 15:35 <DIR> .
25.09.2023 15:33 <DIR> ..
25.09.2023 15:33 214 381 checker-qual-3.5.0.jar
25.09.2023 13:14 75 847 postgis-jdbc-1.3.3.jar
25.09.2023 13:14 2 833 postgis-stubs-1.3.3.jar
25.09.2023 15:33 1 049 651 postgresql-42.5.4.jar
25.09.2023 13:14 474 746 postgresql-8.3-603.jdbc4.jarRaivoOn Mon, Sep 25, 2023 at 3:38 PM Raivo Rebane <raivore55@gmail.com> wrote:Hi, now I use -<dependencies>
<dependency>
<groupId>org.postgis</groupId>
<artifactId>postgis-jdbc</artifactId>
<version>1.3.3</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.5.4</version> <!-- Kasuta kõige uuemat versiooni -->
</dependency>
</dependencies>But I got error -Exception in thread "main" java.lang.NoSuchMethodError: 'org.postgresql.core.Encoding org.postgresql.core.BaseConnection.getEncoding()'
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getString(AbstractJdbc2ResultSet.java:1889)
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp(AbstractJdbc2ResultSet.java:438)
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp(AbstractJdbc2ResultSet.java:2406)
at backendproject.BackendMain.main(BackendMain.java:64)Whats wrong ?RaivoOn Mon, Sep 25, 2023 at 3:26 PM Raivo Rebane <raivore55@gmail.com> wrote:Hi,now I using following -[INFO] Copying postgis-jdbc-2.1.7.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\postgis-jdbc-2.1.7.jar
[INFO] Copying postgresql-42.6.0.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\postgresql-42.6.0.jar
[INFO] Copying checker-qual-3.31.0.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\checker-qual-3.31.0.jarbut on executions I got -Exception in thread "main" java.lang.NoClassDefFoundError: org/postgis/PGgeometry
at backendproject.ProcQueryMushrooms.ProcQuery(ProcQueryMushrooms.java:41)
at backendproject.BackendMain.main(BackendMain.java:81)
Caused by: java.lang.ClassNotFoundException: org.postgis.PGgeometry
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)What I have to do ?I use following -PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bit
PostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1RegardsRaivoOn Mon, Sep 25, 2023 at 2:29 PM Dave Cramer <davecramer@postgres.rocks> wrote:Sorry 42.6.0Interesting that github still has 42.5.4 as the releaseDave Cramerwww.postgres.rocksOn Mon, 25 Sept 2023 at 07:27, Dave Cramer <davecramer@postgres.rocks> wrote:Hi,The latest version of the driver is usually the right answer. So 42.5.4Dave Cramerwww.postgres.rocksOn Mon, 25 Sept 2023 at 07:03, Raivo Rebane <raivore55@gmail.com> wrote:Hi,I use :PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bitandPostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1What versions of jdbc driver I have to use for proper work ?Regards,Raivo
Hi,postgresql-8.3-603.jdbc4.jar is added by maven maven install. How to avoid it ?
On 9/25/23 06:38, Raivo Rebane wrote: > Hi, now I use - > <dependencies> > <dependency> > <groupId>org.postgis</groupId> > <artifactId>postgis-jdbc</artifactId> > <version>1.3.3</version> > </dependency> > <dependency> > <groupId>org.postgresql</groupId> > <artifactId>postgresql</artifactId> > <version>42.5.4</version> <!-- Kasuta kõige uuemat versiooni --> > </dependency> > </dependencies> > But I got error - > Exception in thread "main" java.lang.NoSuchMethodError: > 'org.postgresql.core.Encoding > org.postgresql.core.BaseConnection.getEncoding()' > at > org.postgresql.jdbc2.AbstractJdbc2ResultSet.getString(AbstractJdbc2ResultSet.java:1889) > at > org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp(AbstractJdbc2ResultSet.java:438) > at > org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp(AbstractJdbc2ResultSet.java:2406) > at backendproject.BackendMain.main(BackendMain.java:64) > > Whats wrong ? Show your application CLASSPATH.
And target/lib is s following :Directory of C:\Users\Raivo\eclipse-workspace\backendproject\target\lib
25.09.2023 15:35 <DIR> .
25.09.2023 15:33 <DIR> ..
25.09.2023 15:33 214 381 checker-qual-3.5.0.jar
25.09.2023 13:14 75 847 postgis-jdbc-1.3.3.jar
25.09.2023 13:14 2 833 postgis-stubs-1.3.3.jar
25.09.2023 15:33 1 049 651 postgresql-42.5.4.jar
25.09.2023 13:14 474 746 postgresql-8.3-603.jdbc4.jarRaivoOn Mon, Sep 25, 2023 at 3:38 PM Raivo Rebane <raivore55@gmail.com> wrote:Hi, now I use -<dependencies>
<dependency>
<groupId>org.postgis</groupId>
<artifactId>postgis-jdbc</artifactId>
<version>1.3.3</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.5.4</version> <!-- Kasuta kõige uuemat versiooni -->
</dependency>
</dependencies>But I got error -Exception in thread "main" java.lang.NoSuchMethodError: 'org.postgresql.core.Encoding org.postgresql.core.BaseConnection.getEncoding()'
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getString(AbstractJdbc2ResultSet.java:1889)
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp(AbstractJdbc2ResultSet.java:438)
at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getTimestamp(AbstractJdbc2ResultSet.java:2406)
at backendproject.BackendMain.main(BackendMain.java:64)Whats wrong ?RaivoOn Mon, Sep 25, 2023 at 3:26 PM Raivo Rebane <raivore55@gmail.com> wrote:Hi,now I using following -[INFO] Copying postgis-jdbc-2.1.7.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\postgis-jdbc-2.1.7.jar
[INFO] Copying postgresql-42.6.0.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\postgresql-42.6.0.jar
[INFO] Copying checker-qual-3.31.0.jar to C:\Users\Raivo\eclipse-workspace\backendproject\target\lib\checker-qual-3.31.0.jarbut on executions I got -Exception in thread "main" java.lang.NoClassDefFoundError: org/postgis/PGgeometry
at backendproject.ProcQueryMushrooms.ProcQuery(ProcQueryMushrooms.java:41)
at backendproject.BackendMain.main(BackendMain.java:81)
Caused by: java.lang.ClassNotFoundException: org.postgis.PGgeometry
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)What I have to do ?I use following -PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bit
PostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1RegardsRaivoOn Mon, Sep 25, 2023 at 2:29 PM Dave Cramer <davecramer@postgres.rocks> wrote:Sorry 42.6.0Interesting that github still has 42.5.4 as the releaseDave Cramerwww.postgres.rocksOn Mon, 25 Sept 2023 at 07:27, Dave Cramer <davecramer@postgres.rocks> wrote:Hi,The latest version of the driver is usually the right answer. So 42.5.4Dave Cramerwww.postgres.rocksOn Mon, 25 Sept 2023 at 07:03, Raivo Rebane <raivore55@gmail.com> wrote:Hi,I use :PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bitandPostGIS 3.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1What versions of jdbc driver I have to use for proper work ?Regards,Raivo
Hi,Thanks for response, but if I using following dependencies :<dependencies>
<dependency>
<groupId>net.postgis</groupId>
<artifactId>postgis-jdbc</artifactId>
<version>2021.1.0</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.6.0</version> <!-- Kasuta kõige uuemat versiooni -->
</dependency>
</dependencies>
I have error :
The type org.postgresql.util.PGobject cannot be resolved. It is indirectly referenced from required type org.postgis.PGgeometry
What is wrong with me ?
Raivo
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:702)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228)
at MushroomAPIs.AddMushrooms.doGet(AddMushrooms.java:30)
First of all please use reply all so that everyone sees the answers.Not sure since PgObject is certainly in the jdbc jar. pgjdbc/pgjdbc/src/main/java/org/postgresql/util/PGobject.java at 5709a20fbef453749d2394e11502527e4a3ab5bb · pgjdbc/pgjdbc (github.com)I suggest at this point you provide a test project on github that you can share.There is something wrong with the classpathDave Cramerwww.postgres.rocksOn Wed, 27 Sept 2023 at 01:52, Raivo Rebane <raivore55@gmail.com> wrote:Hi,Thanks for response, but if I using following dependencies :<dependencies>
<dependency>
<groupId>net.postgis</groupId>
<artifactId>postgis-jdbc</artifactId>
<version>2021.1.0</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.6.0</version> <!-- Kasuta kõige uuemat versiooni -->
</dependency>
</dependencies>
I have error :
The type org.postgresql.util.PGobject cannot be resolved. It is indirectly referenced from required type org.postgis.PGgeometry
What is wrong with me ?
Raivo
Hi,I made a new Java application Eclipse Dynamic WEB application and want to use Postgres - PostgreSQL 10.14 on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 9.3.0-10ubuntu2) 9.3.0, 64-bit and Postgis - 2.4 USE_GEOS=1 USE_PROJ=1 USE_STATS=1.I added some jdbc-s in my project webapps/WEB-INF/lib directory which now contains - javax.servlet-api.jar postgis-jdbc-2.2.1.jar postgresql-42.2.5.jre7.jar.
But they don't fit the needs and I got from tomcat -java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/mushroom_database
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:702)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228)
at MushroomAPIs.AddMushrooms.doGet(AddMushrooms.java:30)What's wrong. Or is better to use more newer postgres. And then which jdbc-I need to use ?RegardsRaivoOn Wed, Sep 27, 2023 at 12:43 PM Dave Cramer <davecramer@postgres.rocks> wrote:First of all please use reply all so that everyone sees the answers.Not sure since PgObject is certainly in the jdbc jar. pgjdbc/pgjdbc/src/main/java/org/postgresql/util/PGobject.java at 5709a20fbef453749d2394e11502527e4a3ab5bb · pgjdbc/pgjdbc (github.com)I suggest at this point you provide a test project on github that you can share.There is something wrong with the classpathDave Cramerwww.postgres.rocksOn Wed, 27 Sept 2023 at 01:52, Raivo Rebane <raivore55@gmail.com> wrote:Hi,Thanks for response, but if I using following dependencies :<dependencies>
<dependency>
<groupId>net.postgis</groupId>
<artifactId>postgis-jdbc</artifactId>
<version>2021.1.0</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.6.0</version> <!-- Kasuta kõige uuemat versiooni -->
</dependency>
</dependencies>
I have error :
The type org.postgresql.util.PGobject cannot be resolved. It is indirectly referenced from required type org.postgis.PGgeometry
What is wrong with me ?
Raivo
Dave Cramerwww.postgres.rocksOn Thu, 28 Sept 2023 at 02:18, Raivo Rebane <raivore55@gmail.com> wrote:Hi,I made a new Java application Eclipse Dynamic WEB application and want to use Postgres - PostgreSQL 10.14 on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 9.3.0-10ubuntu2) 9.3.0, 64-bit and Postgis - 2.4 USE_GEOS=1 USE_PROJ=1 USE_STATS=1.I added some jdbc-s in my project webapps/WEB-INF/lib directory which now contains - javax.servlet-api.jar postgis-jdbc-2.2.1.jar postgresql-42.2.5.jre7.jar.postgresql-42.2.5.jre7.jar. is for java 7.I suggest you use the latest versions of postgis and postgres jdbcDaveBut they don't fit the needs and I got from tomcat -java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/mushroom_database
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:702)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228)
at MushroomAPIs.AddMushrooms.doGet(AddMushrooms.java:30)What's wrong. Or is better to use more newer postgres. And then which jdbc-I need to use ?RegardsRaivoOn Wed, Sep 27, 2023 at 12:43 PM Dave Cramer <davecramer@postgres.rocks> wrote:First of all please use reply all so that everyone sees the answers.Not sure since PgObject is certainly in the jdbc jar. pgjdbc/pgjdbc/src/main/java/org/postgresql/util/PGobject.java at 5709a20fbef453749d2394e11502527e4a3ab5bb · pgjdbc/pgjdbc (github.com)I suggest at this point you provide a test project on github that you can share.There is something wrong with the classpathDave Cramerwww.postgres.rocksOn Wed, 27 Sept 2023 at 01:52, Raivo Rebane <raivore55@gmail.com> wrote:Hi,Thanks for response, but if I using following dependencies :<dependencies>
<dependency>
<groupId>net.postgis</groupId>
<artifactId>postgis-jdbc</artifactId>
<version>2021.1.0</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.6.0</version> <!-- Kasuta kõige uuemat versiooni -->
</dependency>
</dependencies>
I have error :
The type org.postgresql.util.PGobject cannot be resolved. It is indirectly referenced from required type org.postgis.PGgeometry
What is wrong with me ?
Raivo
On 9/28/23 09:41, Raivo Rebane wrote: > Now I changed the Postgres Server to version 15 and making Tomcat 9.0 > project. > Now I am using postgresql-42.6.0.jar driver, but Tomcat gives error : > java.sql.SQLException: No suitable driver found for > jdbc:postgresql://localhost:5432/mushroom_database > What driver I have to use for suitable driver. > Or must I downgrade my postgres version ? > Can you show the code you use to make the database connection?
Now I changed the Postgres Server to version 15 and making Tomcat 9.0 project.Now I am using postgresql-42.6.0.jar driver, but Tomcat gives error :java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/mushroom_databaseWhat driver I have to use for suitable driver.Or must I downgrade my postgres version ?RegardsRaivoOn Thu, Sep 28, 2023 at 12:32 PM Dave Cramer <davecramer@postgres.rocks> wrote:Dave Cramerwww.postgres.rocksOn Thu, 28 Sept 2023 at 02:18, Raivo Rebane <raivore55@gmail.com> wrote:Hi,I made a new Java application Eclipse Dynamic WEB application and want to use Postgres - PostgreSQL 10.14 on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 9.3.0-10ubuntu2) 9.3.0, 64-bit and Postgis - 2.4 USE_GEOS=1 USE_PROJ=1 USE_STATS=1.I added some jdbc-s in my project webapps/WEB-INF/lib directory which now contains - javax.servlet-api.jar postgis-jdbc-2.2.1.jar postgresql-42.2.5.jre7.jar.postgresql-42.2.5.jre7.jar. is for java 7.I suggest you use the latest versions of postgis and postgres jdbcDaveBut they don't fit the needs and I got from tomcat -java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/mushroom_database
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:702)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228)
at MushroomAPIs.AddMushrooms.doGet(AddMushrooms.java:30)What's wrong. Or is better to use more newer postgres. And then which jdbc-I need to use ?RegardsRaivoOn Wed, Sep 27, 2023 at 12:43 PM Dave Cramer <davecramer@postgres.rocks> wrote:First of all please use reply all so that everyone sees the answers.Not sure since PgObject is certainly in the jdbc jar. pgjdbc/pgjdbc/src/main/java/org/postgresql/util/PGobject.java at 5709a20fbef453749d2394e11502527e4a3ab5bb · pgjdbc/pgjdbc (github.com)I suggest at this point you provide a test project on github that you can share.There is something wrong with the classpathDave Cramerwww.postgres.rocksOn Wed, 27 Sept 2023 at 01:52, Raivo Rebane <raivore55@gmail.com> wrote:Hi,Thanks for response, but if I using following dependencies :<dependencies>
<dependency>
<groupId>net.postgis</groupId>
<artifactId>postgis-jdbc</artifactId>
<version>2021.1.0</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.6.0</version> <!-- Kasuta kõige uuemat versiooni -->
</dependency>
</dependencies>
I have error :
The type org.postgresql.util.PGobject cannot be resolved. It is indirectly referenced from required type org.postgis.PGgeometry
What is wrong with me ?
Raivo
Or may be I am using wrong version of Java - java version "17.0.8" 2023-07-18 LTSRaivoOn Thu, Sep 28, 2023 at 6:41 PM Raivo Rebane <raivore55@gmail.com> wrote:Now I changed the Postgres Server to version 15 and making Tomcat 9.0 project.Now I am using postgresql-42.6.0.jar driver, but Tomcat gives error :java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/mushroom_databaseWhat driver I have to use for suitable driver.Or must I downgrade my postgres version ?RegardsRaivoOn Thu, Sep 28, 2023 at 12:32 PM Dave Cramer <davecramer@postgres.rocks> wrote:Dave Cramerwww.postgres.rocksOn Thu, 28 Sept 2023 at 02:18, Raivo Rebane <raivore55@gmail.com> wrote:Hi,I made a new Java application Eclipse Dynamic WEB application and want to use Postgres - PostgreSQL 10.14 on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 9.3.0-10ubuntu2) 9.3.0, 64-bit and Postgis - 2.4 USE_GEOS=1 USE_PROJ=1 USE_STATS=1.I added some jdbc-s in my project webapps/WEB-INF/lib directory which now contains - javax.servlet-api.jar postgis-jdbc-2.2.1.jar postgresql-42.2.5.jre7.jar.postgresql-42.2.5.jre7.jar. is for java 7.I suggest you use the latest versions of postgis and postgres jdbcDaveBut they don't fit the needs and I got from tomcat -java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/mushroom_database
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:702)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228)
at MushroomAPIs.AddMushrooms.doGet(AddMushrooms.java:30)What's wrong. Or is better to use more newer postgres. And then which jdbc-I need to use ?RegardsRaivoOn Wed, Sep 27, 2023 at 12:43 PM Dave Cramer <davecramer@postgres.rocks> wrote:First of all please use reply all so that everyone sees the answers.Not sure since PgObject is certainly in the jdbc jar. pgjdbc/pgjdbc/src/main/java/org/postgresql/util/PGobject.java at 5709a20fbef453749d2394e11502527e4a3ab5bb · pgjdbc/pgjdbc (github.com)I suggest at this point you provide a test project on github that you can share.There is something wrong with the classpathDave Cramerwww.postgres.rocksOn Wed, 27 Sept 2023 at 01:52, Raivo Rebane <raivore55@gmail.com> wrote:Hi,Thanks for response, but if I using following dependencies :<dependencies>
<dependency>
<groupId>net.postgis</groupId>
<artifactId>postgis-jdbc</artifactId>
<version>2021.1.0</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.6.0</version> <!-- Kasuta kõige uuemat versiooni -->
</dependency>
</dependencies>
I have error :
The type org.postgresql.util.PGobject cannot be resolved. It is indirectly referenced from required type org.postgis.PGgeometry
What is wrong with me ?
Raivo
[snip]
I made a new Java application Eclipse Dynamic WEB application and want to use Postgres - PostgreSQL 10.14[snip]
What's wrong. Or is better to use more newer postgres. And then which jdbc-I need to use ?
https://www.postgresql.org/support/versioning/
Pg 10 will be EOL in 6 weeks. Thus, "yes, use a newer version of Postgresql" (unless, like me, you're constrained by circumstances like "the business won't let us upgrade").
Pg 15 and the latest JDBC are in the repositories: https://www.postgresql.org/download/
Born in Arizona, moved to Babylonia.
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
@WebServlet("/AddMushrooms")
public class AddMushrooms extends HttpServlet implements java.io.Serializable {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
final String DB_URL = "jdbc:postgresql://localhost:5432/mushroom_database";
final String USER = "mushroomer";
final String PASSWORD = "";
Connection connection = null;
Timestamp LastModifiedTS = Timestamp.valueOf("1970-01-01 00:00:00");
try {
connection = DriverManager.getConnection(DB_URL, USER, PASSWORD);
// SQL päring vanima timestamp-i leidmiseks
String query = "SELECT timestamp AS oldest_timestamp FROM mushrooms";
PreparedStatement statement = connection.prepareStatement(query);
ResultSet resultSet = statement.executeQuery();
while (resultSet.next()) {
Timestamp oldest_timestamp = resultSet.getTimestamp("oldest_timestamp");
if (oldest_timestamp.after(LastModifiedTS))
LastModifiedTS = oldest_timestamp;
}
System.out.println("Vanim timestamp: " + LastModifiedTS);
} catch (SQLException e) {
e.printStackTrace();
}
int count = ProcAddMushrooms.GetAddMushrooms(connection, LastModifiedTS);
response.getWriter().println("Added " + count + " mushrooms");
}
On 9/28/23 01:18, Raivo Rebane wrote:
[snip]I made a new Java application Eclipse Dynamic WEB application and want to use Postgres - PostgreSQL 10.14[snip]What's wrong. Or is better to use more newer postgres. And then which jdbc-I need to use ?
https://www.postgresql.org/support/versioning/
Pg 10 will be EOL in 6 weeks. Thus, "yes, use a newer version of Postgresql" (unless, like me, you're constrained by circumstances like "the business won't let us upgrade").
Pg 15 and the latest JDBC are in the repositories: https://www.postgresql.org/download/--
Born in Arizona, moved to Babylonia.
Hi,The code is :package MushroomAPIs;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
@WebServlet("/AddMushrooms")
public class AddMushrooms extends HttpServlet implements java.io.Serializable {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
final String DB_URL = "jdbc:postgresql://localhost:5432/mushroom_database";
final String USER = "mushroomer";
final String PASSWORD = "";
Connection connection = null;
Timestamp LastModifiedTS = Timestamp.valueOf("1970-01-01 00:00:00");
try {
connection = DriverManager.getConnection(DB_URL, USER, PASSWORD);
// SQL päring vanima timestamp-i leidmiseks
String query = "SELECT timestamp AS oldest_timestamp FROM mushrooms";
PreparedStatement statement = connection.prepareStatement(query);
ResultSet resultSet = statement.executeQuery();
while (resultSet.next()) {
Timestamp oldest_timestamp = resultSet.getTimestamp("oldest_timestamp");
if (oldest_timestamp.after(LastModifiedTS))
LastModifiedTS = oldest_timestamp;
}
System.out.println("Vanim timestamp: " + LastModifiedTS);
} catch (SQLException e) {
e.printStackTrace();
}
int count = ProcAddMushrooms.GetAddMushrooms(connection, LastModifiedTS);
response.getWriter().println("Added " + count + " mushrooms");
}}and available from github - https://github.com/raaivore/APIexperimentMay be somebody can help me to solve the problem ?RaivoOn Fri, Sep 29, 2023 at 6:44 AM Ron <ronljohnsonjr@gmail.com> wrote:On 9/28/23 01:18, Raivo Rebane wrote:
[snip]I made a new Java application Eclipse Dynamic WEB application and want to use Postgres - PostgreSQL 10.14[snip]What's wrong. Or is better to use more newer postgres. And then which jdbc-I need to use ?
https://www.postgresql.org/support/versioning/
Pg 10 will be EOL in 6 weeks. Thus, "yes, use a newer version of Postgresql" (unless, like me, you're constrained by circumstances like "the business won't let us upgrade").
Pg 15 and the latest JDBC are in the repositories: https://www.postgresql.org/download/
--
Born in Arizona, moved to Babylonia.
Dave Cramerwww.postgres.rocksOn Fri, 29 Sept 2023 at 06:19, Raivo Rebane <raivore55@gmail.com> wrote:Hi,The code is :package MushroomAPIs;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
@WebServlet("/AddMushrooms")
public class AddMushrooms extends HttpServlet implements java.io.Serializable {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
final String DB_URL = "jdbc:postgresql://localhost:5432/mushroom_database";
final String USER = "mushroomer";
final String PASSWORD = "";
Connection connection = null;
Timestamp LastModifiedTS = Timestamp.valueOf("1970-01-01 00:00:00");
try {
connection = DriverManager.getConnection(DB_URL, USER, PASSWORD);
// SQL päring vanima timestamp-i leidmiseks
String query = "SELECT timestamp AS oldest_timestamp FROM mushrooms";
PreparedStatement statement = connection.prepareStatement(query);
ResultSet resultSet = statement.executeQuery();
while (resultSet.next()) {
Timestamp oldest_timestamp = resultSet.getTimestamp("oldest_timestamp");
if (oldest_timestamp.after(LastModifiedTS))
LastModifiedTS = oldest_timestamp;
}
System.out.println("Vanim timestamp: " + LastModifiedTS);
} catch (SQLException e) {
e.printStackTrace();
}
int count = ProcAddMushrooms.GetAddMushrooms(connection, LastModifiedTS);
response.getWriter().println("Added " + count + " mushrooms");
}}and available from github - https://github.com/raaivore/APIexperimentMay be somebody can help me to solve the problem ?RaivoOn Fri, Sep 29, 2023 at 6:44 AM Ron <ronljohnsonjr@gmail.com> wrote:On 9/28/23 01:18, Raivo Rebane wrote:
[snip]I made a new Java application Eclipse Dynamic WEB application and want to use Postgres - PostgreSQL 10.14[snip]What's wrong. Or is better to use more newer postgres. And then which jdbc-I need to use ?
https://www.postgresql.org/support/versioning/
Pg 10 will be EOL in 6 weeks. Thus, "yes, use a newer version of Postgresql" (unless, like me, you're constrained by circumstances like "the business won't let us upgrade").
Pg 15 and the latest JDBC are in the repositories: https://www.postgresql.org/download/--
Born in Arizona, moved to Babylonia.I loaded your project in IDEA and it was referring to jdk1.7It also looks like you still have the postgis-geometry-2.5.0.jar in the webapp/lib dir remove itDave
Attachment
java version "1.8.0_381"
Java(TM) SE Runtime Environment (build 1.8.0_381-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.381-b09, mixed mode)
at java.sql.DriverManager.getConnection(DriverManager.java:689)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at MushroomAPIs.AddMushrooms.doGet(AddMushrooms.java:30)
I removed this recommended jar.I am using Eclipse and there Java 1.8 is setted.What I have to do ?RaivoOn Fri, Sep 29, 2023 at 2:05 PM Dave Cramer <davecramer@postgres.rocks> wrote:Dave Cramerwww.postgres.rocksOn Fri, 29 Sept 2023 at 06:19, Raivo Rebane <raivore55@gmail.com> wrote:Hi,The code is :package MushroomAPIs;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
@WebServlet("/AddMushrooms")
public class AddMushrooms extends HttpServlet implements java.io.Serializable {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
final String DB_URL = "jdbc:postgresql://localhost:5432/mushroom_database";
final String USER = "mushroomer";
final String PASSWORD = "";
Connection connection = null;
Timestamp LastModifiedTS = Timestamp.valueOf("1970-01-01 00:00:00");
try {
connection = DriverManager.getConnection(DB_URL, USER, PASSWORD);
// SQL päring vanima timestamp-i leidmiseks
String query = "SELECT timestamp AS oldest_timestamp FROM mushrooms";
PreparedStatement statement = connection.prepareStatement(query);
ResultSet resultSet = statement.executeQuery();
while (resultSet.next()) {
Timestamp oldest_timestamp = resultSet.getTimestamp("oldest_timestamp");
if (oldest_timestamp.after(LastModifiedTS))
LastModifiedTS = oldest_timestamp;
}
System.out.println("Vanim timestamp: " + LastModifiedTS);
} catch (SQLException e) {
e.printStackTrace();
}
int count = ProcAddMushrooms.GetAddMushrooms(connection, LastModifiedTS);
response.getWriter().println("Added " + count + " mushrooms");
}}and available from github - https://github.com/raaivore/APIexperimentMay be somebody can help me to solve the problem ?RaivoOn Fri, Sep 29, 2023 at 6:44 AM Ron <ronljohnsonjr@gmail.com> wrote:On 9/28/23 01:18, Raivo Rebane wrote:
[snip]I made a new Java application Eclipse Dynamic WEB application and want to use Postgres - PostgreSQL 10.14[snip]What's wrong. Or is better to use more newer postgres. And then which jdbc-I need to use ?
https://www.postgresql.org/support/versioning/
Pg 10 will be EOL in 6 weeks. Thus, "yes, use a newer version of Postgresql" (unless, like me, you're constrained by circumstances like "the business won't let us upgrade").
Pg 15 and the latest JDBC are in the repositories: https://www.postgresql.org/download/--
Born in Arizona, moved to Babylonia.I loaded your project in IDEA and it was referring to jdk1.7It also looks like you still have the postgis-geometry-2.5.0.jar in the webapp/lib dir remove itDave
Thanks,there was really JDK 17 in use.I changed it to Java 1.8PS C:\Program Files\Apache Software Foundation\Tomcat 9.0\bin> java -version
java version "1.8.0_381"
Java(TM) SE Runtime Environment (build 1.8.0_381-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.381-b09, mixed mode)but the same error occured :java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/mushroom_database
at java.sql.DriverManager.getConnection(DriverManager.java:689)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at MushroomAPIs.AddMushrooms.doGet(AddMushrooms.java:30)why java.sql gives that error ?
Am 29.09.23 um 20:42 schrieb Dave Cramer: > On Fri, 29 Sept 2023 at 14:22, Raivo Rebane <raivore55@gmail.com> wrote: > >> Thanks, >> >> there was really JDK 17 in use. >> I changed it to Java 1.8 >> PS C:\Program Files\Apache Software Foundation\Tomcat 9.0\bin> java >> -version >> java version "1.8.0_381" >> Java(TM) SE Runtime Environment (build 1.8.0_381-b09) >> Java HotSpot(TM) 64-Bit Server VM (build 25.381-b09, mixed mode) >> >> but the same error occured : >> java.sql.SQLException: No suitable driver found for >> jdbc:postgresql://localhost:5432/mushroom_database >> at java.sql.DriverManager.getConnection(DriverManager.java:689) >> at java.sql.DriverManager.getConnection(DriverManager.java:247) >> at MushroomAPIs.AddMushrooms.doGet(AddMushrooms.java:30) >> why java.sql gives that error ? >> > for some reason the postgresql jar is not in the classpath. > > Dave try to call "Class.forName("org.postgresql.Driver");" before "connection = DriverManager.getConnection(DB_URL, USER, PASSWORD);" i had some issues with getConnection() some time ago and this was the solution. no idea why.
Directory: C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 28.09.2023 14:40 1081604 postgresql-42.6.0.jar
> for some reason the postgresql jar is not in the classpath.This is due to the way that Tomcat loads drivers, which is documented at [1]. In short, the JDBC driver should be placed in the tomcat/lib directory and removed from the application's WEB-INF/lib directory. After doing that, I was able to get past the "No suitable driver" exception.OP, you should read that entire page, and in particular the portion at [2]. By registering a "Resource" with Tomcat, you can let it manage a connection pool for you (if you aren't already using something like PgBouncer or pgpool) and, if registered at the container level, in the future you can share that pool across all of your web applications in the container.Craig
Hi,I copied the postgres driver to Tomcat/lib.PS C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib> dir post*
Directory: C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 28.09.2023 14:40 1081604 postgresql-42.6.0.jarbut Tomcat remains to give error -java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/mushroom_databaseI am using Postgres 15. May be I have to use more older one ?RaivoOn Sat, Sep 30, 2023 at 6:32 AM Craig McIlwee <craigm@vt.edu> wrote:> for some reason the postgresql jar is not in the classpath.This is due to the way that Tomcat loads drivers, which is documented at [1]. In short, the JDBC driver should be placed in the tomcat/lib directory and removed from the application's WEB-INF/lib directory. After doing that, I was able to get past the "No suitable driver" exception.OP, you should read that entire page, and in particular the portion at [2]. By registering a "Resource" with Tomcat, you can let it manage a connection pool for you (if you aren't already using something like PgBouncer or pgpool) and, if registered at the container level, in the future you can share that pool across all of your web applications in the container.Craig
May be I have to copy PostGis draiver also to tomcat/lib ?RaivoOn Sat, Sep 30, 2023 at 8:01 AM Raivo Rebane <raivore55@gmail.com> wrote:Hi,I copied the postgres driver to Tomcat/lib.PS C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib> dir post*
Directory: C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 28.09.2023 14:40 1081604 postgresql-42.6.0.jarbut Tomcat remains to give error -java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/mushroom_databaseI am using Postgres 15. May be I have to use more older one ?RaivoOn Sat, Sep 30, 2023 at 6:32 AM Craig McIlwee <craigm@vt.edu> wrote:> for some reason the postgresql jar is not in the classpath.This is due to the way that Tomcat loads drivers, which is documented at [1]. In short, the JDBC driver should be placed in the tomcat/lib directory and removed from the application's WEB-INF/lib directory. After doing that, I was able to get past the "No suitable driver" exception.OP, you should read that entire page, and in particular the portion at [2]. By registering a "Resource" with Tomcat, you can let it manage a connection pool for you (if you aren't already using something like PgBouncer or pgpool) and, if registered at the container level, in the future you can share that pool across all of your web applications in the container.Craig
at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:145)
at MushroomAPIs.Clean.deleteAllRecordsFromTable(Clean.java:34)
String deleteQuery = "DELETE FROM " + tableNam
System.out.println(deleteQuery);
PreparedStatement statement = connection.prepareStatement(deleteQuery);
May be it's easy for me to use normal statement ?
Raivo
Sorry. I accidentally usin postgres 16, which was emptyMany thanks for advise !!!RaivoOn Sat, Sep 30, 2023 at 8:18 AM Raivo Rebane <raivore55@gmail.com> wrote:May be I have to copy PostGis draiver also to tomcat/lib ?RaivoOn Sat, Sep 30, 2023 at 8:01 AM Raivo Rebane <raivore55@gmail.com> wrote:Hi,I copied the postgres driver to Tomcat/lib.PS C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib> dir post*
Directory: C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 28.09.2023 14:40 1081604 postgresql-42.6.0.jarbut Tomcat remains to give error -java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/mushroom_databaseI am using Postgres 15. May be I have to use more older one ?RaivoOn Sat, Sep 30, 2023 at 6:32 AM Craig McIlwee <craigm@vt.edu> wrote:> for some reason the postgresql jar is not in the classpath.This is due to the way that Tomcat loads drivers, which is documented at [1]. In short, the JDBC driver should be placed in the tomcat/lib directory and removed from the application's WEB-INF/lib directory. After doing that, I was able to get past the "No suitable driver" exception.OP, you should read that entire page, and in particular the portion at [2]. By registering a "Resource" with Tomcat, you can let it manage a connection pool for you (if you aren't already using something like PgBouncer or pgpool) and, if registered at the container level, in the future you can share that pool across all of your web applications in the container.Craig
public static boolean CheckIsNewInMushrooms(Connection connection, Point AddLocation, String AddDescription) {
boolean IsNew = true;
try {
String sqlQuery = "SELECT location, description FROM mushrooms";
try (PreparedStatement preparedStatement = connection.prepareStatement(sqlQuery)) {
ResultSet resultSet = preparedStatement.executeQuery();
while (resultSet.next()) {
Point point = (Point) resultSet.getObject("location");
String description = resultSet.getString("description");
if (AddLocation.x == point.x && AddLocation.y == point.y && AddDescription.equals(description))
IsNew = false;
}
}
} catch (SQLException e) {
e.printStackTrace();
}
return IsNew;
}
and at line
Point point = (Point) resultSet.getObject("location");
at MushroomAPIs.ProcAddMushrooms.CheckIsNewInMushrooms(ProcAddMushrooms.java:45)
Hi,sometimes I am lucky and don't get the old error, but sometime not.I tried to use PreparedStatement, but I got error -org.postgresql.util.PSQLException: Can't use query methods that take a query string on a PreparedStatement.
at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:145)
at MushroomAPIs.Clean.deleteAllRecordsFromTable(Clean.java:34)and java code is -String deleteQuery = "DELETE FROM " + tableNam
System.out.println(deleteQuery);
PreparedStatement statement = connection.prepareStatement(deleteQuery);
May be it's easy for me to use normal statement ?
Raivo
On Sat, Sep 30, 2023 at 8:27 AM Raivo Rebane <raivore55@gmail.com> wrote:Sorry. I accidentally usin postgres 16, which was emptyMany thanks for advise !!!RaivoOn Sat, Sep 30, 2023 at 8:18 AM Raivo Rebane <raivore55@gmail.com> wrote:May be I have to copy PostGis draiver also to tomcat/lib ?RaivoOn Sat, Sep 30, 2023 at 8:01 AM Raivo Rebane <raivore55@gmail.com> wrote:Hi,I copied the postgres driver to Tomcat/lib.PS C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib> dir post*
Directory: C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 28.09.2023 14:40 1081604 postgresql-42.6.0.jarbut Tomcat remains to give error -java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/mushroom_databaseI am using Postgres 15. May be I have to use more older one ?RaivoOn Sat, Sep 30, 2023 at 6:32 AM Craig McIlwee <craigm@vt.edu> wrote:> for some reason the postgresql jar is not in the classpath.This is due to the way that Tomcat loads drivers, which is documented at [1]. In short, the JDBC driver should be placed in the tomcat/lib directory and removed from the application's WEB-INF/lib directory. After doing that, I was able to get past the "No suitable driver" exception.OP, you should read that entire page, and in particular the portion at [2]. By registering a "Resource" with Tomcat, you can let it manage a connection pool for you (if you aren't already using something like PgBouncer or pgpool) and, if registered at the container level, in the future you can share that pool across all of your web applications in the container.Craig
Am 30.09.23 um 08:33 schrieb Raivo Rebane: > Hi, > sometimes I am lucky and don't get the old error, but sometime not. > > I tried to use PreparedStatement, but I got error - > org.postgresql.util.PSQLException: Can't use query methods that take a > query string on a PreparedStatement. > at > org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:145) > at MushroomAPIs.Clean.deleteAllRecordsFromTable(Clean.java:34) > and java code is - > > String deleteQuery = "DELETE FROM " + tableNam > > System.out.println(deleteQuery); > > PreparedStatement statement = connection.prepareStatement(deleteQuery); if your statement is already prepared with query, use statement.exequte(); or statement.executeQuery() without querystring; if you have a new statement without query, use execute and such with query string. > > May be it's easy for me to use normal statement ? > > > Raivo > > > On Sat, Sep 30, 2023 at 8:27 AM Raivo Rebane <raivore55@gmail.com> wrote: [snip] Am 30.09.23 um 09:18 schrieb Raivo Rebane: > I fix previous error what was my bad knowledge, > But new error occur which is related to postgres postgis jars. > If You are kind to answer me more; > > Java code is : > > public static boolean CheckIsNewInMushrooms(Connection connection, Point > AddLocation, String AddDescription) { > > boolean IsNew = true; > > > try { > > String sqlQuery = "SELECT location, description FROM mushrooms"; > > try (PreparedStatement preparedStatement = connection.prepareStatement( > sqlQuery)) { > > ResultSet resultSet = preparedStatement.executeQuery(); > > > while (resultSet.next()) { > > Point point = (Point) resultSet.getObject("location"); > > String description = resultSet.getString("description"); > > > if (AddLocation.x == point.x && AddLocation.y == point.y && AddDescription > .equals(description)) > > IsNew = false; > > } > > } > > } catch (SQLException e) { > > e.printStackTrace(); > > } > > > return IsNew; > > } > > and at line > > Point point = (Point) resultSet.getObject("location"); > > > java.lang.ClassCastException: org.postgresql.util.PGobject cannot be cast > to org.postgis.Point > at > MushroomAPIs.ProcAddMushrooms.CheckIsNewInMushrooms(ProcAddMushrooms.java:45) > How to get Point from resultset ? > Is it related to postgis driver ? try another way to cast to Point. look for the way over PGgeometry like here https://postgis.net/docs/manual-3.3/ch07.html#idm3092 > > Regards > Raivo
I fix previous error what was my bad knowledge,But new error occur which is related to postgres postgis jars.If You are kind to answer me more;Java code is :public static boolean CheckIsNewInMushrooms(Connection connection, Point AddLocation, String AddDescription) {
boolean IsNew = true;
try {
String sqlQuery = "SELECT location, description FROM mushrooms";
try (PreparedStatement preparedStatement = connection.prepareStatement(sqlQuery)) {
ResultSet resultSet = preparedStatement.executeQuery();
while (resultSet.next()) {
Point point = (Point) resultSet.getObject("location");
String description = resultSet.getString("description");
if (AddLocation.x == point.x && AddLocation.y == point.y && AddDescription.equals(description))
IsNew = false;
}
}
} catch (SQLException e) {
e.printStackTrace();
}
return IsNew;
}
and at line
Point point = (Point) resultSet.getObject("location");
java.lang.ClassCastException: org.postgresql.util.PGobject cannot be cast to org.postgis.Point
at MushroomAPIs.ProcAddMushrooms.CheckIsNewInMushrooms(ProcAddMushrooms.java:45)How to get Point from resultset ?Is it related to postgis driver ?RegardsRaivoOn Sat, Sep 30, 2023 at 9:33 AM Raivo Rebane <raivore55@gmail.com> wrote:Hi,sometimes I am lucky and don't get the old error, but sometime not.I tried to use PreparedStatement, but I got error -org.postgresql.util.PSQLException: Can't use query methods that take a query string on a PreparedStatement.
at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:145)
at MushroomAPIs.Clean.deleteAllRecordsFromTable(Clean.java:34)and java code is -String deleteQuery = "DELETE FROM " + tableNam
System.out.println(deleteQuery);
PreparedStatement statement = connection.prepareStatement(deleteQuery);
May be it's easy for me to use normal statement ?
Raivo
On Sat, Sep 30, 2023 at 8:27 AM Raivo Rebane <raivore55@gmail.com> wrote:Sorry. I accidentally usin postgres 16, which was emptyMany thanks for advise !!!RaivoOn Sat, Sep 30, 2023 at 8:18 AM Raivo Rebane <raivore55@gmail.com> wrote:May be I have to copy PostGis draiver also to tomcat/lib ?RaivoOn Sat, Sep 30, 2023 at 8:01 AM Raivo Rebane <raivore55@gmail.com> wrote:Hi,I copied the postgres driver to Tomcat/lib.PS C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib> dir post*
Directory: C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 28.09.2023 14:40 1081604 postgresql-42.6.0.jarbut Tomcat remains to give error -java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/mushroom_databaseI am using Postgres 15. May be I have to use more older one ?RaivoOn Sat, Sep 30, 2023 at 6:32 AM Craig McIlwee <craigm@vt.edu> wrote:> for some reason the postgresql jar is not in the classpath.This is due to the way that Tomcat loads drivers, which is documented at [1]. In short, the JDBC driver should be placed in the tomcat/lib directory and removed from the application's WEB-INF/lib directory. After doing that, I was able to get past the "No suitable driver" exception.OP, you should read that entire page, and in particular the portion at [2]. By registering a "Resource" with Tomcat, you can let it manage a connection pool for you (if you aren't already using something like PgBouncer or pgpool) and, if registered at the container level, in the future you can share that pool across all of your web applications in the container.Craig
Am 30.09.23 um 08:33 schrieb Raivo Rebane:
> Hi,
> sometimes I am lucky and don't get the old error, but sometime not.
>
> I tried to use PreparedStatement, but I got error -
> org.postgresql.util.PSQLException: Can't use query methods that take a
> query string on a PreparedStatement.
> at
> org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:145)
> at MushroomAPIs.Clean.deleteAllRecordsFromTable(Clean.java:34)
> and java code is -
>
> String deleteQuery = "DELETE FROM " + tableNam
>
> System.out.println(deleteQuery);
>
> PreparedStatement statement = connection.prepareStatement(deleteQuery);
if your statement is already prepared with query, use
statement.exequte(); or statement.executeQuery() without querystring;
if you have a new statement without query, use execute and such with
query string.
>
> May be it's easy for me to use normal statement ?
>
>
> Raivo
>
>
> On Sat, Sep 30, 2023 at 8:27 AM Raivo Rebane <raivore55@gmail.com> wrote:
[snip]
Am 30.09.23 um 09:18 schrieb Raivo Rebane:
> I fix previous error what was my bad knowledge,
> But new error occur which is related to postgres postgis jars.
> If You are kind to answer me more;
>
> Java code is :
>
> public static boolean CheckIsNewInMushrooms(Connection connection, Point
> AddLocation, String AddDescription) {
>
> boolean IsNew = true;
>
>
> try {
>
> String sqlQuery = "SELECT location, description FROM mushrooms";
>
> try (PreparedStatement preparedStatement = connection.prepareStatement(
> sqlQuery)) {
>
> ResultSet resultSet = preparedStatement.executeQuery();
>
>
> while (resultSet.next()) {
>
> Point point = (Point) resultSet.getObject("location");
>
> String description = resultSet.getString("description");
>
>
> if (AddLocation.x == point.x && AddLocation.y == point.y && AddDescription
> .equals(description))
>
> IsNew = false;
>
> }
>
> }
>
> } catch (SQLException e) {
>
> e.printStackTrace();
>
> }
>
>
> return IsNew;
>
> }
>
> and at line
>
> Point point = (Point) resultSet.getObject("location");
>
>
> java.lang.ClassCastException: org.postgresql.util.PGobject cannot be cast
> to org.postgis.Point
> at
> MushroomAPIs.ProcAddMushrooms.CheckIsNewInMushrooms(ProcAddMushrooms.java:45)
> How to get Point from resultset ?
> Is it related to postgis driver ?
try another way to cast to Point.
look for the way over PGgeometry like here
https://postgis.net/docs/manual-3.3/ch07.html#idm3092
>
> Regards
> Raivo
Thanks for very much for help.It seems that I can do the test project for new job.In future I use help of chat.gptRegardsRaivoOn Sat, Sep 30, 2023 at 11:15 AM <postgresql439848@heinz-it.de> wrote:Am 30.09.23 um 08:33 schrieb Raivo Rebane:
> Hi,
> sometimes I am lucky and don't get the old error, but sometime not.
>
> I tried to use PreparedStatement, but I got error -
> org.postgresql.util.PSQLException: Can't use query methods that take a
> query string on a PreparedStatement.
> at
> org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:145)
> at MushroomAPIs.Clean.deleteAllRecordsFromTable(Clean.java:34)
> and java code is -
>
> String deleteQuery = "DELETE FROM " + tableNam
>
> System.out.println(deleteQuery);
>
> PreparedStatement statement = connection.prepareStatement(deleteQuery);
if your statement is already prepared with query, use
statement.exequte(); or statement.executeQuery() without querystring;
if you have a new statement without query, use execute and such with
query string.
>
> May be it's easy for me to use normal statement ?
>
>
> Raivo
>
>
> On Sat, Sep 30, 2023 at 8:27 AM Raivo Rebane <raivore55@gmail.com> wrote:
[snip]
Am 30.09.23 um 09:18 schrieb Raivo Rebane:
> I fix previous error what was my bad knowledge,
> But new error occur which is related to postgres postgis jars.
> If You are kind to answer me more;
>
> Java code is :
>
> public static boolean CheckIsNewInMushrooms(Connection connection, Point
> AddLocation, String AddDescription) {
>
> boolean IsNew = true;
>
>
> try {
>
> String sqlQuery = "SELECT location, description FROM mushrooms";
>
> try (PreparedStatement preparedStatement = connection.prepareStatement(
> sqlQuery)) {
>
> ResultSet resultSet = preparedStatement.executeQuery();
>
>
> while (resultSet.next()) {
>
> Point point = (Point) resultSet.getObject("location");
>
> String description = resultSet.getString("description");
>
>
> if (AddLocation.x == point.x && AddLocation.y == point.y && AddDescription
> .equals(description))
>
> IsNew = false;
>
> }
>
> }
>
> } catch (SQLException e) {
>
> e.printStackTrace();
>
> }
>
>
> return IsNew;
>
> }
>
> and at line
>
> Point point = (Point) resultSet.getObject("location");
>
>
> java.lang.ClassCastException: org.postgresql.util.PGobject cannot be cast
> to org.postgis.Point
> at
> MushroomAPIs.ProcAddMushrooms.CheckIsNewInMushrooms(ProcAddMushrooms.java:45)
> How to get Point from resultset ?
> Is it related to postgis driver ?
try another way to cast to Point.
look for the way over PGgeometry like here
https://postgis.net/docs/manual-3.3/ch07.html#idm3092
>
> Regards
> Raivo
Again, can you please post the solution so others can learn as well ?Dave Cramerwww.postgres.rocksOn Sat, 30 Sept 2023 at 06:49, Raivo Rebane <raivore55@gmail.com> wrote:Thanks for very much for help.It seems that I can do the test project for new job.In future I use help of chat.gptRegardsRaivoOn Sat, Sep 30, 2023 at 11:15 AM <postgresql439848@heinz-it.de> wrote:Am 30.09.23 um 08:33 schrieb Raivo Rebane:
> Hi,
> sometimes I am lucky and don't get the old error, but sometime not.
>
> I tried to use PreparedStatement, but I got error -
> org.postgresql.util.PSQLException: Can't use query methods that take a
> query string on a PreparedStatement.
> at
> org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:145)
> at MushroomAPIs.Clean.deleteAllRecordsFromTable(Clean.java:34)
> and java code is -
>
> String deleteQuery = "DELETE FROM " + tableNam
>
> System.out.println(deleteQuery);
>
> PreparedStatement statement = connection.prepareStatement(deleteQuery);
if your statement is already prepared with query, use
statement.exequte(); or statement.executeQuery() without querystring;
if you have a new statement without query, use execute and such with
query string.
>
> May be it's easy for me to use normal statement ?
>
>
> Raivo
>
>
> On Sat, Sep 30, 2023 at 8:27 AM Raivo Rebane <raivore55@gmail.com> wrote:
[snip]
Am 30.09.23 um 09:18 schrieb Raivo Rebane:
> I fix previous error what was my bad knowledge,
> But new error occur which is related to postgres postgis jars.
> If You are kind to answer me more;
>
> Java code is :
>
> public static boolean CheckIsNewInMushrooms(Connection connection, Point
> AddLocation, String AddDescription) {
>
> boolean IsNew = true;
>
>
> try {
>
> String sqlQuery = "SELECT location, description FROM mushrooms";
>
> try (PreparedStatement preparedStatement = connection.prepareStatement(
> sqlQuery)) {
>
> ResultSet resultSet = preparedStatement.executeQuery();
>
>
> while (resultSet.next()) {
>
> Point point = (Point) resultSet.getObject("location");
>
> String description = resultSet.getString("description");
>
>
> if (AddLocation.x == point.x && AddLocation.y == point.y && AddDescription
> .equals(description))
>
> IsNew = false;
>
> }
>
> }
>
> } catch (SQLException e) {
>
> e.printStackTrace();
>
> }
>
>
> return IsNew;
>
> }
>
> and at line
>
> Point point = (Point) resultSet.getObject("location");
>
>
> java.lang.ClassCastException: org.postgresql.util.PGobject cannot be cast
> to org.postgis.Point
> at
> MushroomAPIs.ProcAddMushrooms.CheckIsNewInMushrooms(ProcAddMushrooms.java:45)
> How to get Point from resultset ?
> Is it related to postgis driver ?
try another way to cast to Point.
look for the way over PGgeometry like here
https://postgis.net/docs/manual-3.3/ch07.html#idm3092
>
> Regards
> Raivo