Webアプリケーションでアクティブになるプロファイルの環境変数エントリを作成した: Tomcatサーバのsetenv.batファイル JAVA_OPTS =%JAVA_OPTS%-Dspring.profiles.active = prodTomcatに設定された環境変数からプロファイルが選択されないが、web.xmlにある場合にピックする
アプリケーションがアクティブなプロファイルを使用してデータソースをロードしようとすると、アクティブなプロファイルが設定されていないため例外が発生します。 applicationContext.xmlを中
エントリ:私は、web.xmlのエントリを経由して同じことを行うとき
<beans profile="dev">
<bean id="myDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:books"></property>
<property name="username" value="system"></property>
<property name="password" value="xyz"></property>
</bean>
</beans>
<beans profile="prod">
<bean id="myDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"></property>
<property name="username" value="system"></property>
<property name="password" value="abc"></property>
</bean>
</beans>
</beans>
は、しかし、それは動作します:
<context-param>
<param-name>spring.profiles.active</param-name>
<param-value>dev</param-value>
</context-param>
誰もが負荷の問題が何であるかを教えてくださいすることができ環境変数を使用したプロファイル。
問題は、私はそれが開発環境かprodであり、そのプロファイルに基づいて読み込まれるかどうかを知ることができるように、サーバ自体に変数を設定したいということです。私はtomactのsetenvで変数を設定しようとしましたが、私のアプリケーションはそこからシステムプロパティまたは環境変数を取得していません。 –
OK、私が提案したことは、その問題を解決するはずです。それを試しましたか? – OrangeDog
はい、Tomcatのsetenvファイルに 'spring.profiles.active'を追加しても動作しませんでした。私はただサーバ設定から読みたいだけです。 –