I have created a hilla app using this:
npx #vaadin/cli init --hilla --auth hilla-with-auth
Works fine!
Now I am trying to add that to an existing spring boot application, but I am having issues with Vite not starting as it should. No exception. No help in the debug output.
I have added:
relevant files in the root (package.json, vite.config.ts, etc.)
vaadin-featureflags.properties in resources folder
hilla dependencies in pom.xml as well as the build plugin
hill annotations to my application class (#Theme, #PWA) and made it extends SpringBootServletInitializer implements AppShellConfigurator
But even if everything seems to be initialized correctly, Vite does not start. Can anyone guide me in the right direction?
This is the most relevant output log:
2022-06-07 08:04:54.046 DEBUG 4947 --- [restartedMain] c.v.f.s.f.s.FullDependenciesScanner :
List of npm dependencies found in the project:
- #hilla/form 1.0.1 dev.hilla.EndpointController
....
2022-06-07 08:04:54.057 DEBUG 4947 --- [restartedMain] c.v.f.s.f.TaskGeneratePackageJson : writing file /Users/michael/Development/Previsto/previsto-server/target/flow-frontend/package.json.
2022-06-07 08:05:02.102 INFO 4947 --- [restartedMain] o.a.container.JSR356AsyncSupport : JSR 356 Mapping path /vaadinServlet
2022-06-07 08:05:02.176 INFO 4947 --- [restartedMain] c.v.f.s.DefaultDeploymentConfiguration :
Vaadin is running in DEBUG MODE.
When deploying application for production, remember to disable debug features. See more from https://vaadin.com/docs/
The following EXPERIMENTAL features are enabled:
- Use Vite for faster front-end builds
2022-06-07 08:05:02.207 DEBUG 4947 --- [restartedMain] c.v.f.s.c.PushRequestHandler : Using pre-initialized Atmosphere for servlet springServlet
2022-06-07 08:05:02.210 DEBUG 4947 --- [restartedMain] c.v.flow.server.VaadinServletService : Using 'com.vaadin.flow.server.communication.IndexHtmlRequestHandler' in client mode bootstrapping
2022-06-07 08:05:02.212 DEBUG 4947 --- [restartedMain] com.vaadin.flow.server.VaadinService : The application has the following routes:
2022-06-07 08:05:02.956 INFO 4947 --- [restartedMain] c.v.flow.server.frontend.FrontendTools : Project node version 16.10.0 is older than 16.14.0. Using node from /Users/michael/.vaadin.
2022-06-07 08:05:03.404 DEBUG 4947 --- [http-nio-8080-exec-1] c.v.f.s.s.VaadinDefaultRequestCache : Saving request to /
2022-06-07 08:05:03.471 DEBUG 4947 --- [http-nio-8080-exec-2] c.v.b.devserver.AbstractDevServerRunner : Requesting resource from Vite http://localhost:0/login
2022-06-07 08:05:03.486 ERROR 4947 --- [http-nio-8080-exec-2] o.a.c.c.C.[.[.[/].[springServlet] : Servlet.service() for servlet [springServlet] threw exception
java.net.ConnectException: Can't assign requested address (connect failed)
at ...
I recently updated my Vaadin Flow Project to the newest Version 23.0.1.
It all did great, but the LiveReload (detecting Java-FileChanges) doesnt work at all (Its detecting only CSS changes).
I created a new Spring Boot Vaadin 23 Project with Spring-Initializr to check if it's the same problem. I followed the LiveReload Section in the official Vaadin Docs, but it does'nt work at all... :(
My Console shows no errors at all..
Does someone have a similar Problem?
Console Output:
2022-03-21 12:28:33.379 INFO 16300 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 35729
[.....]
2022-03-21 12:28:33.814 INFO 16300 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8081 (http) with context path ''
2022-03-21 12:28:33.827 INFO 16300 --- [ restartedMain] n.b.p.s.PlatonStartupApplicationListener : Initialize Application
2022-03-21 12:28:33.828 INFO 16300 --- [ restartedMain] n.b.p.s.PlatonStartupApplicationListener : Load global catalog.
2022-03-21 12:28:33.987 INFO 16300 --- [nio-8081-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet 'dispatcherServlet'
2022-03-21 12:28:33.988 INFO 16300 --- [nio-8081-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet'
2022-03-21 12:28:33.992 INFO 16300 --- [nio-8081-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 2 ms
2022-03-21 12:28:38.306 INFO 16300 --- [v-server-output] c.v.b.devserver.DevServerOutputTracker : [build-status] : Compiled.
←[38;5;35m
----------------- Frontend compiled successfully. -----------------
←[0m2022-03-21 12:28:38.313 INFO 16300 --- [onPool-worker-3] c.v.b.devserver.AbstractDevServerRunner : Started Webpack. Time: 9897ms
2022-03-21 12:28:38.382 INFO 16300 --- [v-server-output] c.v.b.devserver.DevServerOutputTracker : No issues found.
I have two datasources in a Spring Boot application. I want to set the autocommit to false, however it's only setting one connection to false, at least per the logging the logging for the Hikari connection pool. Somehow Spring takes the datasource wraps it into this Hikari connection but leaves me scratching my head as to which one it did that for.
I'd like to know how, in my application.properties file, I can set the autocommit to all of my datasources. Bonus points to tell me how to name the connection pool that the datasource gets wrapped into.
Below is the application.properties:
spring.datasource.url=${BLUECOST_DATASOURCE_URL}
spring.datasource.username=${BLUECOST_DATASOURCE_USERNAME}
spring.datasource.password=${BLUECOST_DATASOURCE_PASSWORD}
spring.datasource.driver-class-name=${BLUECOST_DATASOURCE_DRIVER}
spring.datasource.auto-commit=false
spring.batch-datasource.url=${BATCH_DATASOURCE_URL}
spring.batch-datasource.username=${BATCH_DATASOURCE_USERNAME}
spring.batch-datasource.password=${BATCH_DATASOURCE_PASSWORD}
spring.batch-datasource.driver-class-name=${BATCH_DATASOURCE_DRIVER}
spring.batch-datasource.jpa
spring.batch-datasource.auto-commit=false
spring.jpa.database-platform=DB2
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.DB2Dialect
spring.jpa.properties.hibernate.default_schema=${cost.rules.schema}
Logging snippet:
2021-09-11 23:38:07,431 INFO [https-jsse-nio-8448-exec-7]: com.ibm.cio.sprint.cost.rules.resource.SoftLayerController Received getAsyncUploadSoftLayerFile request job instance id=33 job execution id=33
2021-09-11 23:38:07,432 INFO [https-jsse-nio-8448-exec-7]: com.ibm.cio.sprint.cost.rules.application.SoftLayerJobService Looking for status of job instance id 33 job execution id
2021-09-11 23:38:07,432 DEBUG [https-jsse-nio-8448-exec-7]: org.springframework.jdbc.core.JdbcTemplate Executing prepared SQL query
2021-09-11 23:38:07,433 DEBUG [https-jsse-nio-8448-exec-7]: org.springframework.jdbc.core.JdbcTemplate Executing prepared SQL statement [SELECT JOB_INSTANCE_ID, JOB_NAME, JOB_KEY, VERSION from BLUECOST.BATCH_JOB_INSTANCE where JOB_INSTANCE_ID = ?]
2021-09-11 23:38:07,433 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig HikariPool-2 - configuration:
2021-09-11 23:38:07,434 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig allowPoolSuspension.............false
2021-09-11 23:38:07,435 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig autoCommit......................true
2021-09-11 23:38:07,435 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig catalog.........................none
2021-09-11 23:38:07,435 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig connectionInitSql...............none
2021-09-11 23:38:07,435 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig connectionTestQuery.............none
2021-09-11 23:38:07,436 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig connectionTimeout...............30000
2021-09-11 23:38:07,436 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig dataSource......................none
2021-09-11 23:38:07,436 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig dataSourceClassName.............none
2021-09-11 23:38:07,437 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig dataSourceJNDI..................none
2021-09-11 23:38:07,437 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig dataSourceProperties............{password=<masked>}
2021-09-11 23:38:07,437 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig driverClassName................."com.ibm.db2.jcc.DB2Driver"
2021-09-11 23:38:07,437 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig healthCheckProperties...........{}
2021-09-11 23:38:07,438 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig healthCheckRegistry.............none
2021-09-11 23:38:07,438 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig idleTimeout.....................600000
2021-09-11 23:38:07,438 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig initializationFailTimeout.......1
2021-09-11 23:38:07,439 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig isolateInternalQueries..........false
2021-09-11 23:38:07,439 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig jdbcUrl.........................jdbc:db2://<omitted>;
2021-09-11 23:38:07,440 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig leakDetectionThreshold..........0
2021-09-11 23:38:07,440 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig maxLifetime.....................1800000
2021-09-11 23:38:07,440 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig maximumPoolSize.................10
2021-09-11 23:38:07,441 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig metricRegistry..................none
2021-09-11 23:38:07,441 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig metricsTrackerFactory...........none
2021-09-11 23:38:07,442 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig minimumIdle.....................10
2021-09-11 23:38:07,442 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig password........................<masked>
2021-09-11 23:38:07,443 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig poolName........................"HikariPool-2"
2021-09-11 23:38:07,443 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig readOnly........................false
2021-09-11 23:38:07,444 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig registerMbeans..................false
2021-09-11 23:38:07,444 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig scheduledExecutor...............none
2021-09-11 23:38:07,445 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig schema..........................none
2021-09-11 23:38:07,445 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig threadFactory...................internal
2021-09-11 23:38:07,445 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig transactionIsolation............default
2021-09-11 23:38:07,446 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig username........................"90529100"
2021-09-11 23:38:07,446 DEBUG [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariConfig validationTimeout...............5000
2021-09-11 23:38:07,446 INFO [https-jsse-nio-8448-exec-7]: com.zaxxer.hikari.HikariDataSource HikariPool-2 - Starting...
I tried setting default-auto-commit to false, but Hikari still built an autocommit to true
I looked on SO at question:
Spring Boot 2 disable Autocommit Hikari with multiple datasources, and I tried some of the suggestions mentioned, except this one:
"...long story short make sure that you add .type(HikariDataSource.class) before you build your class." I don't know what they meant by that. Is that some application.properties change or some Spring annotation change?
Thanks,
Woodsman
I have an application running with Spring-Boot using Spring's default Hikari Connection Pool.
Recently the server started having issues with unavailable connections:
DEBUG HikariPool (411) - HikariPool-1 - Pool stats (total=20, active=20, idle=0, waiting=3)
DEBUG HikariPool (411) - HikariPool-1 - Timeout failure stats (total=20, active=20, idle=0, waiting=2)
WARN SqlExceptionHelper(137) - SQL Error: 0, SQLState: null
ERROR SqlExceptionHelper(142) - HikariPool-1 - Connection is not available, request timed out after 30005ms.
Since it is a shared database, first I wasn't sure if it is a problem in my application. But after restarting the application the connection was fine again, so I now need to find the cause. The error occurs only on the productive system which is used all around the clock with many actions per minute. I tried to figure out what was causing rising active connections in Hikari by scanning the logs for specific statements executed before the rising connection - but there were always different or unclear actions.
So then we executed a script on the database to return all active connections (gv$session). The result returned not a single active session even though the Hikari Logs showed active connections at the same time. Can anybody tell me what this means and/or has a clue where to find the root cause of this issue?
I use Spring Boot v2.1.4.
These are my hikari settings: (default with spring.datasource.hikari.maximum-pool-size=20)
DEBUG HikariConfig (1020) - HikariPool-1 - configuration:
DEBUG HikariConfig (1052) - allowPoolSuspension.............false
DEBUG HikariConfig (1052) - autoCommit......................true
DEBUG HikariConfig (1052) - catalog.........................none
DEBUG HikariConfig (1052) - connectionInitSql...............none
DEBUG HikariConfig (1052) - connectionTestQuery.............none
DEBUG HikariConfig (1052) - connectionTimeout...............30000
DEBUG HikariConfig (1052) - dataSource......................none
DEBUG HikariConfig (1052) - dataSourceClassName.............none
DEBUG HikariConfig (1052) - dataSourceJNDI..................none
DEBUG HikariConfig (1052) - dataSourceProperties............{password=<masked>}
DEBUG HikariConfig (1052) - driverClassName................."oracle.jdbc.OracleDriver"
DEBUG HikariConfig (1052) - healthCheckProperties...........{}
DEBUG HikariConfig (1052) - healthCheckRegistry.............none
DEBUG HikariConfig (1052) - idleTimeout.....................600000
DEBUG HikariConfig (1052) - initializationFailTimeout.......1
DEBUG HikariConfig (1052) - isolateInternalQueries..........false
DEBUG HikariConfig (1052) - jdbcUrl.........................jdbc:oracle:thin:<masked>
DEBUG HikariConfig (1052) - leakDetectionThreshold..........0
DEBUG HikariConfig (1052) - maxLifetime.....................1800000
DEBUG HikariConfig (1052) - maximumPoolSize.................20
DEBUG HikariConfig (1052) - metricRegistry..................none
DEBUG HikariConfig (1052) - metricsTrackerFactory...........none
DEBUG HikariConfig (1052) - minimumIdle.....................20
DEBUG HikariConfig (1052) - password........................<masked>
DEBUG HikariConfig (1052) - poolName........................"HikariPool-1"
DEBUG HikariConfig (1052) - readOnly........................false
DEBUG HikariConfig (1052) - registerMbeans..................false
DEBUG HikariConfig (1052) - scheduledExecutor...............none
DEBUG HikariConfig (1052) - schema..........................none
DEBUG HikariConfig (1052) - threadFactory...................internal
DEBUG HikariConfig (1052) - transactionIsolation............default
DEBUG HikariConfig (1052) - username........................none
DEBUG HikariConfig (1052) - validationTimeout...............5000
Enable leakDetectionThreshold=<max query time in ms> (documented here).
It logs connections not returned to the pool within the time specified.
We are creating an API which will read a PDf file and automatically sign and validate the PDF using the Digital card. I have added license file in config folder. I dont know how to read that file using Spring boot Maven
16:54:39.929 [main] DEBUG lv.eparaksts.conf.A - resolveResource: try configKey: eparaksts.license
16:54:39.945 [main] DEBUG lv.eparaksts.conf.A - resolveResource: try systemPropertyKey: eparaksts.properties.url
16:54:39.946 [main] DEBUG lv.eparaksts.conf.A - resolveResource: try resourceName: /eparaksts.properties
16:54:39.946 [main] WARN lv.eparaksts.conf.A - The configuration file is missing!
16:54:39.948 [main] DEBUG lv.eparaksts.conf.A - resolveResource: try systemPropertyKey: edoc.properties.url
16:54:39.948 [main] DEBUG lv.eparaksts.conf.A - resolveResource: try resourceName: /edoc.properties
16:54:39.948 [main] WARN lv.eparaksts.conf.A - The configuration file is missing!
16:54:39.953 [main] DEBUG lv.eparaksts.conf.A - -- 0 keys #Wed Nov 29 16:54:39 IST 2017
16:54:39.954 [main] DEBUG lv.eparaksts.conf.A - resolveResource: try systemPropertyKey: eparaksts.license.url
16:54:39.954 [main] DEBUG lv.eparaksts.conf.A - resolveResource: try resourceName: /eparaksts.license
16:54:39.954 [main] DEBUG lv.eparaksts.conf.A - resolveResource: try configKey: edoc.license
16:54:39.954 [main] DEBUG lv.eparaksts.conf.A - resolveResource: try systemPropertyKey: edoc.license.url
16:54:39.954 [main] DEBUG lv.eparaksts.conf.A - resolveResource: try resourceName: /edoc.license
java.lang.RuntimeException: Could not load eParaksts Java Libraries license!
at lv.eparaksts.conf.A.I(ConfigPrivate.java:653)
at lv.eparaksts.conf.A.F(ConfigPrivate.java:560)
at lv.eparaksts.conf.A.K(ConfigPrivate.java:546)
at lv.eparaksts.edoc.EDoc2Builder.newEDoc(EDoc2Builder.java:63)
at lv.eparaksts.edoc.EDoc2Builder.newEDoc(EDoc2Builder.java:52)
at com.narola.lv.eparaksts.sample.EDoc2Sample.main(EDoc2Sample.java:60)
Caused by: java.lang.RuntimeException: The eParaksts Java Libraries license file is missing!
at lv.eparaksts.conf.A.I(ConfigPrivate.java:624)
... 5 more
16:54:39.957 [main] ERROR lv.eparaksts.conf.A - The eParaksts Java Libraries license file is missing!
java.lang.RuntimeException: The eParaksts Java Libraries license file is missing!
at lv.eparaksts.conf.A.I(ConfigPrivate.java:624)
at lv.eparaksts.conf.A.F(ConfigPrivate.java:560)
at lv.eparaksts.conf.A.K(ConfigPrivate.java:546)
at lv.eparaksts.edoc.EDoc2Builder.newEDoc(EDoc2Builder.java:63)
at lv.eparaksts.edoc.EDoc2Builder.newEDoc(EDoc2Builder.java:52)
at com.narola.lv.eparaksts.sample.EDoc2Sample.main(EDoc2Sample.java:60)
Finished
Where shall I keep the license file.