You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by ayyagarikiran <ay...@gmail.com> on 2009/06/25 09:41:44 UTC

[ApacheDS] integrating jetty

Hello guys,

       I would like to start the work on integrating jetty in ADS (DIRSERVER-1262).

       As Emmanuel mentioned in the comments, the main purpose is

       "it's about adding Jetty into ADS to accept Http request without having to depend on another web server.
        This is quite interesting if you want to expose some administrative information using some kind of web app,
        or even better, implement a DSML gateway inside the server."

       IMO it is better to keep this feature as detachable as possible from the ADS.(jetty will be started only if the
       required dependencies are present during startup and required config is set)

       Another question, is jetty the only option to embed? as Emmanuel pointed out on IRC, can we use tomcat or asyncweb
       instead (or support all three!)

       Will there be a usecase where a user embedding ADS also requires to embed jetty?

       thoughts?

       P.S :- will post initial configuration thoughts in another mail

Kiran Ayyagari


Re: [ApacheDS] integrating jetty

Posted by Emmanuel Lecharny <el...@apache.org>.
Jesse McConnell wrote:
>> P.S :- at work, am writing a REST based service with ADS as backend, which
>> will be
>>           served through jetty, incase anyone cares to know ;)
>>
>> Kiran Ayyagari
>>
>>     
>
> I care! :)
>
> jesse
>
>   
What is important at this point is to know if Jetty will be integrated 
as a LdapServer component, or as a HttpServer beside all the other servers.
Atm, what we have when we consider the configuration is something like :

  <!--
  +============================================================+
  | NtpServer configuration                                   
  +============================================================+
  -->
  <!--ntpServer>
    <transports>
      <tcpTransport port="60123"/>
      <udpTransport port="60123" nbThreads="1"/>
    </transports>
  </ntpServer-->

  <!--
  +============================================================+
  | DnsServer configuration                                   
  +============================================================+
  -->
  <!--  missing atou=users,dc=example,dc=com
  <dnsServer>
    <transports>
      <tcpTransport port="8053"/>
      <udpTransport port="8053"/>
    </transports>
    <directoryService>#directoryService</directoryService>
  </dnsServer>
-->

  <!--
  +============================================================+
  | LDAP Service configuration                                
  +============================================================+
  -->
 
  <ldapServer id="ldapServer"
            allowAnonymousAccess="false"
            saslHost="ldap.example.com"
            saslPrincipal="ldap/ldap.example.com@EXAMPLE.COM"
            searchBaseDn="ou=users,ou=system"
            maxTimeLimit="15000"
            maxSizeLimit="1000">
    <transports>
      <tcpTransport address="*" port="10389" nbThreads="8" backLog="50" 
enableSSL="false"/>
      <tcpTransport address="localhost" port="10686" enableSSL="true"/>
    </transports>
    ...

We can define the HttpServer as a new element beside the other ones. If 
we want to start it, using Spring, it will be just a matter of adding a 
new bean and voilà. Now, the communication between Jetty and the 
LdapServer will be done through a war injected into Jetty. In some way, 
both servers will run in the same JVM, so we will be able to communicate 
from jetty's application to the LdapServer (more specifically, to the 
DirectoryService) without having to go through the LdapProtocol (using 
the DS API). All the glue is brought by Spring.

Another possibility would be to embed Jetty into the LdapServer 
instance. I'm not sure that's a good idea, because we may want to have 
an HTTP access to communicate with a Kerberos server too (SPNEGO).


-- 
--
cordialement, regards,
Emmanuel Lécharny
www.iktek.com
directory.apache.org



Re: [ApacheDS] integrating jetty

Posted by Jesse McConnell <je...@gmail.com>.
> P.S :- at work, am writing a REST based service with ADS as backend, which
> will be
>           served through jetty, incase anyone cares to know ;)
>
> Kiran Ayyagari
>

I care! :)

jesse

Re: [ApacheDS] integrating jetty

Posted by Kiran Ayyagari <ay...@gmail.com>.
Hi Jeff,

On Thu, Jun 25, 2009 at 2:00 PM, Jeff MAURY <je...@gmail.com> wrote:

>
> I am starting works on the DSML gateway. I discussed with Emmanuel, and one
> of the preliminary task was to embed Jetty. Given the growing popularity of
> Jetty and its move to the Eclipse foundation, I think this seems reasonable
> to target Jetty.
> Please let me know if you work on this issue so that I can reuse your work.
>

Have already done some work a while back, but I have to restart the work as
a lot of config related improvements happened in the core recently. Will
update you on the ML once I get that done.

P.S :- at work, am writing a REST based service with ADS as backend, which
will be
          served through jetty, incase anyone cares to know ;)

Kiran Ayyagari

Re: [ApacheDS] integrating jetty

Posted by Kiran Ayyagari <ay...@gmail.com>.
On Thu, Jun 25, 2009 at 7:50 PM, Jesse McConnell
<je...@gmail.com>wrote:

> well, jetty itself can be embedded in a few lines of code and it
> designed around this sort of component oriented purpose...which is why
> it is the default web server and servlet engine inside of most osgi
> containers
>

