Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 4620536
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 22, 20262026-05-22T02:34:25+00:00 2026-05-22T02:34:25+00:00

I’m just trying to get started with Java EE and related concepts. However, I’m

  • 0

I’m just trying to get started with Java EE and related concepts. However, I’m having some trouble understanding the relations between some technologies and the roles they play.

As far as I understand, a Java EE Servlet is a Java class that runs inside a server, and generates responses to requests (typically HTML responses to HTTP requests, though Servlets can theoretically serve any protocol).

My questions:

  • As far as I understand, I can either write a Servlet class directly, or I can use some technology like JSP or JSF, which will then generate/provide a Servlet for me. At any rate, the Java EE web container (e.g. Apache Tomcat) where I ultimately run my app will only see Servlets, and will not care how they were created (so Servlets are kind of a low level plumbing). Is that true?
  • If Servlets are kind of low-level, is there any reason to actually use Servlets directly? I have seen many tutorials that explain how to write a Servlet, but that seems rather unpractical. Is there any situation where writing a Servlet directly is better/preferred to using JSP or similar?
  • Finally, Servlets need a server to run in (e.g. Apache Tomcat). When reading about servers in that context, I’ve seen various names such as (Java EE) web container, or servlet container, or JSP container, or just Java EE server. Do these terms all mean the same, or is there a difference?

Thanks for helping me get started!

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-22T02:34:26+00:00Added an answer on May 22, 2026 at 2:34 am

    When the container loads the servlet, no, it won’t care much where it came from. That said, different containers handle this differently when it comes to things like dynamic loading and stuff like that, but I wouldn’t worry much about it.

    Servlets are low level. They’re the base abstraction upon which all of the other Java EE web frameworks are based. In the “real world”, most of the time, people will use some higher level framework rather than a raw Servlet.

    That said, Servlets are still useful when you actually want to get to that “bare metal” (well as bare as Servlets get) interface to an HTTP request. For simple things, it’s just easier to write a Servlet than stand up a bunch of framework jars and such.

    As far as containers, the distinction is basically Java EE server vs Servlet container or server. Tomcat is NOT a Java EE server, it only handles the web portion of the Java EE stack. To confuse things, Java EE 6 now has a “web-profile”, which is basically the Servlet stack, but whereas before a Servlet container couldn’t be consider a “Java EE Server”, now it can be a “Java EE Server – Web Profile”.

    Yea, I don’t know what it means either.

    The key difference is that the Servlet containers (Tomcat, Jetty, Resin) don’t come bundled with the rest of the Java EE stack (notably EJBs), but have several other components that are part of the overall Java EE stack.

    If you’re just getting in to Java EE, I would pick a full boat container (like Glassfish) since a) you can, b) it’s easy (GF is trivial to setup) and, c) you won’t have to second guess what is or isn’t included in your container vs whatever you’re reading about requires. GF will have “everything” that is Java EE. It won’t have Spring, for example, as that’s not Java EE, but if it’s in your Java EE book or web site article, GF will have it.

    Later you can choose when you want the full kit or just want to use something like Tomcat or not.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

No related questions found

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.