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 721141
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 14, 20262026-05-14T05:50:22+00:00 2026-05-14T05:50:22+00:00

I am pretty new to the whole Java and OSGi world and I have

  • 0

I am pretty new to the whole Java and OSGi world and I have trouble understanding the eco system of a OSGi web application.

To be more precise I am at the moment trying to understand how all the parts of the eco system are related to each other:

  • OSGi Framework (e.g. Apache Felix, Equinox, Knoplerfish)
  • OSGi Runtime (e.g. Spring DM Server, Pax Runner, Apache Karaf)
  • Web Extender (e.g. Pax Web Extender, Spring Web Extender)
  • Web Container (e.g. Apache Tomcat, Jetty)

To give you a visual representation of my actual understanding of their relationship check out this image:

alt text

As far as I know the OSGi Framework is a implementation of the OSGi specification. The runtime is a distribution which adds additional functionality on top of the OSGi specification like logging for instance. Since there seem to be some differences in the classpath mechanism of OSGi and web containers like Tomcat you need some kind of translator. This part is handled by the “Web Extender”.

Would you please clarify this whole thing for me? Am I understanding everything correct?

  • 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-14T05:50:22+00:00Added an answer on May 14, 2026 at 5:50 am

    OSGi is a standard in terms of API and packaging for interacting software modules. This is similar to other API standards like JPA or Java EE.

    An OSGi runtime is a server which follows the OSGi standard, it is an implementation of the standard. You mention some common ones: Knopflerfish, Eqinox. These let you run OSGi bundles.

    A web container usually refers to an implementation of the web-specific parts of Java EE (servlets). The servlet standard also defines an API and packaging, just like OSGi, only different.

    You need a server to run your Java EE web apps. You package your app as a Java Web Archive (WAR), and ask your application server to start it. There are several servers, as you mention, like Tomcat, Jetty, but also bigger servers which cover larger parts of the Java EE standard, like Glassfish and JBoss.

    A web extender tries to unify the servlet standard with OSGi. By adding some OSGi-specific data to your already packaged WAR, the WAR will be automatically parsed and started by your OSGi runtime. Your WAR servlets will be published to the OSGi http service by the web extender. With a web extender, you can run both standard OSGi applications as well as WARs using only a OSGi runtime, without the need for a Java EE-compliant server like Tomcat.

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

Sidebar

Related Questions

I'm pretty new with Django and the whole web-developing concept. I've only taken Java
Im pretty new to Java Web Services, but I cant find a good explanation
Let me preface this by saying that I'm pretty new to Java. I have
I'm not an expert in Java and I'm pretty new to the whole concept
I'm pretty new to WPF however i've got a solid understanding of WindowsForms. When
I'm new to Java and I'm getting the HttpServletRequest , but I have no
I am pretty new to GraniteDS..So far I have been able to successfully configure
I am pretty new to this whole servlet thing, so please correct me if
I've never actually used IIS, and I'm pretty new to the whole ASP.net thing
I'm currently maintaining a small-medium sized java web application (using only plain JSPs/Servlets) that

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.