> I would recommend working off of the new jetty7 artifacts under
> org/eclipse/jetty in the maven central repository as well...we just
> passed incubation at the eclipse foundation and will be moving towards
> getting jetty 7 released pretty soon....7.0.0.M3 is the latest release
> there.


> I try and keep up on this list so if you have questions about it I'll
> try and chime in.
>

thanks Jesse for the info :)

Kiran Ayyagari

Re: [ApacheDS] integrating jetty

Posted by Jesse McConnell <je...@gmail.com>.
well, jetty itself can be embedded in a few lines of code and it
designed around this sort of component oriented purpose...which is why
it is the default web server and servlet engine inside of most osgi
containers

I would recommend working off of the new jetty7 artifacts under
org/eclipse/jetty in the maven central repository as well...we just
passed incubation at the eclipse foundation and will be moving towards
getting jetty 7 released pretty soon....7.0.0.M3 is the latest release
there.

I try and keep up on this list so if you have questions about it I'll
try and chime in.

cheers,
jesse

--
jesse mcconnell
jesse.mcconnell@gmail.com



On Thu, Jun 25, 2009 at 03:30, Jeff MAURY<je...@gmail.com> wrote:
>
>
> On Thu, Jun 25, 2009 at 9:41 AM, ayyagarikiran <ay...@gmail.com>
> wrote:
>>
>> Hello guys,
>>
>>      I would like to start the work on integrating jetty in ADS
>> (DIRSERVER-1262).
>>
>>      As Emmanuel mentioned in the comments, the main purpose is
>>
>>      "it's about adding Jetty into ADS to accept Http request without
>> having to depend on another web server.
>>       This is quite interesting if you want to expose some administrative
>> information using some kind of web app,
>>       or even better, implement a DSML gateway inside the server."
>>
>>      IMO it is better to keep this feature as detachable as possible from
>> the ADS.(jetty will be started only if the
>>      required dependencies are present during startup and required config
>> is set)
>>
>>      Another question, is jetty the only option to embed? as Emmanuel
>> pointed out on IRC, can we use tomcat or asyncweb
>>      instead (or support all three!)
>>
>>      Will there be a usecase where a user embedding ADS also requires to
>> embed jetty?
>
> I am starting works on the DSML gateway. I discussed with Emmanuel, and one
> of the preliminary task was to embed Jetty. Given the growing popularity of
> Jetty and its move to the Eclipse foundation, I think this seems reasonable
> to target Jetty.
> Please let me know if you work on this issue so that I can reuse your work.
>
> Regards
> Jeff
>>
>>
>>      thoughts?
>>
>>      P.S :- will post initial configuration thoughts in another mail
>>
>> Kiran Ayyagari
>>
>
>
>
> --
> La mélancolie c’est communiste
> Tout le monde y a droit de temps en temps
> La mélancolie n’est pas capitaliste
> C’est même gratuit pour les perdants
> La mélancolie c’est pacifiste
> On ne lui rentre jamais dedans
> La mélancolie oh tu sais ça existe
> Elle se prend même avec des gants
> La mélancolie c’est pour les syndicalistes
> Il faut juste sa carte de permanent
>
> Miossec (2006)
>
> http://www.jeffmaury.com
> http://riadiscuss.jeffmaury.com
> http://www.lastfm.fr/listen/user/jeffmaury/personal
>

Re: [ApacheDS] integrating jetty

Posted by Jeff MAURY <je...@gmail.com>.
On Thu, Jun 25, 2009 at 9:41 AM, ayyagarikiran <ay...@gmail.com>wrote:

>
> Hello guys,
>
>      I would like to start the work on integrating jetty in ADS
> (DIRSERVER-1262).
>
>      As Emmanuel mentioned in the comments, the main purpose is
>
>      "it's about adding Jetty into ADS to accept Http request without
> having to depend on another web server.
>       This is quite interesting if you want to expose some administrative
> information using some kind of web app,
>       or even better, implement a DSML gateway inside the server."
>
>      IMO it is better to keep this feature as detachable as possible from
> the ADS.(jetty will be started only if the
>      required dependencies are present during startup and required config
> is set)
>
>      Another question, is jetty the only option to embed? as Emmanuel
> pointed out on IRC, can we use tomcat or asyncweb
>      instead (or support all three!)
>
>      Will there be a usecase where a user embedding ADS also requires to
> embed jetty?

I am starting works on the DSML gateway. I discussed with Emmanuel, and one
of the preliminary task was to embed Jetty. Given the growing popularity of
Jetty and its move to the Eclipse foundation, I think this seems reasonable
to target Jetty.
Please let me know if you work on this issue so that I can reuse your work.

Regards
Jeff

>
>
>      thoughts?
>
>      P.S :- will post initial configuration thoughts in another mail
>
> Kiran Ayyagari
>
>


-- 
La mélancolie c’est communiste
Tout le monde y a droit de temps en temps
La mélancolie n’est pas capitaliste
C’est même gratuit pour les perdants
La mélancolie c’est pacifiste
On ne lui rentre jamais dedans
La mélancolie oh tu sais ça existe
Elle se prend même avec des gants
La mélancolie c’est pour les syndicalistes
Il faut juste sa carte de permanent

Miossec (2006)

http://www.jeffmaury.com
http://riadiscuss.jeffmaury.com
http://www.lastfm.fr/listen/user/jeffmaury/personal