-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Mark,

On 10/16/19 04:41, Mark Thomas wrote:
>> Mark,
>>
>> On 10/15/19 09:37, Mark Thomas wrote:
>>> On 14/10/2019 20:29, André Warnier (tomcat) wrote:
>>>> From a long-time (occasional) list contributor : That's a
>>>> nice post, in many ways, and a good way to get quick and
>>>> useful answers. I only regret that my own knowledge is not
>>>> sufficient to provide such an answer. (We regularly complain
>>>> at people posting to this list, when their post is "not
>>>> nice", so I thought we should also from time to time give
>>>> kudos when it is).
>>
>>> +1
>>
>>>> On 14.10.2019 16:37, Robert Olofsson wrote:
>>>>> Hi!
>>>>>
>>>>> Some background: We are currently running tomcat (9.0.26)
>>>>> and we serve data to both html/webapp and to our java
>>>>> application. The java application uses a lot of the same
>>>>> jar files that our servlets use.
>>>>>
>>>>> We have had tomcat setup with two directories: 1)
>>>>> webapps/<webapp>/WEB-INF/lib (as usual for servlet classes)
>>>>> 2) webapps/<webapp>/clientdir/ (jar files for the java
>>>>> application).
>>>>>
>>>>> This means that we have a lot of duplication of jar files
>>>>> in these two directories.
>>>>>
>>>>> We would like to have the duplicate files in only one
>>>>> place, sure disk space is cheap, but data transfer takes
>>>>> time. We thought that having the jars in the clientdir
>>>>> would be nice.
>>>>>
>>>>> We have read the documentation for tomcat and found the
>>>>> resource handling and it looks like we could possibly use
>>>>> something like:
>>>>>
>>>>> <Resources> <JarResources
>>>>> base="${catalina.base}/webapps/<webapp>/clientdir/"
>>>>> className="org.apache.catalina.webresources.DirResourceSet"
>>>>>
>>>>>
webAppMount="/WEB-INF/lib" /> </Resources>
>>>>>
>>>>> We tested this lightly and things seems to work.
>>>>>
>>>>> Questions: Is there any problem with this?
>>
>>> Generally, no. You've done it in what I'd consider to be the
>>> "safer" way by exposing all the JARs visible to the client to
>>> the application's class loader rather than the other way
>>> around.
>>
>> Isn't there a magic ${property} that can be used to mean "the
>> context's root" so you don't have to use ${catalina.base}
>> instead? I browsed  through the document a bit and didn't find
>> anything, but I could swear it's been discussed in the past.
>
> There has been some discussion about exposing the context name via
> additional routes but I don't remember anything specific about the
> context root - apart from various discussions around getRealPath()
> and not being able to assume that any web app maps to a location on
> a file system.

Right, getRealPath is the badness.

But! Since all resource loading in Tomcat now goes through the
resources framework, perhaps "${context-root}" could use a proper
protocol that isn't "file:///" and point to the right place?

- -chris
-----BEGIN PGP SIGNATURE-----
Comment: Using GnuPG with Thunderbird - https://www.enigmail.net/

iQIzBAEBCAAdFiEEMmKgYcQvxMe7tcJcHPApP6U8pFgFAl2naqYACgkQHPApP6U8
pFgAXA//Z/IlqTRKyuXgBQUFB1UlnYesICkN+1IvLNYeo/ooNoxNpoBHw0Wkotkt
KJ1R+QNrJ9U/kPZ7lLe0eng5fLtv2kuTX1ZhqyOuqCRTnb+Knl3I3EiZ7czgX1RK
v+Y99EMCKg5aVXj1n9fB9Qha+WMD0JI729Qr0kPd7WPmhbLcLXts7/aqAAU1+7zs
hZDUNB9eW+eV+f3nkA0mjJBzj18sLdNpvn1oxUwFr70YaZenXb7kIb2zueGVloOw
X1378Yr3txvPb03T9mwcEZ5PyZ+NJgVvoL0HB5N+K67X1DiBGPolOWVw6lUjNQmt
+nSEvrBz2jkVbl9MLVj9soGborgNZpFAE88T73qTj3Ky88uxgVn8gy4wQirynEEA
ggBdjrybi2Ecl9gjgmrkY+EjFVndWFq0kykkLPPIAWalIGM0eDL+LXGpORRQ7VNx
QQfPGmbSF6QahRBFx+wdxLziIT++QZJgZFQO49eWyID4okAaoW4U5ml4oHEj602i
0Ab1YXEuH8+tCiyklgIQYiU1bW2WW1281Lml9m399jTTKzaW/A4/ZpEM4Ak4Pj8q
X6Sigo3AK7aBT7TrPpx/GHbkM53lA6pBYERp156iFCYecVOjwUNSWrtY8Z0gLnQi
6vriV9z8WWFD2FdZ3WDVS3FTpfJbE8jONZZugQbrIKN5yTj1Ves=
=gSFg
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to