[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [equinox-dev] Using org.eclipse.equinox.http inside of an RCPapplication

Hi Kirby,

Go ahead use the org.eclipse.equinox.http.registry ;)
The server-side work is no longer "experimental", and graduated after
3.2 was released. The 3.3 bundles are 100% compatible and tested with
Eclipse 3.2.

Also, I'd definitely suggest using the graduated bundles as they're
supported and actively being worked on. For formal builds you can use
the latest 3.3 integration build.

--
For the servlet api bundles...
o.e.e.servlet.api is a bundling of the servlet 2.3 api
If you need servlet 2.4 javax.servlet [v2_4] is available from orbit.
I'd suggest using the orbit bundles as that seems to be the direction
things are going for 3rd party bundles in 3.3.

--
I have manually edited the config.ini in the past however for
integration in an RCP I would tend to use an event to trigger the
startup of the http server. Currently you start the bundle to launch the
HttpService, but it might be a good thing to have a factory style method
to start it. Hmm...

HTH
-Simon


> -----Original Message-----
> From: equinox-dev-bounces@xxxxxxxxxxx 
> [mailto:equinox-dev-bounces@xxxxxxxxxxx] On Behalf Of Kirby Bohling
> Sent: Wednesday, November 22, 2006 11:07 AM
> To: equinox-dev@xxxxxxxxxxx
> Subject: [equinox-dev] Using org.eclipse.equinox.http inside 
> of an RCPapplication
> 
> All,
> 
>    I'd like to host a servlet inside of an RCP application.  
> I started looking into the Equinox implementations rather 
> then wrapping the embedded Tomcat or Jetty jars myself.  (I 
> wouldn't mind just using the ones used by the help, but it 
> seems odd that the org.eclipse.tomcat plug-in requires the 
> help plugins, and I'm not sure how to add Servlets to it).
> 
> I see that:
> 
> org.eclipse.equinox.http
> org.eclipse.equinox.servlet.api
> 
> Ship inside of the Equinox releases 3.2.0 and 3.2.1.  The 
> QuickStart guide says to add: 
> "org.eclipse.equinox.http.registry" and then use the 
> extension points.  The releases state that the http.registry 
> plug-in is still in the incubator, which means that "while it 
> could be quite complete, it should be considered experimental".
> 
> I was curious how "experimental" the registry is, and if 
> there was a way to use the org.eclipse.equinox.http bundle 
> without doing something nearly identical to the registry 
> bundle.  It sure looks like I have to sub-class HTTP and 
> HTTPListener and allocate those.  Then I can call 
> "HTTPListener.getService()".  At that point I can get an 
> "HttpService" 
> object with which I can register and unregister servlets.  
> Short of loading a fragment into the org.eclipse.equinox.http 
> bundle and exposing the constructor thru a static method, I 
> don't see any alternatives for directly allocating an HttpService.
> 
> It appears I should be able to use the services API to get an 
> HttpService object, but at that point, I'd pretty much just 
> be writing "org.eclipse.equinox.http.registry" myself.  So I 
> think I'd like to use the 
> "org.eclipse.equinox.http.registry", as my other alternatives 
> aren't very nice.
> 
> Another issue is that I can't find the tag for the 3.2.0 or 
> 3.2.1 releases, and the source isn't included in the SDK 
> download.  For the 3.2.1 release, the qualifier is 
> "v20060510", but the only tags in the CVS Server 
> :pserver:anonymouse@xxxxxxxxxxxxxxx:/cvsroot/eclipse are:
> v20061031
> v20061012
> v20061002
> 
> Am I looking in the wrong place?  (My guess is that I'm 
> looking for the "serverside" CVS report, the initial commit 
> message of the files say that they are adding the projects to 
> the "main depot")
> 
> I've gotten everything to work just fine using the HEAD of 
> "org.eclipse.equinox.http.registry", but I generally like to 
> use a tagged and released version.
> 
> Also the documentation here:
> http://www.eclipse.org/equinox/server/http_in_equinox.php
> 
> Says to use "javax.servlet" from Orbit, but I instead used 
> "org.eclipse.equinox.servlet.api" that was released with the 
> 3.2.1 Equinox.  
> I'm not sure why I'd want to use the one from the Orbit 
> project.  Curious if I would create issues for myself.
> 
> Is there anyway to add a bundle to a generated config file so 
> it is auto started?  I exported my RCP application grabbed 
> the config.ini file and added two entries to startup http and 
> http.registry.  Otherwise the Servlets aren't started up.  
> It'd be nice if there were some way to include that in the 
> product by directly editing the product file or, using a 
> mechanism similar to the the UI for launching Run... -> OSGi 
> Framework Applications -> Plug-ins Tab.
> 
> Finally, Eclipse RCP and Equinox have been great to use in my 
> applications, thanks for all of the great infrastructure 
> you've provided.
> 
>     Thanks in advance for any help on my questions,
>           Kirby
> 
> _________________________________________________________________
> View Athlete's Collections with Live Search
> http://sportmaps.live.com/index.html?source=hmemailtaglinenov0
> 6&FORM=MGAC01
> 
> _______________________________________________
> equinox-dev mailing list
> equinox-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/equinox-dev
> 
>
 
     This message may contain privileged and/or confidential information.  If you have received this e-mail in error or are not the intended recipient, you may not use, copy, disseminate or distribute it; do not open any attachments, delete it immediately from your system and notify the sender promptly by e-mail that you have done so.  Thank you.