Java EE Payara Microを使用する際にJDBCドライバとリソースを設定するためのオプションは何ですか?Payara MicroでJDBCドライバを追加してJDBCリソースを設定するにはどうすればよいですか?
答えて
この方法では、マイクとアダム・ビアンの回答をタイノスで組み合わせます。それは新しいdomain.xml
を作成することを含み、これはPayara設定ファイルです。完全なPayaraで動作する場合、アプリケーションの変更は必要ありません。以下の例は、PostgreSQL JDBCの例です。
payara-micro.jar
をアーカイブマネージャで開き、ファイル/microdomain.xml
を抽出します。microdomain.xml
をテキストエディタで開きます。- アプリケーションが既に完全なPayaraにデプロイされている場合、完全なPayaraの
domain.xml
から以下の変更をコピーして貼り付けることができます。<resource-ref ref="jdbc/poolname"></resource-ref>
- 割引:右の行は
</server>
を含む上記追加<jdbc-connection-pool connection-validation-method="auto-commit" driver-classname="org.postgresql.Driver" res-type="java.sql.Driver" name="poolname" is-connection-validation-required="true" connection-creation-retry-attempts="3" validate-atmost-once-period-in-seconds="60"> <property name="URL" value="jdbc:postgresql://localhost:5432/dbname"></property> <property name="user" value="dbuser"></property> <property name="password" value="dbpassword"></property> </jdbc-connection-pool> <jdbc-resource pool-name="poolname" jndi-name="jdbc/poolname"></jdbc-resource>
:ポートとプール名:
はあなたのdbnameは、DBUSER、dbpasswordを、ホスト名を使用して、右
</resources>
を含む行の上に追加します。テキストエディタを閉じます。パスとファイル名を使用して、コマンドラインからPayara microを起動します。 Linuxの構文:オプションの
java -cp "/opt/jdbc/postgresql.jar:/opt/payara/micro.jar" fish.payara.micro.PayaraMicro --deploy webapp.war --domainConfig microdomain.xml
通常のdomain.xmlにJDBCを設定し、それをPayaraに提供することができます。あなたが不明な場合は、常に既存のdomain.xmlを使用して、それからJDBC設定を使用することができます。あなたがプログラムでペーシュ・カショーロマイクロをブートストラップしている場合は、使用する
java -jar payara-micro.jar --deploy myApp.war --domainConfig mydomain.xml
:あなたは、代替domain.xml
ファイルを指定することができます一つは
Payara Micro has a few command line options、
setAlternateDomainXML(File alternateDomainXML)
私は、マイクロインスタンスを実行する前にクラスパスにJDBCドライバを追加する必要があると思いますか? Ilはいくつかのテストを行いますが、私は--rootDirを使ってみましたが、ちょうど例外を引き起こしました。 Thanks @Mike – tainos
アダムビエンは、この質問に答え彼の19th Airhacks video。
私のテイク組み込みサーバーとして最適なのは、カスタムリソースと一緒に使用すると、JDBCリソースとmavenの依存関係を設定する際に、jarファイルまたはwarファイル内に必要なドライバが含まれています。
web.xmlにデータソース定義を追加し、JDBC jarのjarファイルをWEB-INF/libに追加します。次に、Payall Microにいつものようにwarファイルを配備します。
<data-source>
<name>java:global/ExampleDataSource</name>
<class-name>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</class-name>
<server-name>localhost</server-name>
<port-number>3306</port-number>
<database-name>mysql</database-name>
<user>root</user>
<password>root</password>
<!-- Example of how to use a Payara specific custom connection pool setting -->
<property>
<name>fish.payara.sql-trace-listeners</name>
<value>com.sun.gjc.util.SQLTraceLogger</value>
</property>
</data-source>
Payaraの例GitHubリポジトリでこれを行う方法の完全な例があります。 Datasource example on Payara GitHub
一つはGlassFishの資源です。XML
<!-- db1 -->
<jdbc-connection-pool
datasource-classname="com.mysql.jdbc.jdbc2.optional.MysqlDataSource" name="db1"
res-type="javax.sql.DataSource"
steady-pool-size="1"
is-connection-validation-required="true"
connection-validation-method="meta-data"
max-pool-size="10">
<property name="password" value="icoder_pwd"/>
<property name="user" value="icoder_user"/>
<property name="databaseName" value="icoder_db"/>
<property name="serverName" value="localhost"/>
<property name="portNumber" value="3310"/>
<property name="zeroDateTimeBehavior" value="convertToNull"/>
</jdbc-connection-pool>
<jdbc-resource pool-name="db1" jndi-name="jdbc/db1"/>
<!-- db2 -->
<jdbc-connection-pool
datasource-classname="com.mysql.jdbc.jdbc2.optional.MysqlDataSource" name="db2"
res-type="javax.sql.DataSource"
steady-pool-size="1"
is-connection-validation-required="true"
connection-validation-method="meta-data"
max-pool-size="10">
<property name="password" value="icoder_pwd"/>
<property name="user" value="icoder_user"/>
<property name="databaseName" value="icoder_db"/>
<property name="serverName" value="localhost"/>
<property name="portNumber" value="3311"/>
<property name="zeroDateTimeBehavior" value="convertToNull"/>
</jdbc-connection-pool>
<jdbc-resource pool-name="db2" jndi-name="jdbc/db2"/>
</resources>
あなたが見つけることができるエンティティマネージャの実装との完全な例: https://github.com/igorzg/payara-micro-jpa-multi-tenancy
をthe accepted answerが私のために考え出し異なると少し簡単な方法を動作しなかったので。あなたはまだカスタムdomain.xml
に依存しているが、起動コマンドを簡略化することができます。
java -jar /opt/payara/payara-micro.jar --deploy webapp.war --domainConfig domain.xml --addJars /opt/mysql-connector-java-5.1.40-bin.jar
この呼び出しは、メインクラスを知っているあなたを必要としません。
- 1. ペンタホデザインスタジオにjdbcドライバを追加してデータソースを設定する
- 2. 複数のoracle jdbcドライバを同じベンダーから追加するにはどうすればよいですか?
- 3. IntelliJのJDBC mysqlドライバ設定
- 4. Grails 3.1.8 Oracle JDBCドライバ設定
- 5. Payara Micro 172でサーバーヘッダーを削除するにはどうすればよいですか?
- 6. eclipseでアンドロイドプロジェクトにjdbcドライバを追加する方法
- 7. OracleのJDBCドライバをNeo4jに登録するにはどうすればよいですか?
- 8. JDBCのタイムゾーンをクエリベースで設定するにはどうすればよいですか?
- 9. Flyway GradleプラグインにJDBCドライバを追加するには
- 10. Oracle Thin JDBCドライバを使用してセッションでアプリケーション情報を設定するにはどうすればよいですか?
- 11. SpringからJNDIリソースとしてコンフィグレーションされたJDBCドライバにアクセスするには?
- 12. JDBC PreparedStatementのIDENTITY_INSERTオプションを設定するにはどうすればよいですか?
- 13. Sun JDBC ODBCドライバまたはMSSQL JDBCドライバ
- 14. Spack JDBCを使用して特定の列を選択するにはどうすればよいですか?
- 15. ジャーナリングされたJDBC JDBC永続性でActiveMQを設定する
- 16. 実行時にJDBCドライバを追加する - 原因:java.lang.ClassNotFoundException:com.mysql.jdbc.Driver
- 17. AWS Elastic BeanstalkジョブのクラスパスにJDBC jarドライバを追加する
- 18. コンフィグレーションファイルを使用しない起動時にPySparkにJDBCドライバを追加する
- 19. iReport on linux、JDBCドライバの設定
- 20. jdbcを介してハイブテーブルにデータを挿入するにはどうすればよいですか?
- 21. JSドライバを使用してCypherクエリにダイナミックフィルタを追加するにはどうすればよいですか?
- 22. Spring JDBC JDBCドライバ・クラス[oracle.jdbc.driver.OracleDriver]をロードできませんでした
- 23. Payara Microのログレベルを設定する方法
- 24. JDBCドライバを共有メモリプロトコルを使用するように設定することができます
- 25. リソースで試すJDBCクエリ
- 26. JARファイルから正しいJDBCドライバを参照するには?
- 27. JDBC ResultSetをArrayListとして取得するにはどうすればよいですか?
- 28. Maven経由で追加されてもJDBCドライバが見つかりません
- 29. gradleを使用してsourceSetにリソースを追加するにはどうすればよいですか?現在、
- 30. PySparkの使用時にクラスパスにjdbcドライバを追加するには?
これは、データベース名が常に同じままであるが、デプロイメント全体で常にそうであるとは限りません。 –