Hi Bengt,

yeah you are somehow caught in between there.
For the std. Web/WAB cases the Resourceservlet is sufficient so to add another
method just for adding the mime types doesn't seem right (at least not
for the default one).
The probably best is as you already said, create a own HttpContext
Object, for the
std. stuff just delegate to the default one and implement your own
getMimeType() method.

regards, Achim

2012/9/15 Bengt Rodehav <[email protected]>:
> Thanks for you reply Achim,
>
> It sounds like the easiest would be to use a ResourceServlet. Looking at the
> code, it seems like the ResourceServlet checks its private member variable
> "mimeTypes" for mapping extensions to mime types (after it has asked the
> HttpContext. However, I can't see any way to actually add a mime type
> mapping to the ResourceServlet. Had the ResourceServlet had a method to just
> add mime type mappings this would be perfect but I can't see how this would
> be possible. So I think I need the combination of a ResourceServlet AND a
> custom HttpContext.
>
> I assume that I have to implement my own HttpContext since there is no
> method in the HttpContext to add mime type mappings either. What is the best
> practice here? Should I encapsulate the default HttpContext (and delegate
> calls to it) and implement my own version of the getMimeType() method?
>
> Thanks,
>
> /Bengt
>
>
> 2012/9/14 Achim Nierbeck <[email protected]>
>>
>> Hi Bengt,
>>
>> if I'm not totally wrong you probably just need to make sure you have
>> a httpContext which returns the right mimeType.
>> Or you have to use a customized ResourceServlet.
>> For Example take the ResourceServlet at [1] it questions the
>> httpContext for the mime types.
>> If you register your own HttpContext instead of the default one, you
>> should be safe here.
>> See the activator of the HS sample [2], a default httpContext is
>> registered.
>> If you use the whiteboard extender it's the same, take a look at [3].
>>
>> regards, Achim
>>
>> [1] -
>> https://github.com/ops4j/org.ops4j.pax.web/blob/master/pax-web-jetty/src/main/java/org/ops4j/pax/web/service/jetty/internal/ResourceServlet.java
>> [2] -
>> https://github.com/ops4j/org.ops4j.pax.web/blob/master/samples/helloworld-hs/src/main/java/org/ops4j/pax/web/samples/helloworld/hs/internal/Activator.java#L55
>> [3] -
>> https://github.com/ops4j/org.ops4j.pax.web/blob/master/samples/whiteboard/src/main/java/org/ops4j/pax/web/extender/samples/whiteboard/internal/Activator.java#L70
>>
>> 2012/9/14 Bengt Rodehav <[email protected]>:
>> > OK - thanks Achim,
>> >
>> > /Bengt
>> >
>> >
>> > 2012/9/14 Achim Nierbeck <[email protected]>
>> >>
>> >> Hi Bengt,
>> >>
>> >> I'd have to check, so maybe I have an answer to this the coming week :)
>> >>
>> >> regards, Achim
>> >>
>> >> 2012/9/13 Bengt Rodehav <[email protected]>:
>> >> > Hello Achim,
>> >> >
>> >> > I don't use a war. I use a web container and register my servlet
>> >> > programatically - so no web.xml. How can  this be done
>> >> > programatically?
>> >> >
>> >> > /Bengt
>> >> >
>> >> >
>> >> > 2012/9/12 Achim Nierbeck <[email protected]>
>> >> >>
>> >> >> Hi Bengt,
>> >> >>
>> >> >> I just stepped through the war itest [1] and the mime type for the
>> >> >> png
>> >> >> was returned successfully.
>> >> >> Besides that it should be straight forward to define a mime type
>> >> >> mapping in the web.xml. [2]
>> >> >> If you need it for the whiteboard extender this could be a bit more
>> >> >> tricky.
>> >> >>
>> >> >> regards, Achim
>> >> >>
>> >> >> [1] -
>> >> >>
>> >> >>
>> >> >> https://github.com/ops4j/org.ops4j.pax.web/blob/master/itest/src/test/java/org/ops4j/pax/web/itest/WarIntegrationTest.java#L112
>> >> >> [2] -
>> >> >>
>> >> >>
>> >> >> http://www.java2s.com/Code/JavaAPI/javax.servlet.http/webxmlmimemapping.htm
>> >> >>
>> >> >> 2012/9/12 Bengt Rodehav <[email protected]>:
>> >> >> > Hi Achim,
>> >> >> >
>> >> >> > No sweat - I understand that you're a busy man. Also, this is not
>> >> >> > critical
>> >> >> > for me after I resolved my real problem with the template.
>> >> >> >
>> >> >> > The only way I've tested is to have my Pax-Web serve static files
>> >> >> > contained
>> >> >> > in my bundle. I noticed that for my template files (with extension
>> >> >> > .ejs), I
>> >> >> > don't get a Content-Type at all in the response. This is easy to
>> >> >> > see
>> >> >> > in
>> >> >> > both
>> >> >> > Chrome and Firefox. Also, in Firefox console I get errors about
>> >> >> > invalid
>> >> >> > XML.
>> >> >> > Seems like the default handling on the browser side is to treat
>> >> >> > the
>> >> >> > files as
>> >> >> > XML if no Content-Type is specified (just my guess).
>> >> >> >
>> >> >> > Now that I think of it, I use the "steal" functionality provided
>> >> >> > by
>> >> >> > Javascript MVC. I think that "steal" uses AJAX request to load the
>> >> >> > templates. That could be the reason why XML seems to be assumed.
>> >> >> >
>> >> >> > Nonetheless, I think documenting how to map file extensions to
>> >> >> > Content-Type
>> >> >> > using Pax-Web would be a good thing (I'm hoping it is supported).
>> >> >> >
>> >> >> > /Bengt
>> >> >> >
>> >> >> >
>> >> >> > 2012/9/11 Achim Nierbeck <[email protected]>
>> >> >> >>
>> >> >> >> Hi Bengt,
>> >> >> >>
>> >> >> >> sorry I'm quite busy right now.
>> >> >> >> Do you have a simple test for me to reproduce, wich I can use for
>> >> >> >> the
>> >> >> >> itests?
>> >> >> >> To my understanding it should work right away so it might
>> >> >> >> possibly
>> >> >> >> be a
>> >> >> >> bug.
>> >> >> >>
>> >> >> >> regards, Achim
>> >> >> >>
>> >> >> >>
>> >> >> >> 2012/9/10 Bengt Rodehav <[email protected]>:
>> >> >> >> > As it turns out, the Content-Type wasn't the root of my
>> >> >> >> > problems.
>> >> >> >> > I
>> >> >> >> > had
>> >> >> >> > a
>> >> >> >> > syntax error in my template (.ejs file) which caused a lot of
>> >> >> >> > problems
>> >> >> >> > that
>> >> >> >> > were hard to detect.
>> >> >> >> >
>> >> >> >> > Nevertheless, I would like to specify that ".ejs" files should
>> >> >> >> > have
>> >> >> >> > the
>> >> >> >> > MIME
>> >> >> >> > type "text/plain" since it is not given any Content-Type at all
>> >> >> >> > presently.
>> >> >> >> > Judging from the error messages in Firebug it does seem like
>> >> >> >> > the
>> >> >> >> > browser
>> >> >> >> > (at
>> >> >> >> > least Firefox) then tries to interpret it as XML.
>> >> >> >> >
>> >> >> >> > Does anyone know how to do this with Pax-Web?
>> >> >> >> >
>> >> >> >> > /Bengt
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > 2012/9/6 Bengt Rodehav <[email protected]>
>> >> >> >> >>
>> >> >> >> >> I'm using Karar 2.2.8 which includes Pax-Web 1.0.11. I'm using
>> >> >> >> >> JavascriptMVC and its templating engine. The templates have
>> >> >> >> >> the
>> >> >> >> >> extension
>> >> >> >> >> ".ejs".
>> >> >> >> >>
>> >> >> >> >> Until recently this worked fine but I now have lots of
>> >> >> >> >> problems
>> >> >> >> >> with
>> >> >> >> >> this
>> >> >> >> >> - probably due to "background updates" of my webb browsers. It
>> >> >> >> >> seems
>> >> >> >> >> like
>> >> >> >> >> the web browser tries to interpret the .ejs files as xml and
>> >> >> >> >> complains
>> >> >> >> >> that
>> >> >> >> >> it is not well-formed. The .ejs files do not have a
>> >> >> >> >> Content-Type
>> >> >> >> >> header
>> >> >> >> >> in
>> >> >> >> >> the response which probably leads the browser to do its "best
>> >> >> >> >> guess".
>> >> >> >> >>
>> >> >> >> >> How can I tell Pax-Web that files with the extension ".ejs"
>> >> >> >> >> shall
>> >> >> >> >> have
>> >> >> >> >> the
>> >> >> >> >> Content-Type "text/plan"?
>> >> >> >> >>
>> >> >> >> >> /Bengt
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > _______________________________________________
>> >> >> >> > general mailing list
>> >> >> >> > [email protected]
>> >> >> >> > http://lists.ops4j.org/mailman/listinfo/general
>> >> >> >> >
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >> --
>> >> >> >>
>> >> >> >> Apache Karaf <http://karaf.apache.org/> Committer & PMC
>> >> >> >> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/>
>> >> >> >> Committer & Project Lead
>> >> >> >> OPS4J Pax for Vaadin
>> >> >> >> <http://team.ops4j.org/wiki/display/PAXVAADIN/Home> Commiter &
>> >> >> >> Project
>> >> >> >> Lead
>> >> >> >> blog <http://notizblog.nierbeck.de/>
>> >> >> >>
>> >> >> >> _______________________________________________
>> >> >> >> general mailing list
>> >> >> >> [email protected]
>> >> >> >> http://lists.ops4j.org/mailman/listinfo/general
>> >> >> >
>> >> >> >
>> >> >> >
>> >> >> > _______________________________________________
>> >> >> > general mailing list
>> >> >> > [email protected]
>> >> >> > http://lists.ops4j.org/mailman/listinfo/general
>> >> >> >
>> >> >>
>> >> >>
>> >> >>
>> >> >> --
>> >> >>
>> >> >> Apache Karaf <http://karaf.apache.org/> Committer & PMC
>> >> >> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/>
>> >> >> Committer & Project Lead
>> >> >> OPS4J Pax for Vaadin
>> >> >> <http://team.ops4j.org/wiki/display/PAXVAADIN/Home> Commiter &
>> >> >> Project
>> >> >> Lead
>> >> >> blog <http://notizblog.nierbeck.de/>
>> >> >>
>> >> >> _______________________________________________
>> >> >> general mailing list
>> >> >> [email protected]
>> >> >> http://lists.ops4j.org/mailman/listinfo/general
>> >> >
>> >> >
>> >> >
>> >> > _______________________________________________
>> >> > general mailing list
>> >> > [email protected]
>> >> > http://lists.ops4j.org/mailman/listinfo/general
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >>
>> >> Apache Karaf <http://karaf.apache.org/> Committer & PMC
>> >> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/>
>> >> Committer & Project Lead
>> >> OPS4J Pax for Vaadin
>> >> <http://team.ops4j.org/wiki/display/PAXVAADIN/Home> Commiter & Project
>> >> Lead
>> >> blog <http://notizblog.nierbeck.de/>
>> >>
>> >> _______________________________________________
>> >> general mailing list
>> >> [email protected]
>> >> http://lists.ops4j.org/mailman/listinfo/general
>> >
>> >
>> >
>> > _______________________________________________
>> > general mailing list
>> > [email protected]
>> > http://lists.ops4j.org/mailman/listinfo/general
>> >
>>
>>
>>
>> --
>>
>> Apache Karaf <http://karaf.apache.org/> Committer & PMC
>> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/>
>> Committer & Project Lead
>> OPS4J Pax for Vaadin
>> <http://team.ops4j.org/wiki/display/PAXVAADIN/Home> Commiter & Project
>> Lead
>> blog <http://notizblog.nierbeck.de/>
>>
>> _______________________________________________
>> general mailing list
>> [email protected]
>> http://lists.ops4j.org/mailman/listinfo/general
>
>
>
> _______________________________________________
> general mailing list
> [email protected]
> http://lists.ops4j.org/mailman/listinfo/general
>



-- 

Apache Karaf <http://karaf.apache.org/> Committer & PMC
OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/>
Committer & Project Lead
OPS4J Pax for Vaadin
<http://team.ops4j.org/wiki/display/PAXVAADIN/Home> Commiter & Project
Lead
blog <http://notizblog.nierbeck.de/>

_______________________________________________
general mailing list
[email protected]
http://lists.ops4j.org/mailman/listinfo/general

Reply via email to