Spring boot, jdbc template funguje po ručním aplikace jar začít, ale ne přes cron. Co by mohlo být důvodem?

0

Otázka

Im pomocí spring boot aplikaci na Amazon Ec2, který se připojuje k databázi Oracle. Aplikace.vlastnosti soubor má následující důležité vlastnosti-

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

Aplikace jar je spouštěn přes cron pomocí root oprávnění z kořenového adresáře.

Žádost nebyla vrací data pro jdbctemplate dotazu od té doby.

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'));

Nicméně stejný dotaz, pracoval databáze vždy.

Dnes, když jsem restartoval spring boot aplikaci jar ručně navigaci do sklenice místo, to funguje.

Jsem zvědavý, co mohlo být důvodem?

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

Nejlepší odpověď

0

Když jsem začal aplikace ručně navigaci do sklenice místo a začal aplikace, dotaz začal pracovat.

Pak jsem si uvědomil, že problém byl s pracovní adresář pro spring boot aplikaci. Cron začala aplikace jar pomocí "kořen" jako pracovní adresář, vzhledem k tomu, Spring boot jar čekal konfigurační soubor aplikace.vlastnosti nebo aplikace.yml – v 4 předem určených místech v následujícím pořadí:

  1. A /config podadresář aktuálního adresáře
  2. Aktuální adresář
  3. Na classpath /config balíček
  4. Classpath root

Tím ukazuje pracovní adresář pro cron pracovních míst na správné místo (v tomto případě, na jaře boot jar umístění), sources byly načteny správně.

Reference- https://www.baeldung.com/spring-properties-file-outside-jar

2021-11-18 12:57:02

V jiných jazycích

Tato stránka je v jiných jazycích

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