Jazilla Milestone 3 ReleasedTuesday January 20th, 2004Adam Hauner wrote in to tell us that Jazilla Milestone 3 was released late last year. The Jazilla project aims to rewrite Mozilla in Java, though most of the source files are not direct ports of their Mozilla equivalents and the application uses its own HTML renderer in place of Gecko. This latest release features a user-agent string in the HTTP request headers, error pages instead of error dialogues, better CSS rendering, XUL overlay support and some stability bug fixes. Adam writes: "M3 is able to display pages (near to plain HTML), but it's still slow to work and fast to eat memory and disk." He also sent a screenshot of Jazilla rendering Google, a screenshot of Jazilla rendering mozilla.org and a screenshot of Jazilla rendering MozillaZine. ...why? Please explain. I'm curious as to why this project is not using Gecko. There are hooks to allow Java to use Gecko, aren't there? I remember something about an interface project on Mozilla.org (Blackwood?). So why isn't this being used? Like you just said, it's possible to use Gecko from Java (sort of), as it's also possible to use IE from Java (sort of). At least you can in Windows using the ActiveX control and native code that links Java and ActiveX. (That said, while I've achieved this for IE, when i tried switching it for Gecko it just crashed, but anyway.) But by doing this you lose control - the IE COM interfaces are horrible and don't give near enough access, for example you can't turn off Javascript support for your instance, and it's hard to tell when a user clicks a link - and you lose cross-platform support... even if it were possible on other platforms, you'd still have to ship separate binaries (Gecko) for each one. Java desperately needs a free pure-Java (portable) HTML renderer. There are a few commercial alternatives which aren't perfect but do work (and some other commercial alternatives which are very ropey and usable only for HTML that's been specially coded). Unfortunately Jazilla isn't yet anywhere near usable, as those screenshots demonstrate - but if finished and rendering websites in reasonable quality (doesn't have to be as good as Gecko) it would be an immensely useful component for Java developers. I'm currently in exactly this position of needing a pure-Java HTML renderer... that said, maybe I *might* consider embedding Mozilla, if the control was there and if it worked well on all three target platforms, but I don't think the interface project is finished either... I have to say, I really wish I could just write my own HTML renderer [note: there *isn't* a great need for xul in java, it's just a good html renderer that we need] but sadly the project doesn't allow that much time as it would take several months to get a basic, passable HTML+CSS renderer going. So to summarise - yes, writing Mozilla as an end-user Web browser in Java is pointless, nobody wants that; and implementing XUL in Java is largely pointless, a few people might care but they're rare; but implementing a good-quality HTML renderer in Java would be a fantastic service to the developer community. --sam If it's not using Gecko, and it's not using the Mozilla source... how is it related? As I understand it, it implements XUL. (It probably also uses the Java-based Javascript engine which was a mozilla.org project.) There isn't really much relation though, I think the connection is largely an attempt at publicity but who knows. --sam |