Spring boot, jdbc modèle fonctionne après application manuelle pot de départ, mais pas via cron. Quelle pourrait être la raison derrière?

0

La question

Im en utilisant un ressort de démarrage de l'application sur Amazon Ec2 qui se connecte à la base de données Oracle. L'application.fichier de propriétés a la suite de propriétés pertinentes-

hibernate.dialect=org.hibernate.dialect.Oracle12cDialect
hibernate.show_sql=true
hibernate.format_sql=true

# dbcp2 settings
spring.datasource.dbcp2.initial-size=10
spring.datasource.dbcp2.max-total=100
spring.datasource.dbcp2.pool-prepared-statements=true
spring.jdbc.template.max-rows=500
spring.datasource.dbcp2.max-open-prepared-statements=100

logging.level.org.springframework.jdbc.core.JdbcTemplate=DEBUG
logging.level.org.springframework.jdbc.core.StatementCreatorUtils=TRACE

# Schema
spring.appds.jdbcurl = jdbc:oracle:thin:@xx.r.zz.tt:1521/tttt
spring.appds.username = userAPP
spring.appds.password = passwordApp
spring.appds.driverClassName = oracle.jdbc.OracleDriver

L'application jar est exécuté via un cron en utilisant les privilèges de root à partir du dossier racine.

La demande n'a pas été de retour des données pour un jdbctemplate requête depuis.

SELECT *
FROM TABLE(lic.skd_es_i.e_g_app_sh_li(key => 54234
, date_from => NULL
, date_to => NULL
, use_country => 'IT'
, work_title => ''
, source => 'LOCAL'));

Cependant, la même requête a été de travailler sur la base de données toujours.

Aujourd'hui, quand j'ai redémarré le printemps de démarrage de l'application jar manuellement en accédant à la jar emplacement, il fonctionne.

Je suis curieux de savoir ce qu'aurait pu être la raison derrière?

cron java jdbctemplate spring-boot
2021-11-15 10:44:16
1

La meilleure réponse

0

Quand j'ai commencé l'application manuellement en accédant à la jar emplacement et a commencé à l'application, la requête a commencé à travailler.

J'ai alors réalisé que le problème était avec le répertoire de travail pour le printemps de démarrage de l'application. Le cron commencé application jar à l'aide de "root" comme répertoire de travail, alors que le Printemps de démarrage jar m'attendais fichier de configuration de l'application.propriétés ou de l'application.yml – dans 4 des endroits prédéterminés dans l'ordre de priorité suivant:

  1. A /config sous-répertoire du répertoire courant
  2. Le répertoire courant
  3. Un classpath /config / package
  4. La racine du classpath

Ainsi, pointant vers le répertoire de travail pour des tâches cron pour l'emplacement correct (dans ce cas, le printemps de démarrage jar emplacement), les sources de données ont été correctement chargé.

De référence- https://www.baeldung.com/spring-properties-file-outside-jar

2021-11-18 12:57:02

Dans d'autres langues

Cette page est dans d'autres langues

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................