PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Empfangenes Objekt vom Typ org.postgresql.util.PGobject

Sie müssen Postgis, Hibernate-Spatial und die anderen verwandten Bibliotheken zu Ihrem Wildfly hinzufügen, bevor Sie Ihre Anwendung bereitstellen. Dies liegt daran, dass der von Ihnen verwendete Ruhezustand mit Wildfly gebündelt ist, die anderen Bibliotheken jedoch mit Ihrem Krieg gebündelt sind, also sind sie es verschiedene Classloader verwenden.

Wenn Sie dieser Code Sie können sehen, dass die Umwandlung korrekt ist und die Fehlermeldung keinen Sinn ergibt, dies ist typischerweise ein Problem mit Classloadern.

Um dieses Problem zu beheben, müssen Sie alle Bibliotheken zu Ihrem Wildfly hinzufügen. Dazu können Sie Folgendes tun:

cd $JBOSS_PATH/modules/system/layers/base/org/hibernate/main
mvn dependency:copy -Dartifact=org.hibernate:hibernate-spatial:5.0.7.Final:jar -DoutputDirectory=.
mvn dependency:copy -Dartifact=org.geolatte:geolatte-geom:1.0.1:jar -DoutputDirectory=.
mvn dependency:copy -Dartifact=com.vividsolutions:jts:1.13:jar -DoutputDirectory=.

Bearbeiten Sie die module.xml Datei, um Ihre Deps hinzuzufügen:

<resource-root path="hibernate-spatial-5.0.7.Final.jar"/>
<resource-root path="jts-1.13.jar"/>
<resource-root path="geolatte-geom-1.0.1.jar"/>

Fügen Sie im Tag „dependencies“ Folgendes hinzu:

<module name="org.slf4j"/>

Auch wenn Sie postgresql verwenden, müssen Sie das Abhängigkeits-Tag hinzufügen:

<module name="org.postgresql"/>

Verwenden Sie die richtige Version im mvn Befehl, um das richtige JAR herunterzuladen.