Comments (5)
from jte.
@hurelhuyag thanks for the heads up!
@tstsogoo is right, jte already supports hot reload during development, when using a DirectoryCodeResolver
.
var codeResolver = new DirectoryCodeResolver(Path.of("jte")); // This is the directory where your .jte files are located.
var templateEngine = TemplateEngine.create(codeResolver, ContentType.Html);
Maybe you used a ResourceCodeResolver
? That one does not support hot reload.
from jte.
If hot reload is like JSP does why it is not recommended in production environment? I'm expecting production grade hot reloading feature.
from jte.
Obviously, you can use jte in production the same way as during development.
There are few reasons I would not recommend it:
- Performance: Hot reloading does an additional check on the file system, which is almost always unneccessary on a production system
- Security: Hot reloading on production requires a JDK to recompile templates. If you are able to change templates on production, you really have to secure this. If something goes wrong, you immediately have a remote code execution vulnerability
That being said, since version 1.5.0 there is a way for hot reload on production, without paying the performance penalty. This unit test illustrates how you'd do that. However, the security concern is still valid, so please be careful.
from jte.
Thanks. I got it.
from jte.
Related Issues (20)
- Embed Content at render time in a div element with an id HOT 2
- Keep indent for @template.call HOT 4
- Kotlin standard library errors with kte and Gradle continuous build HOT 2
- Spring Boot starter integration JteModelAndView and @model proposal HOT 2
- java.lang.NoClassDefFoundError: gg/jte/CodeResolver HOT 4
- Error 404 not rendering JTE Spring Boot 3 HOT 6
- Pattern Matching with `kte` HOT 3
- Issue with generate task Jte Gradle Plugin in Multi-Module Spring Boot Project HOT 7
- java.lang.NoClassDefFoundError: gg/jte/html/HtmlTemplateOutput HOT 4
- ContentType.Plain trying to render documents HtmlTemplateOutput HOT 4
- Spring Boot Form Validation with JTE HOT 4
- More than one for-else in the same template causes compilation error HOT 3
- Unable to change jvmTarget HOT 5
- Replace intercepted tag with different content HOT 1
- Customizable template literal HOT 1
- Why is expressions in HTML attribute names are not allowed? HOT 1
- Automatically call `.toString()` when outputting unknown types? HOT 4
- The ` syntax in the <script> tag in a jte extension file doesn't work. HOT 1
- error template resolution Spring Boot HOT 3
- Bug in StringUtils.startsWithIgnoringCaseAndWhitespaces() prevents writing out "J" HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jte.