[GH-ISSUE #3421] Adding a driver to CloudBeaver CE. #1256

Closed
opened 2026-03-07 21:01:42 +03:00 by kerem · 10 comments
Owner

Originally created by @avhz on GitHub (May 6, 2025).
Original GitHub issue: https://github.com/dbeaver/cloudbeaver/issues/3421

Hi :) I am trying to get SAP HANA working in CB (CE), running in Docker.

I have read the docs here, but the files described do not exist.

root@1340e8206d6a:/opt/cloudbeaver# find . -name pom.xml
./server/plugins/org.jkiss.bundle.gis_2.0.7/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.gis/pom.xml
./server/plugins/org.jkiss.bundle.antlr4_1.0.1/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.antlr4/pom.xml
./server/plugins/org.jkiss.bundle.apache.poi_5.3.0/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.apache.poi/pom.xml
./server/plugins/org.jkiss.bundle.graphql.java_22.2.0/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.graphql.java/pom.xml
./server/plugins/org.jkiss.bundle.sshj_0.34.1/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.sshj/pom.xml
./server/plugins/org.jkiss.bundle.logback_1.0.2/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.logback/pom.xml
./server/plugins/org.jkiss.bundle.jakarta.jetty.server_1.0.0/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.jakarta.jetty.server/pom.xml
./server/plugins/org.jkiss.bundle.apache.dbcp_2.12.5/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.apache.dbcp/pom.xml
root@1340e8206d6a:/opt/cloudbeaver# find . -name plugin.xml
root@1340e8206d6a:/opt/cloudbeaver# 

Am I missing something ?

Cheers !

Originally created by @avhz on GitHub (May 6, 2025). Original GitHub issue: https://github.com/dbeaver/cloudbeaver/issues/3421 Hi :) I am trying to get SAP HANA working in CB (CE), running in Docker. I have read the docs [here](https://github.com/dbeaver/cloudbeaver/wiki/Adding-new-database-drivers#adding-drivers-in-cloudbeaver-community-edition), but the files described do not exist. ```bash root@1340e8206d6a:/opt/cloudbeaver# find . -name pom.xml ./server/plugins/org.jkiss.bundle.gis_2.0.7/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.gis/pom.xml ./server/plugins/org.jkiss.bundle.antlr4_1.0.1/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.antlr4/pom.xml ./server/plugins/org.jkiss.bundle.apache.poi_5.3.0/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.apache.poi/pom.xml ./server/plugins/org.jkiss.bundle.graphql.java_22.2.0/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.graphql.java/pom.xml ./server/plugins/org.jkiss.bundle.sshj_0.34.1/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.sshj/pom.xml ./server/plugins/org.jkiss.bundle.logback_1.0.2/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.logback/pom.xml ./server/plugins/org.jkiss.bundle.jakarta.jetty.server_1.0.0/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.jakarta.jetty.server/pom.xml ./server/plugins/org.jkiss.bundle.apache.dbcp_2.12.5/META-INF/maven/org.jkiss.bundle/org.jkiss.bundle.apache.dbcp/pom.xml ``` ```bash root@1340e8206d6a:/opt/cloudbeaver# find . -name plugin.xml root@1340e8206d6a:/opt/cloudbeaver# ``` Am I missing something ? Cheers !
Author
Owner

@dariamarutkina commented on GitHub (May 7, 2025):

Hello, @avhz !
The pom.xml needs to be downloaded from the maven - https://mvnrepository.com/artifact/com.sap.hana :

Explore directory [server/drivers](https://github.com/dbeaver/cloudbeaver/tree/devel/server/drivers).
Create a new sub-folder new-driver-id. You can copy-paste some existing driver directory for simplification.
Add the pom.xml file to the new directory.

And then open file server/bundles/io.cloudbeaver.resources.drivers.base/plugin.xml
and edit it according to the instructions

Please let us know if you were able to do it. If not, feel free to tell us what didn’t work — we’ll try to figure it out together 🦫

<!-- gh-comment-id:2857657348 --> @dariamarutkina commented on GitHub (May 7, 2025): Hello, @avhz ! The pom.xml needs to be downloaded from the maven - https://mvnrepository.com/artifact/com.sap.hana : ``` Explore directory [server/drivers](https://github.com/dbeaver/cloudbeaver/tree/devel/server/drivers). Create a new sub-folder new-driver-id. You can copy-paste some existing driver directory for simplification. Add the pom.xml file to the new directory. ``` And then open file [server/bundles/io.cloudbeaver.resources.drivers.base/plugin.xml](https://github.com/dbeaver/cloudbeaver/blob/devel/server/bundles/io.cloudbeaver.resources.drivers.base/plugin.xml) and edit it according to the [instructions](https://github.com/dbeaver/cloudbeaver/wiki/Adding-new-database-drivers#include-driver-in-server-configuration) Please let us know if you were able to do it. If not, feel free to tell us what didn’t work — we’ll try to figure it out together 🦫
Author
Owner

@avhz commented on GitHub (May 7, 2025):

Thanks for the response @dariamarutkina :)

server/bundles/io.cloudbeaver.resources.drivers.base/plugin.xml

This file does not exist in the container.

Edit: for completeness, my compose.yaml:

services:
  dbeaver:
    image: dbeaver/cloudbeaver:latest
    container_name: dbeaver
    restart: unless-stopped
    ports:
      - 10004:8978
    volumes:
      - ./dbeaver/logs:/opt/cloudbeaver/logs
      - ./dbeaver/workspace:/opt/cloudbeaver/workspace

