[GH-ISSUE #3843] Adding a new driver - UI work? #1338

Closed
opened 2026-03-07 21:02:35 +03:00 by kerem · 6 comments
Owner

Originally created by @bdeboe on GitHub (Oct 20, 2025).
Original GitHub issue: https://github.com/dbeaver/cloudbeaver/issues/3843

Hi,
I'm preparing a PR to add support for InterSystems IRIS in CloudBeaver (already supported in DBeaver), but after completing the steps outlined in the wiki and making it through the build script, the interface does not seem to have IRIS in the list of available drivers.
Is there an additional step required or some sort of error message I should look for (maven log looks clean)? I believe I did exactly the same as how Databend support was added in #3488. Is there anything upstream in our DBeaver plugin that should be updated/enabled?

Originally created by @bdeboe on GitHub (Oct 20, 2025). Original GitHub issue: https://github.com/dbeaver/cloudbeaver/issues/3843 Hi, I'm [preparing a PR](https://github.com/bdeboe/cloudbeaver) to add support for InterSystems IRIS in CloudBeaver (already supported in DBeaver), but after completing the steps [outlined in the wiki](https://github.com/dbeaver/cloudbeaver/wiki/Adding-new-database-drivers#adding-drivers-in-cloudbeaver-community-edition) and making it through the build script, the interface does not seem to have IRIS in the list of available drivers. Is there an additional step required or some sort of error message I should look for (maven log looks clean)? I believe I did exactly the same as how Databend support was added in #3488. Is there anything upstream in our DBeaver plugin that should be updated/enabled?
Author
Owner

@bdeboe commented on GitHub (Oct 20, 2025):

There seems to be a small typo in plugins/org.jkiss.dbeaver.ext.generic/plugin.xml in the upstream DBeaver repo, where the bundle name / path is specified as drivers/intersystem (with missing s at the end). I'm not sure there'd be a dependency on using the same writing in CloudBeaver?

<!-- gh-comment-id:3422669824 --> @bdeboe commented on GitHub (Oct 20, 2025): There seems to be a [small typo](https://github.com/dbeaver/dbeaver/blob/49bb53ae36094b04b348030b93264f2aeec17349/plugins/org.jkiss.dbeaver.ext.generic/plugin.xml#L396) in `plugins/org.jkiss.dbeaver.ext.generic/plugin.xml` in the upstream DBeaver repo, where the bundle name / path is specified as `drivers/intersystem` (with missing s at the end). I'm not sure there'd be a dependency on using the same writing in CloudBeaver?
Author
Owner

@bdeboe commented on GitHub (Oct 20, 2025):

A quick test and build later, fixing that (by holding on to the typo in my fork) doesn't seem to make a difference :-(

<!-- gh-comment-id:3422759673 --> @bdeboe commented on GitHub (Oct 20, 2025): A quick test and build later, fixing that (by holding on to the typo in my fork) doesn't seem to make a difference :-(
Author
Owner

@LonwoLonwo commented on GitHub (Oct 22, 2025):

Hello @bdeboe

You need to use another ID in your code. Not drivers.isris, but drivers.intersystem
Your driver should be in the drivers/intersystem folder for your local use.

<!-- gh-comment-id:3431346307 --> @LonwoLonwo commented on GitHub (Oct 22, 2025): Hello @bdeboe You need to use another ID in your code. Not `drivers.isris`, but `drivers.intersystem` Your driver should be in the drivers/intersystem folder for your local use.
Author
Owner

@bdeboe commented on GitHub (Oct 22, 2025):

Hi @LonwoLonwo ,
thanks for your response. Can you please clarify which ID you're referring to, or which identifiers and paths need to match? Is there a requirement for any of these CloudBeaver identifiers to match the ones used in the DBeaver driver definition?
Thanks

<!-- gh-comment-id:3431374554 --> @bdeboe commented on GitHub (Oct 22, 2025): Hi @LonwoLonwo , thanks for your response. Can you please clarify which ID you're referring to, or which identifiers and paths need to match? Is there a requirement for any of these CloudBeaver identifiers to match the ones used in the DBeaver driver definition? Thanks
Author
Owner

@mikeTWC1984 commented on GitHub (Nov 6, 2025):

I had same issue, sound like the tricky part is to set proper "id" in the last section of server/bundles/io.cloudbeaver.resources.drivers.base/plugin.xml
The right part of this id should come from dbeaver driver ID (e.g. can check on desktop version in connection/driver settings. Left part would be either "generic" or driver name (not sure what it depends on). It could also be some other driver name, e.g. for postgres clones it will be postgrsql

Below is server/bundles/io.cloudbeaver.resources.drivers.base/plugin.xml configured for Snowflake, Redshift, Informix and IRIS if anyone needs.
Driver folder name (under server/drivers) matters too, should be inline with plugin names I guess
https://github.com/dbeaver/dbeaver/blob/devel/plugins

<?xml version="1.0" encoding="UTF-8"?>
<plugin>
    <!-- Resource mappings -->
    <extension point="org.jkiss.dbeaver.resources">
        <resource name="drivers/snowflake"/>
        <resource name="drivers/redshift"/>
        <resource name="drivers/informix"/>
        <resource name="drivers/intersystem"/>

    </extension>

    <!-- Bundles  -->
    <extension point="org.jkiss.dbeaver.product.bundles">
        <bundle id="drivers.snowflake" label="Snowflake drivers"/>
        <bundle id="drivers.redshift" label="Redshift drivers"/>
        <bundle id="drivers.informix" label="Informix drivers"/>
        <bundle id="drivers.intersystem" label="Intersystem drivers"/>
    </extension>

    <!-- Enabled drivers -->
    <extension point="io.cloudbeaver.driver">
        <driver id="generic:informix"/>
        <driver id="snowflake:snowflake_jdbc"/>
        <driver id="postgresql:postgres-redshift-jdbc"/>
        <driver id="generic:iris"/>
    </extension>


</plugin>
<!-- gh-comment-id:3498817659 --> @mikeTWC1984 commented on GitHub (Nov 6, 2025): I had same issue, sound like the tricky part is to set proper "id" in the last section of server/bundles/io.cloudbeaver.resources.drivers.base/plugin.xml The right part of this id should come from dbeaver driver ID (e.g. can check on desktop version in connection/driver settings. Left part would be either "generic" or driver name (not sure what it depends on). It could also be some other driver name, e.g. for postgres clones it will be postgrsql Below is server/bundles/io.cloudbeaver.resources.drivers.base/plugin.xml configured for Snowflake, Redshift, Informix and IRIS if anyone needs. Driver folder name (under server/drivers) matters too, should be inline with plugin names I guess https://github.com/dbeaver/dbeaver/blob/devel/plugins ```xml <?xml version="1.0" encoding="UTF-8"?> <plugin> <!-- Resource mappings --> <extension point="org.jkiss.dbeaver.resources"> <resource name="drivers/snowflake"/> <resource name="drivers/redshift"/> <resource name="drivers/informix"/> <resource name="drivers/intersystem"/> </extension> <!-- Bundles --> <extension point="org.jkiss.dbeaver.product.bundles"> <bundle id="drivers.snowflake" label="Snowflake drivers"/> <bundle id="drivers.redshift" label="Redshift drivers"/> <bundle id="drivers.informix" label="Informix drivers"/> <bundle id="drivers.intersystem" label="Intersystem drivers"/> </extension> <!-- Enabled drivers --> <extension point="io.cloudbeaver.driver"> <driver id="generic:informix"/> <driver id="snowflake:snowflake_jdbc"/> <driver id="postgresql:postgres-redshift-jdbc"/> <driver id="generic:iris"/> </extension> </plugin> ```
Author
Owner

@bdeboe commented on GitHub (Nov 7, 2025):

Hi @mikeTWC1984 ,
thanks for weighing in! Your suggestion helped me find the permutation of brand name, product name, and typo in the original dbeaver submission that I hadn't tried before, so now I can see it in the list and create connections :-).
I'll poke around a little more to make sure from there on it behaves as expected, and await a PR I issued last month to address said typo in dbeaver (dbeaver/dbeaver#39470).

Thanks again!
benjamin

<!-- gh-comment-id:3502030603 --> @bdeboe commented on GitHub (Nov 7, 2025): Hi @mikeTWC1984 , thanks for weighing in! Your suggestion helped me find the permutation of brand name, product name, and typo in the original dbeaver submission that I hadn't tried before, so now I can see it in the list and create connections :-). I'll poke around a little more to make sure from there on it behaves as expected, and await a PR I issued last month to address said typo in dbeaver (dbeaver/dbeaver#39470). Thanks again! benjamin
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#1338
No description provided.