OK, time for me to apologize.

In the environment where I have a jetty.xml to add static content, I indeed
have the setting in the cfg file.

So, I decided to read the source. Here's the process I see, which
elaborates on your email.


   1. 
org.ops4j.pax.web.service.jetty.internal.ServerControllerImpl.Stopped#start
   creates the jetty server, passing in several config items from config admin.
   2. If you supply a config.file, it might be a file, or it might be a
   directory, presumably containing multiple jetty XML files. You can also
   supply a config.url, which presumably points to a single XML file. However,
   if it's a dir and not a file, it's rejected as invalid. The URL takes
   precedence.
   3. Config admin wins over a classpath resource
   in org.ops4j.pax.web.service.jetty.internal.JettyServerImpl#start.
   4. The start method obtains the contents of the file, turns it into a
   resource, and passes it to Jetty configuration.
   5. The start method passes another set of config admin parameters to
   org.ops4j.pax.web.service.jetty.internal.JettyServer#configureContext.
   6. 
org.ops4j.pax.web.service.jetty.internal.ServerControllerImpl.Stopped#start
   looks to see if there is a 'master connector' as a result of processing
   whatever configuration came through above. If there isn't one, it creates
   one programmatically.

So, the net of all of this is that there is no jetty.xml file in the
universe that represents the 'default configuration', and that a jetty.xml
that defines no connectors on the port number from config admin is purely a
supplement to the automatic configuration.

I'll see if I can some up with any way to reflect any of this into the doc
as a proposed change.


On Wed, Mar 30, 2016 at 2:50 PM, Achim Nierbeck <[email protected]>
wrote:

> Hi Benson,
>
> please take a look at the pax-web documentation [1].
> The rule of thumb for Pax-Web is:
>
> configuration given via configuration admin service overrules anything
> configured via jetty.xml
>
> jetty.xml can be used for additional configuration which isn't
> configurable via properties / configuration admin service.
>
> Handlers are a special case, you can add those either via the jetty.xml or
> via OSGi services.
>
> regards, Achim
>
> [1] -
> http://ops4j.github.io/pax/web/4.2.x/index.html#_advanced_jetty_configuration
>
>
> 2016-03-30 18:26 GMT+02:00 Benson Margulies <[email protected]>:
>
>> JB, something happens even if you do _not_ add that line to the pax web
>> config file. I've added additional static content by just dropping in a
>> jetty.xml file that adds a connector. Is the difference that adding the
>> web.cfg line causes your file to completely replace the default, instead of
>> supplementing it?
>>
>> I'm on this today because we're trying to establish the answer to the
>> question of what idleTimeout is actually being used.
>>
>>
>> On Wed, Mar 30, 2016 at 12:10 PM, Jean-Baptiste Onofré <[email protected]>
>> wrote:
>>
>>> Correct.
>>>
>>> You can add in etc/org.ops4j.pax.web.cfg:
>>>
>>> org.ops4j.pax.web.config.file=${karaf.base}/etc/jetty.xml
>>>
>>> to provision your own jetty.xml.
>>>
>>> Regards
>>> JB
>>>
>>>
>>> On 03/30/2016 06:07 PM, Benson Margulies wrote:
>>>
>>>> Am I correct that none of the jetty.xml files in the Karaf source tree
>>>> are live in the standard package, and that the config falls back to
>>>> pax-web?
>>>>
>>>>
>>> --
>>> Jean-Baptiste Onofré
>>> [email protected]
>>> http://blog.nanthrax.net
>>> Talend - http://www.talend.com
>>>
>>
>>
>
>
> --
>
> Apache Member
> Apache Karaf <http://karaf.apache.org/> Committer & PMC
> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer &
> Project Lead
> blog <http://notizblog.nierbeck.de/>
> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS>
>
> Software Architect / Project Manager / Scrum Master
>
>

Reply via email to