Software Alternatives, Accelerators & Startups

Apache Struts VS Apache Tapestry

Compare Apache Struts VS Apache Tapestry and see what are their differences

Apache Struts logo Apache Struts

Apache Struts is an open-source web application framework for developing Java EE web applications.

Apache Tapestry logo Apache Tapestry

Apache Tapestry is a programming environment designed to enhance Java scripting. It's produced by Apache Software Foundation, which was founded in 1999 in Maryland. Read more about Apache Tapestry.
  • Apache Struts Landing page
    Landing page //
    2022-04-27
  • Apache Tapestry Landing page
    Landing page //
    2021-07-22

Apache Struts features and specs

  • Robust Framework
    Apache Struts is a mature and well-established framework for Java web applications, providing stable and reliable tools for enterprise-level applications.
  • MVC Architecture
    Struts adheres to the Model-View-Controller (MVC) design pattern, which separates business logic, presentation, and navigation, making code maintenance and development easier.
  • Extensive Documentation
    Struts has comprehensive documentation and a wealth of online resources, including tutorials, community forums, and user guides, which can support developers throughout their projects.
  • Rich Tag Library
    It comes with a rich set of custom tags that enhance the JSP (JavaServer Pages) to create dynamic web content easily.
  • Plugin Support
    Apache Struts supports various plugins that can extend its functionality, allowing developers to integrate additional features without much effort.

Possible disadvantages of Apache Struts

  • Steep Learning Curve
    New developers might find Struts challenging to learn due to its complexity and the need for a good understanding of the MVC architecture and Java web application development.
  • Configuration Overhead
    The framework requires extensive XML configuration, which can be cumbersome and time-consuming compared to convention-over-configuration frameworks.
  • Performance
    Struts can be slower than some newer, lighter frameworks due to its broader feature set and the overhead associated with its extensive configuration.
  • Security Vulnerabilities
    Struts has had notable security vulnerabilities in the past. Although patches and updates are available, it necessitates proactive monitoring and maintenance.
  • Outdated Compared to Modern Frameworks
    With the advent of modern frameworks like Spring MVC and JavaServer Faces, some developers consider Struts to be less up-to-date with the latest web development standards and practices.

Apache Tapestry features and specs

  • Component-Based Design
    Apache Tapestry offers a component-based architecture, which promotes reusable and modular code, making it easier to manage and maintain complex web applications.
  • Convention Over Configuration
    Tapestry reduces the need for extensive configuration files, allowing for a more streamlined development process by using sensible defaults and conventions.
  • Built-in Scalability
    The framework is designed to handle scalability concerns efficiently, providing features like built-in data caching and optimized rendering to support high-performance applications.
  • Live Class Reloading
    Tapestry enables developers to see changes instantly without restarting the server, thanks to its live class reloading feature, which accelerates the development cycle.
  • Robust Community and Documentation
    With an active community and comprehensive documentation, developers can find support and resources easily, which can aid in efficient problem-solving and learning.

Possible disadvantages of Apache Tapestry

  • Steep Learning Curve
    New developers might experience a steep learning curve due to the framework's unique concepts and paradigms, which may differ significantly from more mainstream technologies.
  • Smaller Ecosystem
    Compared to some other web frameworks, Tapestry has a smaller ecosystem of third-party plugins and extensions, which might limit some functionality and tool integration.
  • Fewer Resources and Examples
    Due to its less widespread use, there are fewer tutorials, examples, and stack overflow questions answered, which can be a challenge for newcomers or when encountering specific issues.
  • Limited IDE Support
    While most major IDEs support Tapestry, the support might not be as robust or feature-rich as with more popular frameworks, potentially affecting productivity.
  • Infrequent Updates
    Tapestry may not receive updates and new features as frequently as other more actively developed frameworks, which can slow down the adoption of new web technologies.

Apache Struts videos

Finding and Fixing Apache Struts CVE-2017-5638 with Black Duck Hub

More videos:

  • Review - Apache Struts 2 - remote command execution
  • Review - Dark ambient drone music | Vulnerable Apache Struts installation under attack (Java, Jakarta)

Apache Tapestry videos

No Apache Tapestry videos yet. You could help us improve this page by suggesting one.

Add video

Category Popularity

0-100% (relative to Apache Struts and Apache Tapestry)
Developer Tools
79 79%
21% 21
Web Frameworks
76 76%
24% 24
JavaScript Tools
100 100%
0% 0
Python Web Framework
0 0%
100% 100

User comments

Share your experience with using Apache Struts and Apache Tapestry. For example, how are they different and which one is better?
Log in or Post with

Reviews

These are some of the external sources and on-site user reviews we've used to compare Apache Struts and Apache Tapestry

Apache Struts Reviews

17 Popular Java Frameworks for 2023: Pros, cons, and more
You can integrate Struts with other Java frameworks to perform tasks that aren’t built into the platform. For instance, you can use the Spring plugin for dependency injection or the Hibernate plugin for object-relational mapping. Struts also allows you to use different client-side technologies such as Jakarta Server Pages to build the frontend of your application.
Source: raygun.com
10 Best Java Frameworks You Should Know
Followed by Struts Framework, the next leading framework currently being used in the IT industry is the Wicket.

Apache Tapestry Reviews

17 Popular Java Frameworks for 2023: Pros, cons, and more
You can write Tapestry pages and components as plain old Java objects (POJOs), so you can access the entire Java ecosystem from the framework. Besides Java, Tapestry also supports the Groovy and Scala programming languages and integrates with other Java frameworks such as Hibernate and Spring. Tapestry has been built with performance in mind; therefore it provides you with...
Source: raygun.com

Social recommendations and mentions

Based on our record, Apache Struts should be more popular than Apache Tapestry. It has been mentiond 2 times since March 2021. We are tracking product recommendations and mentions on various public social media platforms and blogs. They can help you identify which product is more popular and what people think of it.

Apache Struts mentions (2)

Apache Tapestry mentions (1)

  • Why is Java templating/server rendering losing ground?
    Or good old https://tapestry.apache.org/. Source: about 3 years ago

What are some alternatives?

When comparing Apache Struts and Apache Tapestry, you can also consider the following products

Spring Framework - The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform.

Grails - An Open Source, full stack, web application framework for the JVM

Apache Wicket - HelloWorld demonstrates the basic structure of a web application in Wicket. A Label component is used to display a message on the home page for the application. In all the Wicket examples, you have to put all files in the same package directory.

Spark Mail - Spark helps you take your inbox under control. Instantly see what’s important and quickly clean up the rest. Spark for Teams allows you to create, discuss, and share email with your colleagues

Eclipse RAP - Java Web Frameworks

Vaadin Framework - Vaadin is a web application framework for Rich Internet Applications (RIA).