Hi

just some tired eyes on my side ;) But yeah this is better now :D
Or my inmemory markdown compiler is already turned off :D

any way ... sounds good.

regards, Achim



2017-05-23 21:36 GMT+02:00 Grzegorz Grzybek <[email protected]>:

> Sorry for formatting - it's supposed to be markdown - I should stick to
> text/plain...
>
> The point is - always ensure that:
>  - "default servlet" is registered (so it can sendError(404) which can
> lead to invocation of error servlet)
>  - servlet controller starts the context (jetty, undertow, tomcat) if
> servlet/filter/welcome-page is added and it's not web application
>
> btw - do you know how to start https://github.com/ops4j/org.
> ops4j.pax.web/commits/pax-web-6.0.x ? May I ask for account on this
> instance?
>
> regards
> Grzegorz
>
>
> 2017-05-23 21:24 GMT+02:00 'Achim Nierbeck' via OPS4J <
> [email protected]>:
>
>> Hi,
>>
>> hmm ... it's already a bit late here.
>> So I might be missing the crucial point (formating is also a bit strange
>> :) )
>> but it looks ok from here :)
>>
>> regards, Achim
>>
>>
>> 2017-05-23 21:15 GMT+02:00 Grzegorz Grzybek <[email protected]>:
>>
>>> Thanks
>>>
>>> So the fix is [here](https://github.com/ops4
>>> j/org.ops4j.pax.web/commit/5d5afb4d8da8e6528bc0c22c89c2488ba51df660)
>>>
>>> And here's the description:
>>> * HttpServiceStarted **always** does:
>>> ```java
>>> if (model.getFilter/Servlet/WelcomePage() != null &&
>>> !isWebAppWebContainerContext(contextModel)) {
>>> ...
>>>     serverController.getContext(contextModel).start();
>>> ...
>>> }
>>> ```
>>> which means that if your registering _resources_ outside of
>>> RegisterWebAppVisitorXX, then pax-web doesn't know when you stop adding new
>>> servlets/filters/etc.
>>> * ResourceModel.java has `equals()` method than prevents adding it more
>>> than once
>>> *when creating a handler, undertow's Context ensures that there's
>>> Servlet created from ResourceModel - to simulate what both
>>> RegisterWebAppVisitorHC and RegisterWebAppVisitorWS do - which is
>>> `webContainer.registerResources("/", "default", httpContext);`
>>> * pax-web-undertow **always** destroys handler if ... it's started and
>>> you're adding new servlets/filters/welcome-pages - it'll be recreated on
>>> new request
>>> * when undertow.ServerControllerImpl creates
>>> `org.ops4j.pax.web.service.undertow.internal.Context` for the first
>>> time - it **always** adds there `ResourceModel` (*default servlet*) - even
>>> if pax-web-extender-war installs new web application, overriden
>>> `ResourceModel.equals()` will prevent double registration.
>>>
>>> regards
>>> Grzegorz Grzybek
>>>
>>>
>>> 2017-05-23 20:40 GMT+02:00 'Achim Nierbeck' via OPS4J <
>>> [email protected]>:
>>>
>>>> Hi Grzegorz,
>>>>
>>>> hmm taken into account that a std. container also does have a default
>>>> servlet available it sounds good.
>>>> Just need to make sure the current behaviour if no serviceable content
>>>> is deployed the container remain silent ;)
>>>>
>>>> regards, Achim
>>>>
>>>>
>>>> 2017-05-23 10:31 GMT+02:00 Grzegorz Grzybek <[email protected]>:
>>>>
>>>>> Hello
>>>>>
>>>>> I'm working on pax-web-undertow in particular, but I have general
>>>>> issue with error pages, welcome files and similar resources.
>>>>>
>>>>> There's for example https://ops4j1.jira.com/browse/PAXWEB-1032
>>>>> "Strange handling of welcome files".
>>>>>
>>>>> It's better with pax-web-extender-war, because the unit of deployment
>>>>> is analogous to web.xml file which, even if empty (no servlets, filters,
>>>>> error pages, ...) is handled effectively by RegisterWebAppVisitorWC or
>>>>> RegisterWebAppVisitorHS.
>>>>> The first one does: webContainer.registerResources("/", "default",
>>>>> httpContext);
>>>>> The second one does: httpService.registerResources("/", "",
>>>>> httpContext);
>>>>> Regardless of what is found in the deployment descriptor (or in
>>>>> org.ops4j.pax.web.extender.war.internal.model.WebApp)
>>>>>
>>>>> What do you think if we change the implementation, so "default"
>>>>> servlet is *always* registered?
>>>>>
>>>>> For example with Undertow, without default servlet there's no ...
>>>>> servlet to handle the request where no path matches, so no *servlet
>>>>> resource* can send 404 error, so error pages can't be invoked.
>>>>> There's simple low-level HttpHandler that simply sends 404 without
>>>>> involving error pages (and anything from servlet specs in general).
>>>>>
>>>>> I'll experiment with having *default servlet* by default.
>>>>>
>>>>> regards
>>>>> Grzegorz Grzybek
>>>>>
>>>>> --
>>>>> --
>>>>> ------------------
>>>>> OPS4J - http://www.ops4j.org - [email protected]
>>>>>
>>>>> ---
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "OPS4J" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to [email protected].
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>>
>>>> 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
>>>>
>>>> --
>>>> --
>>>> ------------------
>>>> OPS4J - http://www.ops4j.org - [email protected]
>>>>
>>>> ---
>>>> You received this message because you are subscribed to a topic in the
>>>> Google Groups "OPS4J" group.
>>>> To unsubscribe from this topic, visit https://groups.google.com/d/to
>>>> pic/ops4j/ZyvJGOf91-Q/unsubscribe.
>>>> To unsubscribe from this group and all its topics, send an email to
>>>> [email protected].
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>> --
>>> --
>>> ------------------
>>> OPS4J - http://www.ops4j.org - [email protected]
>>>
>>> ---
>>> You received this message because you are subscribed to the Google
>>> Groups "OPS4J" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>>
>> --
>>
>> 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
>>
>> --
>> --
>> ------------------
>> OPS4J - http://www.ops4j.org - [email protected]
>>
>> ---
>> You received this message because you are subscribed to a topic in the
>> Google Groups "OPS4J" group.
>> To unsubscribe from this topic, visit https://groups.google.com/d/to
>> pic/ops4j/ZyvJGOf91-Q/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to
>> [email protected].
>> For more options, visit https://groups.google.com/d/optout.
>>
>
> --
> --
> ------------------
> OPS4J - http://www.ops4j.org - [email protected]
>
> ---
> You received this message because you are subscribed to the Google Groups
> "OPS4J" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>



-- 

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

-- 
-- 
------------------
OPS4J - http://www.ops4j.org - [email protected]

--- 
You received this message because you are subscribed to the Google Groups 
"OPS4J" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to