Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Equinox » equinox on the server-side
equinox on the server-side [message #55564] Sun, 01 January 2006 22:14 Go to next message
Martin Schikowski is currently offline Martin SchikowskiFriend
Messages: 19
Registered: July 2009
Junior Member
hello all,

can somebody give me advises for the usage of one of the following 3 approaches of server-side equinox:

1.) org.eclipse.help.appserver + org.eclipse.tomcat (for Eclipse Help Center)
- the eclipse built-in webserver
- why has IBM launched a second osgi-bundled web-server (see 3.). Is the new IBM solution more flexible? and if, in which ways?

2.) org.eclipse.equinox.servlet.bridge, org.eclipse.equinox.servlet.ext and org.eclipse.equinox.servlet.httpservice (Simon Kaegi, Cognos):
- this solution I have confronted with so far
- possibility to integrate into tomcat, to build up a component oriented web application -> Is there an alternative solution?

3.) org.eclipse.equinox.http (IBM):
- so far I haven`t analyzed
- seems to be something like 1.)
- has it's own servlet engine
- has NO Ext.-Points
- is there a documentation for usage?

thank you and I wish all a happy new year!
martin
Re: equinox on the server-side [message #56571 is a reply to message #55564] Thu, 12 January 2006 08:07 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: eishays.us.ibm.com

Martin,

Can you post your conclusions?
I would like to find ways to use Eclipse OSGi bundles for the server
side by either exposing them as a web service using the Tomcat plugin or
embed them in an application server (e.g. Geronimo).

Thanks in advance,
Eishay


Martin Schikowski wrote:
> hello all,
>
> can somebody give me advises for the usage of one of the following 3 approaches of server-side equinox:
>
> 1.) org.eclipse.help.appserver + org.eclipse.tomcat (for Eclipse Help Center)
> - the eclipse built-in webserver
> - why has IBM launched a second osgi-bundled web-server (see 3.). Is the new IBM solution more flexible? and if, in which ways?
>
> 2.) org.eclipse.equinox.servlet.bridge, org.eclipse.equinox.servlet.ext and org.eclipse.equinox.servlet.httpservice (Simon Kaegi, Cognos):
> - this solution I have confronted with so far
> - possibility to integrate into tomcat, to build up a component oriented web application -> Is there an alternative solution?
>
> 3.) org.eclipse.equinox.http (IBM):
> - so far I haven`t analyzed
> - seems to be something like 1.)
> - has it's own servlet engine
> - has NO Ext.-Points
> - is there a documentation for usage?
>
> thank you and I wish all a happy new year!
> martin
Re: equinox on the server-side [message #56623 is a reply to message #56571] Thu, 12 January 2006 13:41 Go to previous messageGo to next message
Martin Schikowski is currently offline Martin SchikowskiFriend
Messages: 19
Registered: July 2009
Junior Member
Eishay,

I still try to find out the main differences:

> > can somebody give me advises for the usage of one
> of the following 3 approaches of server-side equinox:
> >
> > 1.) org.eclipse.help.appserver + org.eclipse.tomcat
> (for Eclipse Help Center)
> > - the eclipse built-in webserver
> > - why has IBM launched a second osgi-bundled
> web-server (see 3.). Is the new IBM solution more
> flexible? and if, in which ways?

help webapps are registered as extension to the ext.-point org.eclipse.help.base.webapp.

it can be used for own implementations through the WebappManager: http://www.eclipsezone.com/eclipse/forums/m91945034.html

maybe it will soon be replaced by the IBM impl, but I don't know.

> >
> > 2.) org.eclipse.equinox.servlet.bridge,
> org.eclipse.equinox.servlet.ext and
> org.eclipse.equinox.servlet.httpservice (Simon Kaegi,
> Cognos):
> > - this solution I have confronted with so far
> > - possibility to integrate into tomcat, to build
> up a component oriented web application -> Is there
> an alternative solution?

my main investigations are targeted to it:
seem to be suitable for a productive usage.

Without changin a running web app server you can embed an osgi framework within a webapplication. All requests are directed to servlet-bundles through ONE central BRIDGE servlet.

