2012/3/16 Johannes Ernst <jer...@netmesh.us>:
>
> On Mar 15, 2012, at 17:38, Konstantin Kolinko wrote:
>
>>>> Moreover Jasper has to pass a classpath to an external Java compiler
>>>> (ecj or javac). The classpath is constructed and passed to Jasper as
>>>> String.
>>>
>>> Could you point me to where in the code it does this? I was looking for 
>>> invocations of something like
>>>        WebappLoader.getRepositories()
>>> but came up empty.
>>
>> ...
>> The method is WebappClassLoader#getURLs() that returns URL[]
>
> Is that array cached somewhere or called every time before Jasper / javac run 
> again? Do I need to do something when it changes?
>
> This list is very helpful.
>
>> In Tomcat 6.0.x the following places of interest call it:
>>
>> - in WebappLoader:
>> WebappLoader#setClassPath()
>>
>> - in Jasper:
>> JspRuntimeContext#initClassPath()\
>> JspRuntimeContext#initSecurity()
>> TldLocationsCache#scanJars()
>
> Where is a good breakpoint or debug switch that I could set to see with which 
> class path values Jasper and javac are being invoked?

Why are you asking if the source code is available?

If there are "log.debug()" calls in those places, then you can enable
FINE logging and see what it logs. Otherwise just run it under
debugger.

See
https://wiki.apache.org/tomcat/FAQ/Developing#Debugging

Best regards,
Konstantin Kolinko

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

Reply via email to