What is JSTL and what are its top alternatives?
Top Alternatives to JSTL
- Thymeleaf
It is a modern server-side Java template engine for both web and standalone environments. It is aimed at creating elegant web code while adding powerful features and retaining prototyping abilities. ...
- JSF
It is used for building component-based user interfaces for web applications and was formalized as a standard through the Java Community ...
- AngularJS
AngularJS lets you write client-side web applications as if you had a smarter browser. It lets you use good old HTML (or HAML, Jade and friends!) as your template language and lets you extend HTML’s syntax to express your application’s components clearly and succinctly. It automatically synchronizes data from your UI (view) with your JavaScript objects (model) through 2-way data binding. ...
- JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles. ...
- guava
The Guava project contains several of Google's core libraries that we rely on in our Java-based projects: collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and so forth. ...
- Java 8
It is a revolutionary release of the world’s no 1 development platform. It includes a huge upgrade to the Java programming model and a coordinated evolution of the JVM, Java language, and libraries. Java 8 includes features for productivity, ease of use, improved polyglot programming, security and improved performance. ...
- RxJava
A library for composing asynchronous and event-based programs by using observable sequences for the Java VM. ...
- Quarkus
It tailors your application for GraalVM and HotSpot. Amazingly fast boot time, incredibly low RSS memory (not just heap size!) offering near instant scale up and high density memory utilization in container orchestration platforms like Kubernetes. We use a technique we call compile time boot. ...
JSTL alternatives & related posts
- Its delicous2
related Thymeleaf posts
I am consulting for a company that wants to move its current CubeCart e-commerce site to another PHP based platform like PrestaShop or Magento. I was interested in alternatives that utilize Node.js as the primary platform. I currently don't know PHP, but I have done full stack dev with Java, Spring, Thymeleaf, etc.. I am just unsure that learning a set of technologies not commonly used makes sense. For example, in PrestaShop, I would need to work with JavaScript better and learn PHP, Twig, and Bootstrap. It seems more cumbersome than a Node JS system, where the language syntax stays the same for the full stack. I am looking for thoughts and advice on the relevance of PHP skillset into the future AND whether the Node based e-commerce open source options can compete with Magento or Prestashop.








I need some advice to choose an engine for generation web pages from the Spring Boot app. Which technology is the best solution today? 1) JSP + JSTL 2) Apache FreeMarker 3) Thymeleaf Or you can suggest even other perspective tools. I am using Spring Boot, Spring Web, Spring Data, Spring Security, PostgreSQL, Apache Tomcat in my project. I have already tried to generate pages using jsp, jstl, and it went well. However, I had huge problems via carrying already created static pages, to jsp format, because of syntax. Thanks.
- Rich and comprehensive Request Life-cycle2
- Very Mature UI framework1
- Server Side component1
related JSF posts
Hello guys! I would ask for your advice. Our situation is like that there will be a project to revamp workflows and introduce new services like mobile apps, machine learning, and some online services that would use cloud storage. We use JSF, JavaScript, Ajax, Spring, Oracle 12c running on Linux (VM) and providing online services to internal users and the public. But, we are not technically savvy enough to evaluate what tools should be introduced. Personally, I am evaluating whether to take this opportunity to change our practice/PM approach from Prince to Scrum/Agile (It seemed that DevOps is popular) ... Since we adopt ISO 27001 and ISO 20000, security is a crucial factor that we consider. Would you please help to recommend a list of tools and explain the reasons why you recommend them? Thanks in advance~!
I need to modernize a Java web application that runs on JSF. I am used to building websites, so Bootstrap kinda feels like "home." But when it comes to applications, I feel Bootstrap is not the right way to go. Can someone explain to me what PrimeFaces is capable of in comparison with BS?
- Quick to develop887
- Great mvc587
- Powerful572
- Restful521
- Backed by google503
- Two-way data binding349
- Javascript343
- Open source328
- Dependency injection305
- Readable197
- Fast75
- Directives64
- Great community63
- Free56
- Extend html vocabulary38
- Components29
- Easy to test26
- Easy to learn24
- Easy to templates23
- Great documentation23
- Easy to start21
- Awesome18
- Light weight17
- Angular 2.014
- Javascript mvw framework14
- Great extensions13
- Efficient13
- Easy to prototype with10
- High performance8
- Coffeescript8
- Mvc7
- Two-way binding7
- Lots of community modules7
- Easy to e2e6
- Clean and keeps code readable6
- Easy for small applications5
- One of the best frameworks5
- Fast development4
- Works great with jquery4
- I do not touch DOM3
- Be a developer, not a plumber.2
- Declarative programming2
- Dart2
- Community2
- The two-way Data Binding is awesome2
- Hierarchical Data Structure2
- Typescript2
- Botionescu@gmail.com1
- The powerful of binding, routing and controlling routes1
- Fkin awesome1
- Opinionated in the right areas1
- Supports api , easy development1
- Common Place1
- Great1
- Very very useful and fast framework for development1
- Amazing community support1
- Readable code1
- Linear learning curve1
- Scopes1
- Programming fun again1
- Acoperișul1
- Consistency with backend architecture if using Nest1
- Httpș//Acoperișul 07576043350
- Angular js0
- Oautho loc0
- Shvzjn0
- Acoperișul 07576043350
- Js0
- Bot Ionescu0
- Google.com0
- Complex10
- Dependency injection3
- Learning Curve2
- Event Listener Overload2
- Hard to learn1
related AngularJS posts
















