2
1
0

Confluence開発環境(SDK)でPostgresを使用してプラグイン開発を行っています。

プラグインからConfluence管理 システム情報の読み出すAPI等はあれば教えて下さい。具体的にはシステム情報の「データベース接続URL」を取得したいです。まだ、Confluenceに設定してあるデータベースのユーザID、パスワードも取得する方法はあれば教えて下さい。

※現状は開発環境でDB接続URL、ユーザID、パスワードはプロパティ等に記述していますが、本番環境を見越して、Confluence本体に設定されているDB接続URL、ユーザID、パスワードを取得するようにしたいと思っています。

 

    Commentコメントを追加...

    2 回答

    1.  
      2
      1
      0

      やったことはないですが、BootstrapManagerのgetHibernatePropertiesでconfluence.cfg.xml のhibernate.xxx に設定されている内容が http://docs.oracle.com/javase/8/docs/api/java/util/Properties.html オブジェクトで取得できると思いますが…試していただければと思います。

      BootstrapManagerについては以下とかを参考にしてください。

      http://tohokuaiki.hateblo.jp/entry/confluence/plugin/dev/global/parameter

        Commentコメントを追加...
      1.  
        1
        0
        -1
        報告が遅れましたが、ご教授してもらった方法で必要な取得を取得できました。ありがとうございます。
         
        import com.atlassian.config.bootstrap.AtlassianBootstrapManager;
        import com.atlassian.config.util.BootstrapUtils;
        
        String dbUrl, dbUser, dbPass;
        AtlassianBootstrapManager bm;
        bm = BootstrapUtils.getBootstrapManager();
        Properties hibernateProperties = bm.getHibernateProperties();
        Object obDbUrl = hibernateProperties.get("hibernate.connection.url");
        dbUrl = obDbUrl.toString();
        Object obDbUser = hibernateProperties.get("hibernate.connection.username");
        dbUser = obDbUser.toString();
        Object obDbPass = hibernateProperties.get("hibernate.connection.password");
        dbPass = obDbPass.toString();
        1. Kengo Ohsaki

          阿久根宏明-san,

          ご確認、ご連絡ありがとうございます!

          無事取得できたとのことで安心致しました。

           

        Commentコメントを追加...