An alternative was Vasily Kuznetsov with his solution ( http://dev.eclipse.org/mhonarc/lists/equinox-dev/msg00693.ht ml). But he wants to adopt Simon Kaegis solution.

> >
> > 3.) org.eclipse.equinox.http (IBM):
> > - so far I haven`t analyzed
> > - seems to be something like 1.)
> > - has it's own servlet engine
> > - has NO Ext.-Points
> > - is there a documentation for usage?
it is definitely a httpService with an integrated proprietary servlet engine.

this concept, that an app server is bundled in one or more jars is like:
- Jetty in OSCAR
- a proprietary servlet engine in knopflerfish
- tomcat in eclipse
- ServiceTango
- distributing Geronimo in several osgi bundles: http://www.mail-archive.com/dev@geronimo.apache.org/msg10923 .html

The registration occurs through an httpService or an extension, but mostly httpService. In effect it's almost the same.

short explanation: http://www.eclipsezone.com/eclipse/forums/m91979648.html.

4.) your idea (within OHF) of implementing ONE CENTRAL osgi container within geronimo to manage osgi bundles (packaged as GBeans), which can communicate with elements of other containers (while simon kaegis approach is ONE osgi framework for each web app). this is one container beside an ejb, servlet and spring container.

what do you think about these approaches?

regards
martin
Re: equinox on the server-side [message #56705 is a reply to message #56623] Fri, 13 January 2006 00:29 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: eishays.us.ibm.com

Lets be a bit more abstract.
The options I see are:

1. RCP contains Web container: Run a web container from within an RCP
and redirect events (e.g. SOAP) to resource bundles.
2. Application server contains OSGi Bundles: App Server (e.g. Geronimo)
contains OSGi bundles and make them accessible to internal components.
In Geronimo case it might be servlets, EJBs, Spring etc. It might do it
in two ways:
2.1. The application server contains the OSGi environment (e.g. a GBean
will contain am OSGi runtime and this will contain lots of bundles)
2.2 OSGi is the base of the application server, i.e. the application
server is an RCP (with no UI of course). In the Geronimo case it might
be that each GBean is an OSGi bundle.

Option (1) is good if you ride the Web Services / SOA hipe or want to do
something in small scale. Not sure its a good thing if you like to have
your bundles embedded in a rich server environment. Still, its the
easiest one to do now, and lots of time you do want to do things in
small scale.
I don't think the eclipse organization is going to stimulate any real
core server activity. The C in RCP stands for client and I don't see any
signs it will change.

Option (2) will enable your bundles to interact with a rich server
environment, will be more scalable, but it doesn't have no support now,
though there are good signs (see the discussions I and others started in
the Geronimo list).
(2.1) is depending on the OSGi developer to figure out how to do. It's
probably easier to implement with the great improvements in Equinox, and
the solution can be ported to other App servers.
(2.2) should come from the App server developers, since you don't want
to have your own "special hacked" server. I think that is the best
option and that it will eventually happen. The problem is that the
various App server teams will not necessarily choose the same OSGi
framework (see Apache Felix).

Do you this its the right categorization of options?

Eishay


Martin Schikowski wrote:
> Eishay,
>
> I still try to find out the main differences:
>
>>> can somebody give me advises for the usage of one
>> of the following 3 approaches of server-side equinox:
>>> 1.) org.eclipse.help.appserver + org.eclipse.tomcat
>> (for Eclipse Help Center)
>>> - the eclipse built-in webserver
>>> - why has IBM launched a second osgi-bundled
>> web-server (see 3.). Is the new IBM solution more
>> flexible? and if, in which ways?
>
> help webapps are registered as extension to the ext.-point org.eclipse.help.base.webapp.
>
> it can be used for own implementations through the WebappManager: http://www.eclipsezone.com/eclipse/forums/m91945034.html
>
> maybe it will soon be replaced by the IBM impl, but I don't know.
>
>>> 2.) org.eclipse.equinox.servlet.bridge,
>> org.eclipse.equinox.servlet.ext and
>> org.eclipse.equinox.servlet.httpservice (Simon Kaegi,
>> Cognos):
>>> - this solution I have confronted with so far
>>> - possibility to integrate into tomcat, to build
>> up a component oriented web application -> Is there
>> an alternative solution?
>
> my main investigations are targeted to it:
> seem to be suitable for a productive usage.
>
> Without changin a running web app server you can embed an osgi framework within a webapplication. All requests are directed to servlet-bundles through ONE central BRIDGE servlet.
>
> An alternative was Vasily Kuznetsov with his solution ( http://dev.eclipse.org/mhonarc/lists/equinox-dev/msg00693.ht ml). But he wants to adopt Simon Kaegis solution.
>
>>> 3.) org.eclipse.equinox.http (IBM):
>>> - so far I haven`t analyzed
>>> - seems to be something like 1.)
>>> - has it's own servlet engine
>>> - has NO Ext.-Points
>>> - is there a documentation for usage?
> it is definitely a httpService with an integrated proprietary servlet engine.
>
> this concept, that an app server is bundled in one or more jars is like:
> - Jetty in OSCAR
> - a proprietary servlet engine in knopflerfish
> - tomcat in eclipse
> - ServiceTango
> - distributing Geronimo in several osgi bundles: http://www.mail-archive.com/dev@geronimo.apache.org/msg10923 .html
>
> The registration occurs through an httpService or an extension, but mostly httpService. In effect it's almost the same.
>
> short explanation: http://www.eclipsezone.com/eclipse/forums/m91979648.html.
>
> 4.) your idea (within OHF) of implementing ONE CENTRAL osgi container within geronimo to manage osgi bundles (packaged as GBeans), which can communicate with elements of other containers (while simon kaegis approach is ONE osgi framework for each web app). this is one container beside an ejb, servlet and spring container.
>
> what do you think about these approaches?
>
> regards
> martin
Re: equinox on the server-side [message #56731 is a reply to message #56705] Fri, 13 January 2006 05:51 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: skaegi.sympatico.ca

Hi Eishay,

I liked your analysis.

I'd like to elaborate on point (2.1) slightly to emphasize the notion that
the embedding can be done without the appserver being OSGi aware. The
example you give is of a GBean that contains a runtime, but equally valid is
a web-app or potentially an EJB (or frankly any Java code willing to launch
the runtime).
[Question: Do you know if any work has been done to create an equinox GBean
embeddable in 1.0?]

I think a lot of people are looking forward to (2.2) happening, but for now
we have (1).
--
You're right in terms of it being a question of scale however in my mind I
don't categorize (1) and (2.2) separately. To me an RCP with a series of
services like the Http Service is really a small App Server of sorts. I
categorize things as "embedded" vs. "server base" primarily because of the
requirements they place on the runtime but that's just me personally.

-Simon



"Eishay Smith" <eishays@us.ibm.com> wrote in message
news:43C6F44E.6060706@us.ibm.com...
> Lets be a bit more abstract.
> The options I see are:
>
> 1. RCP contains Web container: Run a web container from within an RCP
> and redirect events (e.g. SOAP) to resource bundles.
> 2. Application server contains OSGi Bundles: App Server (e.g. Geronimo)
> contains OSGi bundles and make them accessible to internal components.
> In Geronimo case it might be servlets, EJBs, Spring etc. It might do it
> in two ways:
> 2.1. The application server contains the OSGi environment (e.g. a GBean
> will contain am OSGi runtime and this will contain lots of bundles)
> 2.2 OSGi is the base of the application server, i.e. the application
> server is an RCP (with no UI of course). In the Geronimo case it might
> be that each GBean is an OSGi bundle.
>
> Option (1) is good if you ride the Web Services / SOA hipe or want to do
> something in small scale. Not sure its a good thing if you like to have
> your bundles embedded in a rich server environment. Still, its the
> easiest one to do now, and lots of time you do want to do things in
> small scale.
> I don't think the eclipse organization is going to stimulate any real
> core server activity. The C in RCP stands for client and I don't see any
> signs it will change.
>
> Option (2) will enable your bundles to interact with a rich server
> environment, will be more scalable, but it doesn't have no support now,
> though there are good signs (see the discussions I and others started in
> the Geronimo list).
> (2.1) is depending on the OSGi developer to figure out how to do. It's
> probably easier to implement with the great improvements in Equinox, and
> the solution can be ported to other App servers.
> (2.2) should come from the App server developers, since you don't want
> to have your own "special hacked" server. I think that is the best
> option and that it will eventually happen. The problem is that the
> various App server teams will not necessarily choose the same OSGi
> framework (see Apache Felix).
>
> Do you this its the right categorization of options?
>
> Eishay
>
>
> Martin Schikowski wrote:
> > Eishay,
> >
> > I still try to find out the main differences:
> >
> >>> can somebody give me advises for the usage of one
> >> of the following 3 approaches of server-side equinox:
> >>> 1.) org.eclipse.help.appserver + org.eclipse.tomcat
> >> (for Eclipse Help Center)
> >>> - the eclipse built-in webserver
> >>> - why has IBM launched a second osgi-bundled
> >> web-server (see 3.). Is the new IBM solution more
> >> flexible? and if, in which ways?
> >
> > help webapps are registered as extension to the ext.-point
org.eclipse.help.base.webapp.
> >
> > it can be used for own implementations through the WebappManager:
http://www.eclipsezone.com/eclipse/forums/m91945034.html
> >
> > maybe it will soon be replaced by the IBM impl, but I don't know.
> >
> >>> 2.) org.eclipse.equinox.servlet.bridge,
> >> org.eclipse.equinox.servlet.ext and
> >> org.eclipse.equinox.servlet.httpservice (Simon Kaegi,
> >> Cognos):
> >>> - this solution I have confronted with so far
> >>> - possibility to integrate into tomcat, to build
> >> up a component oriented web application -> Is there
> >> an alternative solution?
> >
> > my main investigations are targeted to it:
> > seem to be suitable for a productive usage.
> >
> > Without changin a running web app server you can embed an osgi framework
within a webapplication. All requests are directed to servlet-bundles
through ONE central BRIDGE servlet.
> >
> > An alternative was Vasily Kuznetsov with his solution
( http://dev.eclipse.org/mhonarc/lists/equinox-dev/msg00693.ht ml). But he
wants to adopt Simon Kaegis solution.
> >
> >>> 3.) org.eclipse.equinox.http (IBM):
> >>> - so far I haven`t analyzed
> >>> - seems to be something like 1.)
> >>> - has it's own servlet engine
> >>> - has NO Ext.-Points
> >>> - is there a documentation for usage?
> > it is definitely a httpService with an integrated proprietary servlet
engine.
> >
> > this concept, that an app server is bundled in one or more jars is like:
> > - Jetty in OSCAR
> > - a proprietary servlet engine in knopflerfish
> > - tomcat in eclipse
> > - ServiceTango
> > - distributing Geronimo in several osgi bundles:
http://www.mail-archive.com/dev@geronimo.apache.org/msg10923 .html
> >
> > The registration occurs through an httpService or an extension, but
mostly httpService. In effect it's almost the same.
> >
> > short explanation:
http://www.eclipsezone.com/eclipse/forums/m91979648.html.
> >
> > 4.) your idea (within OHF) of implementing ONE CENTRAL osgi container
within geronimo to manage osgi bundles (packaged as GBeans), which can
communicate with elements of other containers (while simon kaegis approach
is ONE osgi framework for each web app). this is one container beside an
ejb, servlet and spring container.
> >
> > what do you think about these approaches?
> >
> > regards
> > martin
Re: equinox on the server-side [message #56755 is a reply to message #56623] Fri, 13 January 2006 06:33 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: skaegi.sympatico.ca

Hi Martin,

It looks like you've done a good job of answering your own questions.
All the links you've added are absolutely great!

I can talk a bit about trade-offs for the first 3.

The help.webapp approach let's you deploy a complete "webapp" as described
in your "web.xml" deployement descriptor. I really like this approach as
the API is tied to the familiar servlet API. It's a little less flexibile
than the HttpService in that it doesn't directly support the adding and
removing of resources. As I see it a bigger issue is that restricts your
deployment choices in that you can only use this approach in a
(potentially-headless) RCP.

The servlet-bridge and equinox.http really offer the same functionality
through the OSGi Http Service. Although the API is quite small it takes
some time to get used to registering and unregisterin servlets and
resources instead of doing so by web.xml. That being said, the approach
offers you a little more choice on deployment as the servlet-bridge lets
you deploy into an appserver directly.

Also, you had a bullet about the lack of extensions for equinox.http...
org.equinox.servlet.ext adds extension points for "any" http service so
you can use it with org.eclipse.equinox.http if you like.

--

-Simon


"Martin Schikowski" <schikowski@gmx.de> wrote in message
news:33475632.1137073317837.JavaMail.root@cp1.javalobby.org...
> Eishay,
>
> I still try to find out the main differences:
>
> > > can somebody give me advises for the usage of one
> > of the following 3 approaches of server-side equinox:
> > >
> > > 1.) org.eclipse.help.appserver + org.eclipse.tomcat
> > (for Eclipse Help Center)
> > > - the eclipse built-in webserver
> > > - why has IBM launched a second osgi-bundled
> > web-server (see 3.). Is the new IBM solution more
> > flexible? and if, in which ways?
>
> help webapps are registered as extension to the ext.-point
org.eclipse.help.base.webapp.
>
> it can be used for own implementations through the WebappManager:
http://www.eclipsezone.com/eclipse/forums/m91945034.html
>
> maybe it will soon be replaced by the IBM impl, but I don't know.
>
> > >
> > > 2.) org.eclipse.equinox.servlet.bridge,
> > org.eclipse.equinox.servlet.ext and
> > org.eclipse.equinox.servlet.httpservice (Simon Kaegi,
> > Cognos):
> > > - this solution I have confronted with so far
> > > - possibility to integrate into tomcat, to build
> > up a component oriented web application -> Is there
> > an alternative solution?
>
> my main investigations are targeted to it:
> seem to be suitable for a productive usage.
>
> Without changin a running web app server you can embed an osgi framework
within a webapplication. All requests are directed to servlet-bundles through
ONE central BRIDGE servlet.
>
> An alternative was Vasily Kuznetsov with his solution
( http://dev.eclipse.org/mhonarc/lists/equinox-dev/msg00693.ht ml). But he wants
to adopt Simon Kaegis solution.
>
> > >
> > > 3.) org.eclipse.equinox.http (IBM):
> > > - so far I haven`t analyzed
> > > - seems to be something like 1.)
> > > - has it's own servlet engine
> > > - has NO Ext.-Points
> > > - is there a documentation for usage?
> it is definitely a httpService with an integrated proprietary servlet engine.
>
> this concept, that an app server is bundled in one or more jars is like:
> - Jetty in OSCAR
> - a proprietary servlet engine in knopflerfish
> - tomcat in eclipse
> - ServiceTango
> - distributing Geronimo in several osgi bundles:
http://www.mail-archive.com/dev@geronimo.apache.org/msg10923 .html
>
> The registration occurs through an httpService or an extension, but mostly
httpService. In effect it's almost the same.
>
> short explanation: http://www.eclipsezone.com/eclipse/forums/m91979648.html.
>
> 4.) your idea (within OHF) of implementing ONE CENTRAL osgi container within
geronimo to manage osgi bundles (packaged as GBeans), which can communicate
with elements of other containers (while simon kaegis approach is ONE osgi
framework for each web app). this is one container beside an ejb, servlet and
spring container.
>
> what do you think about these approaches?
>
> regards
> martin
Re: equinox on the server-side [message #56810 is a reply to message #56731] Sat, 14 January 2006 00:56 Go to previous message
Eclipse UserFriend
Originally posted by: eishays.us.ibm.com

Hi Simon, Martin,

The information you share here is very valuable, I'm sure going to use it.

Just to clarify from my last email, I don't see option (1) and (2) as
competitors. One is not better then the others, and a best practice for
both should evolve.
In OHF, I am going to use both (1) and (2) since there is a place for
both in our target industry.
Option (1) is most suitable for tiny practices that want to expose
access points to data, has no IT skills and outdated hardware.
Option (2) is for the larger clinics that provide data and services to
satellites so forth.

Out of (2.1) and (2.2), the latter is better and the first is more
realistic for the short term.

Question: Do you know if any work has been done to create an equinox GBean
embeddable in 1.0?
Maybe these urls will give you a notion about what's up there:
* http://www.nabble.com/OSGi-Container-in-Geronimo-t434559.htm l#a1190579
* http://www.mail-archive.com/dev@geronimo.apache.org/msg05541 .html
(ClassLoader Architecture)
* http://www.mail-archive.com/dev@geronimo.apache.org/msg11305 .html
* http://mail-archive.objectweb.org/architecture/2005-10/msg00 004.html
* http://mail-archive.objectweb.org/architecture/2005-10/msg00 010.html

Eishay
Previous Topic:Recommended Eclipse version for writing Equinox bundles?
Next Topic:getting started with eclipse server-side
Goto Forum:
  


Current Time: Thu Apr 25 12:47:33 GMT 2024

Powered by FUDForum. Page generated in 0.03083 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top