Hi all.
Ok, for those of you who wonder what that resolver thing is and what ist does: resolver.jar is the library created by the Apache XML Commons Resolver project. It is intended to solve this nasty problem of unpredictable xml entity resolving (for example, most xml entities refer to same kind of web adress which is completly fine as long as you have permanent web access, if not, you are in trouble and cannot resolve it propely).
Commons Resolver can be hooked into any java xml parser (sax, dom, ...) following the sun xml guidelines. It then will replace the sun standard resolver who will look all entities up in the internet and who will get very unhappy if he cannot do so.
So, commons resolvers idea is to define catalogs, where all possibly occuring entities are listed, each along with its public resolve id (the web based one) and, optionally, with a private resolve id (something on you computer). You can resolver also order to cache public entities into local ones. If all public entities are locally cached and resolver is running in local mode, then no internet lookups are needed, everything is resolved locally (and fast). Another option could be having resolver access stuff on the net when you are online and use local caches when offline.
Usually, when applications are designed to use commons resolver they try to find the jar and plug it into the xml parser. If they don't find it, they will use the standard sun implementation. (that is why thing are slow and you have to wait when the resolver.jar is not there - the standard implementation trys to find it's entities on the net. As soon as you put the resolver jar in, it will be able to use it's cache catalogs and things are fast).
All in all, using the commons resolver in your own applications is a nice thing - but you can easily run into trouble like this (and setting up catalogs is not fun, neither).
Hope this helped to bring light into that thing.
Cheers, Christoph
Philip Johnson wrote:
Possibly. I do know that when I don't have resolver.jar in my ant/lib directory, the docbook process pauses for 30 seconds or so. I'm not sure what it's doing right then, but the delay is eliminated by using resolver.jar.
Cheers, Philip
--On Sunday, May 8, 2005 11:14 AM -1000 "(Cedric) Qin ZHANG" <[EMAIL PROTECTED]> wrote:
Hi, Philip,
The docbook process always tries to contact weird site. Is there a way ask it not to do so? Last time, you mentioned resolver.jar. Will put the jar file in the lib directory solve the problem?
Thanks.
Cedric
Philip Johnson wrote:
--On Sunday, May 8, 2005 3:31 AM -1000 [EMAIL PROTECTED] wrote:
Hackystat build (configuration Hackystat-ALL) failed. Build report is available at http://xenia.ics.hawaii.edu/hackyDevSite/configurationBuildReport.do?ye
ar =2005&month=5&day=8&configuration=Hackystat-ALL Build Time Stamp: Sun May 08 03:31:24 HST 2005
This is due to:
Caused by: java.net.UnknownHostException: www.cs.put.poznan.pl at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:153) at java.net.Socket.connect(Socket.java:452) at java.net.Socket.connect(Socket.java:402)
It has the appearance of a random net burp (I just checked this host and it's available). However, I'm not totally convinced of this; our build process seems to fail in too many weird ways these days. At any rate, let's just keep watching and see what happens over the next few days and if a pattern emerges.
Cheers, Philip