Our whole Node.js backend stack consists of the following tools:
- Lerna as a tool for multi package and multi repository management
- npm as package manager
- NestJS as Node.js framework
- TypeScript as programming language
- ExpressJS as web server
- Swagger UI for visualizing and interacting with the API’s resources
- Postman as a tool for API development
- TypeORM as object relational mapping layer
- JSON Web Token for access token management
The main reason we have chosen Node.js over PHP is related to the following artifacts:
- Made for the web and widely in use: Node.js is a software platform for developing server-side network services. Well-known projects that rely on Node.js include the blogging software Ghost, the project management tool Trello and the operating system WebOS. Node.js requires the JavaScript runtime environment V8, which was specially developed by Google for the popular Chrome browser. This guarantees a very resource-saving architecture, which qualifies Node.js especially for the operation of a web server. Ryan Dahl, the developer of Node.js, released the first stable version on May 27, 2009. He developed Node.js out of dissatisfaction with the possibilities that JavaScript offered at the time. The basic functionality of Node.js has been mapped with JavaScript since the first version, which can be expanded with a large number of different modules. The current package managers (npm or Yarn) for Node.js know more than 1,000,000 of these modules.
- Fast server-side solutions: Node.js adopts the JavaScript "event-loop" to create non-blocking I/O applications that conveniently serve simultaneous events. With the standard available asynchronous processing within JavaScript/TypeScript, highly scalable, server-side solutions can be realized. The efficient use of the CPU and the RAM is maximized and more simultaneous requests can be processed than with conventional multi-thread servers.
- A language along the entire stack: Widely used frameworks such as React or AngularJS or Vue.js, which we prefer, are written in JavaScript/TypeScript. If Node.js is now used on the server side, you can use all the advantages of a uniform script language throughout the entire application development. The same language in the back- and frontend simplifies the maintenance of the application and also the coordination within the development team.
- Flexibility: Node.js sets very few strict dependencies, rules and guidelines and thus grants a high degree of flexibility in application development. There are no strict conventions so that the appropriate architecture, design structures, modules and features can be freely selected for the development.
























