Difficulty: Easy
Correct Answer: Invalid (Apache can serve servlets via integration with a servlet container)
Explanation:
Introduction / Context:
This item distinguishes between a plain web server (Apache HTTP Server, often called “httpd”) and a Java servlet container (for example, Apache Tomcat). Understanding the boundary between static HTTP serving and Java servlet execution is vital for architecture and deployment decisions.
Given Data / Assumptions:
Concept / Approach:
Apache HTTP Server does not natively execute Java servlets. Servlets run inside a servlet container compliant with the Java Servlet specification. However, Apache can front and forward requests to Tomcat using connectors such as mod_jk, mod_proxy_ajp, or mod_proxy_http. In practice, Apache participates in serving servlet-based applications through this integration, so the absolute statement “does not support servlets” is misleading and therefore incorrect.
Step-by-Step Solution:
Verification / Alternative check:
Typical production stacks use Apache for static content and SSL termination, forwarding dynamic servlet requests to Tomcat/Jetty/Payara.
Why Other Options Are Wrong:
Common Pitfalls:
Equating Apache HTTP Server with Tomcat; assuming “support” means “executes directly” rather than “supports through integration.”
Final Answer:
Invalid (Apache can serve servlets via integration with a servlet container)
Discussion & Comments