Then simply run with docker compose up --build --detach.

You can then shell into it and run find . -name plugin.xml which returns no results.

<!-- gh-comment-id:2857841512 --> @avhz commented on GitHub (May 7, 2025): Thanks for the response @dariamarutkina :) [server/bundles/io.cloudbeaver.resources.drivers.base/plugin.xml](https://github.com/dbeaver/cloudbeaver/blob/devel/server/bundles/io.cloudbeaver.resources.drivers.base/plugin.xml) This file does not exist in the container. Edit: for completeness, my `compose.yaml`: ```yaml services: dbeaver: image: dbeaver/cloudbeaver:latest container_name: dbeaver restart: unless-stopped ports: - 10004:8978 volumes: - ./dbeaver/logs:/opt/cloudbeaver/logs - ./dbeaver/workspace:/opt/cloudbeaver/workspace ``` Then simply run with `docker compose up --build --detach`. You can then shell into it and run `find . -name plugin.xml` which returns no results.
Author
Owner

@dariamarutkina commented on GitHub (May 7, 2025):

Please try the following:

  1. Clone the CloudBeaver source code from GitHub:
    git clone https://github.com/dbeaver/cloudbeaver.git
  2. Add your SAP HANA driver:
  • Navigate to the server/drivers directory.
  • Create a new subfolder for your driver
  • Add your pom.xml there.
  • Edit server/bundles/io.cloudbeaver.resources.drivers.base/plugin.xml to register the driver.
  1. Build your own Docker image using the provided script:
    Inside the cloned repo, run:
    ./deploy/docker/make-docker-container.sh
  2. Then run your new custom image via Docker Compose (replace the image in your compose.yaml with the one you've just built).
<!-- gh-comment-id:2858884082 --> @dariamarutkina commented on GitHub (May 7, 2025): Please try the following: 1. Clone the CloudBeaver source code from GitHub: ` git clone https://github.com/dbeaver/cloudbeaver.git` 2. Add your SAP HANA driver: - Navigate to the `server/drivers` directory. - Create a new subfolder for your driver - Add your `pom.xml` there. - Edit `server/bundles/io.cloudbeaver.resources.drivers.base/plugin.xml` to register the driver. 3. Build your own Docker image using the provided script: Inside the cloned repo, run: ` ./deploy/docker/make-docker-container.sh` 4. Then run your new custom image via Docker Compose (replace the image in your compose.yaml with the one you've just built).
Author
Owner

@avhz commented on GitHub (May 8, 2025):

Okay I'll give it a go and let you know, thank you @dariamarutkina :)

A side note: is it intentionally missing from the published image ? Seems like a useful thing to include.

<!-- gh-comment-id:2862301273 --> @avhz commented on GitHub (May 8, 2025): Okay I'll give it a go and let you know, thank you @dariamarutkina :) A side note: is it intentionally missing from the published image ? Seems like a useful thing to include.
Author
Owner

@dariamarutkina commented on GitHub (May 8, 2025):

Actually, the file is included in the Docker image — it's just packaged inside a JAR file, not available as a plain file in the filesystem. That's why find doesn't return any results.
We will be waiting for your messages. 🦫

<!-- gh-comment-id:2862460938 --> @dariamarutkina commented on GitHub (May 8, 2025): Actually, the file is included in the Docker image — it's just packaged inside a JAR file, not available as a plain file in the filesystem. That's why find doesn't return any results. We will be waiting for your messages. 🦫
Author
Owner

@dariamarutkina commented on GitHub (May 27, 2025):

Hello, @avhz !
Just checking — did the instructions work for you? Let us know if you need anything else!🦫

<!-- gh-comment-id:2912282784 --> @dariamarutkina commented on GitHub (May 27, 2025): Hello, @avhz ! Just checking — did the instructions work for you? Let us know if you need anything else!🦫
Author
Owner

@avhz commented on GitHub (May 27, 2025):

I'm sorry, I haven't attempted it yet as I am stuck on #3437

<!-- gh-comment-id:2912307880 --> @avhz commented on GitHub (May 27, 2025): I'm sorry, I haven't attempted it yet as I am stuck on #3437
Author
Owner

@avhz commented on GitHub (May 30, 2025):

My proxy issue is resolved with help from @yagudin10 :)

@dariamarutkina is it possible to add the new driver to the dbeaver/cloudbeaver image, or do I need to do it via the repo first ?

<!-- gh-comment-id:2921732689 --> @avhz commented on GitHub (May 30, 2025): My proxy issue is resolved with help from @yagudin10 :) @dariamarutkina is it possible to add the new driver to the `dbeaver/cloudbeaver` image, or do I need to do it via the repo first ?
Author
Owner

@dariamarutkina commented on GitHub (May 30, 2025):

Hello, @avhz!
Please follow the instructions in this comment:
https://github.com/dbeaver/cloudbeaver/issues/3421#issuecomment-2858884082

<!-- gh-comment-id:2921886105 --> @dariamarutkina commented on GitHub (May 30, 2025): Hello, @avhz! Please follow the instructions in this comment: https://github.com/dbeaver/cloudbeaver/issues/3421#issuecomment-2858884082
Author
Owner

@LonwoLonwo commented on GitHub (Jul 21, 2025):

It has been a while since the last update on this issue.
If the issue persists, please inform us and provide additional details.

<!-- gh-comment-id:3095618691 --> @LonwoLonwo commented on GitHub (Jul 21, 2025): It has been a while since the last update on this issue. If the issue persists, please inform us and provide additional details.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/cloudbeaver#1256
No description provided.