Our whole Vue.js frontend stack (incl. SSR) consists of the following tools:
- Nuxt.js consisting of Vue CLI, Vue Router, vuex, Webpack and Sass (Bundler for HTML5, CSS 3), Babel (Transpiler for JavaScript),
- Vue Styleguidist as our style guide and pool of developed Vue.js components
- Vuetify as Material Component Framework (for fast app development)
- TypeScript as programming language
- Apollo / GraphQL (incl. GraphiQL) for data access layer (https://apollo.vuejs.org/)
- ESLint, TSLint and Prettier for coding style and code analyzes
- Jest as testing framework
- Google Fonts and Font Awesome for typography and icon toolkit
- NativeScript-Vue for mobile development
The main reason we have chosen Vue.js over React and AngularJS is related to the following artifacts:
- Empowered HTML. Vue.js has many similar approaches with Angular. This helps to optimize HTML blocks handling with the use of different components.
- Detailed documentation. Vue.js has very good documentation which can fasten learning curve for developers.
- Adaptability. It provides a rapid switching period from other frameworks. It has similarities with Angular and React in terms of design and architecture.
- Awesome integration. Vue.js can be used for both building single-page applications and more difficult web interfaces of apps. Smaller interactive parts can be easily integrated into the existing infrastructure with no negative effect on the entire system.
- Large scaling. Vue.js can help to develop pretty large reusable templates.
- Tiny size. Vue.js weights around 20KB keeping its speed and flexibility. It allows reaching much better performance in comparison to other frameworks.
JavaScript
- Can be used on frontend/backend1.6K
- It's everywhere1.5K
- Lots of great frameworks1.1K
- Fast886
- Light weight735
- Flexible416
- You can't get a device today that doesn't run js385
- Non-blocking i/o284
- Ubiquitousness233
- Expressive188
- Extended functionality to web pages51
- Relatively easy language44
- Executed on the client side42
- Relatively fast to the end user26
- Pure Javascript22
- Functional programming17
- Async11
- Setup is easy8
- Full-stack7
- Its everywhere7
- Because I love functions7
- JavaScript is the New PHP7
- Like it or not, JS is part of the web standard7
- Future Language of The Web6
- Can be used in backend, frontend and DB6
- Expansive community6
- Love-hate relationship5
- Everyone use it5
- Easy to hire developers5
- Evolution of C5
- Supports lambdas and closures5
- Agile, packages simple to use5
- Popularized Class-Less Architecture & Lambdas5
- For the good parts5
- Function expressions are useful for callbacks4
- No need to use PHP4
- Everywhere4
- Hard not to use4
- Promise relationship4
- Scope manipulation4
- It's fun4
- Client processing4
- Nice4
- Easy to make something4
- Can be used on frontend/backend/Mobile/create PRO Ui4
- Can be used both as frontend and backend as well4
- Photoshop has 3 JS runtimes built in4
- It let's me use Babel & Typescript4
- Client side JS uses the visitors CPU to save Server Res4
- 1.6K Can be used on frontend/backend4
- Stockholm Syndrome4
- What to add4
- Clojurescript4
- Most Popular Language in the World4
- Powerful4
- Versitile4
- Easy4
- Its fun and fast4
- Only Programming language on browser3
- Because it is so simple and lightweight3
- JavaScript j.s2
- Acoperișul 07576043352
- God1
- Easy to understand0
- A constant moving target, too much churn21
- Horribly inconsistent20
- Javascript is the New PHP14
- No ability to monitor memory utilitization8
- Shows Zero output in case of ANY error6
- Can be ugly5
- Thinks strange results are better than errors4
- No GitHub2
- Slow1
related JavaScript posts
Oof. I have truly hated JavaScript for a long time. Like, for over twenty years now. Like, since the Clinton administration. It's always been a nightmare to deal with all of the aspects of that silly language.
But wowza, things have changed. Tooling is just way, way better. I'm primarily web-oriented, and using React and Apollo together the past few years really opened my eyes to building rich apps. And I deeply apologize for using the phrase rich apps; I don't think I've ever said such Enterprisey words before.
But yeah, things are different now. I still love Rails, and still use it for a lot of apps I build. But it's that silly rich apps phrase that's the problem. Users have way more comprehensive expectations than they did even five years ago, and the JS community does a good job at building tools and tech that tackle the problems of making heavy, complicated UI and frontend work.
Obviously there's a lot of things happening here, so just saying "JavaScript isn't terrible" might encompass a huge amount of libraries and frameworks. But if you're like me, yeah, give things another shot- I'm somehow not hating on JavaScript anymore and... gulp... I kinda love it.











How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:
Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.
Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:
https://eng.uber.com/distributed-tracing/
(GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)
Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark
- Interface Driven API5
- Easy to setup1
related guava posts
related Java 8 posts
- Reactive Libraries as per Reactive Manifesto1
related RxJava posts
Quarkus
- Open source10
- Fast startup9
- Integrated with GraalVM8
- Low memory footprint7
- Produce native code7
- AOT compilation6
- Hot Reload6
- Reactive4
- Boilerplate code when using Reflection2
related Quarkus posts
We are working on a transaction processing application and everything needs to happen in real-time. I have used AWS Lambda with Quarkus + Java, and struggled with cold start time however Lambda is still cost effective. so wanted to understand which one will be suitable as alternative to lambda services.
We use Quarkus with native compilation in GraalVM for our global REST-API "Charon", that can be used by every developer to request user, server and game-data (protected through OAuth2). Quarkus offers a reliable framework, library and stack for high-quality APIs and integrates Vert.x into its core.
GraalVM pushes the performance boundaries even further with the ability to perform ahead-of-time native compilation so we can reach an incredible small memory-footprint and fast bootup-times that we need for our microservices architecture.