Slashdot Mirror


Jazilla Milestone 1 Released

mcbridematt writes "Many of the long time Slashdot readers will remember the Jazilla project to rewrite the Mozilla browser in Java. It went into hibernation in 2000 and I took it over last August. I have completely rewrote the browser which now follows a more Mozilla-like architecture. The Result: Jazilla Milestone 1 has been released. Download it from here. No prizes for guessing that it's Alpha software." Read on below for a list of what Jazilla can do, so far.

"Significant (implemented) features include:

  • chrome:// support
  • JavaScript implemented for the GUI thanks to the Mozilla.org Rhino engine. HTML Scripting coming.
  • GUI in part, uses XUL and W3C DOM
  • Written in 100% Java
  • Open Source
  • Uses the NetBrowser renderer, which is actually based on Jazilla-classic work."

23 of 353 comments (clear)

  1. Running this puppy by mcgroarty · · Score: 5, Informative
    I'm sure a million people will want to see this, but not everybody knows how to start it.

    Once you expand and extract this puppy, just cd into the folder it made and, assuming Java is properly installed on your machine, you need only run:

    java org/jxul/xulrunner/Main

    Good luck, and enjoy! The browser's still lacking in many obvious areas, but it does work on a lot of sites. Too cool -- props for all the hard wo\ rk. :-)

    1. Re:Running this puppy by jeffg · · Score: 5, Informative

      You may need to specify a classpath manually using one of the following (again, both from the directory containing README, COPYING.TXT, etc.):

      java -cp . org/jxul/xulrunner/Main
      java -classpath . org/jxul/xulrunner/Main

      Windows users: The "jazilla.bat" file may or may not work for you. You may wish to edit this file to specify the classpath as above. You could also change your CLASSPATH environment variable, if you felt the need.

    2. Re:Running this puppy by mcbridematt · · Score: 4, Informative

      I might as well add two other things I didn't put in my original submission:

      1) Look in org/netbeans/netbrowser/tags for any .java files not compiled. Compile them. The renderer uses Reflection to start up tags, so they don't get compiled at compile time. In the future, if Jazilla finds a compiler and tag which isn't compiled, it will compile that tag
      2) Did I mention that getting URL's is multithreaded? If you try and hack it abit, e.g use a JIT for Crimson, you might get a better result.

      Also, anyone wishing to make a product based on Jazilla, note that the jXUL part is unlicensed. I am yet to talk to Kevin T. Smith (co-founder of the jXUL project) about what license to put it under. The renderer is under the SPL. When that's done, expect anything under org.jxul to move to org.jazilla

    3. Re:Running this puppy by hatrisc · · Score: 5, Informative

      actually there's a script. jazilla.sh

      --
      I write code.
  2. its interesting by jeepee · · Score: 5, Insightful

    dont get me wrong i think its an interresting project but why write in Java a software that is already available on a huge variety of platforms (its mainly the advantage of writing java apps).

    also Mozilla is lacking a bit of speed im sure you wont help in java.....

    1. Re:its interesting by darkheavy · · Score: 4, Interesting

      A year and a half ago I was involved on the development of a Digital TV Set Top Box.

      As User Interface Developer one of my duties was the analysis and selection of an embedded web browser. My bet was a Gecko based one, but implement it for the Nucleus RTOS was out of the question, so we should point to a propietary browser license.

      If this project was so evolved in that moment it would have been a serious alternative.

  3. Jazilla: In case your computer was too fast by Horny+Smurf · · Score: 4, Funny

    Combine the speed and java with the speed of Mozilla.... I bet you can reboot into windows, run IE, and get 3 first posts before Jazilla starts up.

  4. Re:Why? by mcgroarty · · Score: 5, Funny

    Hee. I told him it would get him laid, then forgot to mention it was a joke. A year and a half later, it was just too funny not to let him keep running with it. Shh! My bad!

  5. Applets support? by netsharc · · Score: 4, Funny

    Does it have support for Java applets, or do you need to install the Java plugin to have applets? :P

    --
    What time is it/will be over there? Check with my iPhone app!
  6. Re:Slow Enough by Tablizer · · Score: 5, Funny

    I think Mozilla is slow enough, thank you.

    It allows you to close tricked-into Goatse windows before they are finished. Goatsephobia has changed they way people browse. Slow is in.

  7. Re:IE, Mozilla, and Opera are all I need! by watzinaneihm · · Score: 4, Interesting

    Some uses I can think of is embedding sub-parts of it in embedded environments.You also can modify it (Open-source) it for use in hundreds of ways to create useful apps.This most probably is not going to replace any browser on the average desktop, but can possibly be used as a web-test tool, automation framework etc.
    What about running a browser/modification on a Netware box (it supports java) and no cross compiler necessary.
    Also note that W3C demoes a browser on their website ( Amaya IIRC) written in Java.

    --
    .ACMD setaloiv siht gnidaeR
  8. Re:Why? by FatherOfONe · · Score: 4, Funny

    Ok grandpa it might be time to upgrade your 386sx to some more modern processor. You will be shocked at how much faster late 90's technology is, and if you want to live on the edge you might even try some system built in the last few years. You will find that any of those run Mozilla and or Java great. Oh yeah, while you are at it you will find that 16MB of RAM won't cut it anymore, you should probably get around 512MB. The good news is that you can get a system like that for under a grand. I do realize that living on social security makes it tough to buy a new system every 20 or so years, but just stop buying so much crap from those late night tv ads, and you should have enough saved up in no time.

    --
    The more I learn about science, the more my faith in God increases.
  9. Why... by valis · · Score: 5, Informative

    Since half the comments so far seem to be "What is the point" I'll offer one justification.

    There is still a serious lack of a good modern HTML browser for embeding in java applications. Swing provides an EditorKit which handles HTML3 reasonable well, but most of the other quality offerings are non free.

    Major Java IDEs (Eclipse, NetBeans) have projects to implement something like this. Many other Java applications could potentially benefit. It's a good idea.

  10. Re:IE, Mozilla, and Opera are all I need! by evilviper · · Score: 4, Insightful
    Other than being Java-based, what's the point of this web browser?

    I could probably name 100+ embedded devices that support java. Having an Open Source java browser is a good thing.

    Besides that, I could also harp about the security of java.

    Hmm, it would be ironic if Jazilla had a problem running applets.
    --
    Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
  11. What "Write Once, Run Anywhere" Really Means by Anonymous Coward · · Score: 5, Informative
    From the beginning, Sun intended the Java language to be platform-neutral. That is, Java programs are written to run on a Java Virtual Machine instead of on a physical computer--it's the Virtual Machine that runs on a real computer. Thus a programmer can develop a program that will work on the sort of computer he likes and expect it to run on the sort of computers that his customers like, because it runs inside of the Java Virtual Machines on those computers.

    This means that when you go to the store to buy an application, you don't buy the "Mac version" or the "Microsoft Windows version." You buy the "Java technology version." And as long as you have the Java Virtual Machine--which is free, and available from a large number of vendors--you can buy the program without having to worry whether it's going to run on your particular computer.

  12. Another good reason. by pecosdave · · Score: 4, Funny

    Imagine this uncommon but very possible setup.

    You are working on a weekend all by yourself, you get the average of one phone call every 3 hours and nobody EVER comes into the office on weekends but you, the poor tech support guy.

    You work for a small company that uses a Netware 5 file server for the firewall. (Remember, Netware 5 is Java based)

    You don't have admin access.

    The server doesn't have the console locked.

    The server IS the firewall, and therefore can be outside of it.

    You REALLY want to get your dose of porn, which the firewall wont let you do.

    The firewall is unlocked........

    Yep, time to load up a JAVA browser on the file server for your own porn surfing pleasure.

    --
    The preceding post was not a Slashvertisement.
  13. Re:Too much time on their hands by jfengel · · Score: 4, Insightful

    There's more to Java than cross-platform. In fact, with all the various versions running around, I'd say its cross-platform qualities are significantly overrated.

    Java is far more important in its security and software engineering features (which are actually very closely related). I find that I'm far more productive in Java than I ever was in C++ and C. I find that's even truer for less experienced programmers. Java increases the ability of programmers to work together through better memory management, better type enforcement, exceptions, etc.

    You don't really need to hear all this. At this point you either believe it or not and I'm not going to convince you.

    I haven't been able to compare it to C#, which appears to offer many of the same advantages over C/C++. I think of Java in a different class from languages like Perl and PHP, which are less well-suited to teamwork, which is an important goal of mine.

    So the reason for this is not because we need another browser (boy, do we not) but because Java needs a browser for use in its environment. Java is still very poor on the client side, for a host of reasons, one of which is its lack of browser integration. Applets were always a stupid idea, I'm afraid, because software distribution via applets just isn't ready and the toys are generally beneath contempt.

    You need a browser as part of Java. It's the best way to view text, whether for help, mail, etc. Java has several, but none are really any good because they're not 100% compatible with the lastest rounds of HTML/HTTP/Javascript. A browser, compatible with IE and Mozilla, will help make Java a decent client environment.

  14. Re:Why? by FatherOfONe · · Score: 5, Informative

    Ok it was kinda a joke but I will address it more seriously this time.

    1. Java is slow. This was true in 1.0 release of Java, but with todays JIT's the speed difference is small. I can point you to numerous sites, but at the end of the day it comes down to good coders. Your experience must be with some bad coders.

    2. SWING is slow. This again use to be true with 1.18 + SWING and 1.2x JVM's the 1.3 and 1.4 have increased SWINGS speed considerably.

    3. JAVA takes up too much memory. Yes it is true that the base JVM can take around 5-16MB of RAM per JVM instance. But with todays systems, on a lot of applications that isn't too bad. Now the core issue is that it takes up that amount for EVERY JVM that is used. So to your point: If I launch a Java calculator program, and then launch a Java notepad, I will have lost around 10-32MB of RAM in just JVM's. This is currently true, however it is being addressed and should be solved with the 1.5 release. Once this is done, then it would be possible to have ONE JVM running on the system for all Java applications. The JVM could launch at startup and then even the inital load times would be greatly reduced. I believe that this is the way Apple is handling Java (Can't confirm it though).

    So, when this issue is resolved, running Java on a machine could mean only giving up a maximum amount of 16MB of RAM for the JVM and the rest for the application. To be honest that is what most Java programs are doing today. Most run as an application server and run Servlets and JSP's all day long.

    Another poster mentioned that you use the correct tool for the job. I agree, but I will add that the issues for not using Java for speed has and is going away. The reasons for not using it for memory are going away on most computers.

    We do agree on one point. Most people do have computer processors far greater than they need.

    Lastly, if you are having so many issues running Java apps on your system you should look at newer JVM's. They make a huge difference.

    --
    The more I learn about science, the more my faith in God increases.
  15. Another justification... by j3110 · · Score: 4, Interesting

    Maybe I want to write an application in Java that has a more dynamic user interface. Swing makes things like this hard. What if you could make a great GUI in seconds in Java using dynamically generated XUL with call outs to Java instead of broken impared JS.

    I'm all for duct taping a rendering engine on the front of real Java just because I don't like to deal with any of the popular layout managers for swing. Ideally, I would have my own Java widgets (because swing gets extendible widgets right like no other GUI API anywhere) that were rendered in a sane fasion (plus the native XUL widgets for when you don't need to extend them).

    Swing layout is one of the reasons Java GUIs seam to be broken. If you resize a window, you get a lot of grey boxes. Sure, Mozilla could use some double buffering on their resizing, but it doesn't leave me with a gray screen instead of seeing how the components will look after resizing.

    It would be even better if you could extend the XUL language in some manner with custom widgets.
    For example:
    XUL.registerComponent(MyPhoneEditor,"pho neEditor", XUL.TEXT);

    These are all the more reasons why we need a good renderer in Java.

    On a side note:
    Anyone notice that with Java 1.4.2, jazilla starts faster than mozilla? A little over a second for me. It just won't render any web-site properly :) I'm impressed with the speed. Maybe it will send some of those idiot trolls about Java being slow back to the drawing board so they can complain about something else for a while when it gets done.

    --
    Karma Clown
  16. Re:So, using Javascript and Java... by recursiv · · Score: 4, Informative

    Hold on there skippy. Java applets ARE Java.

    I think what our friend Exiler here is trying to say is that Javascript has nothing in common with Java except the name. And if I'm to believe the person who told me, Javascript had a different name while it was being developed but Sun exerted sufficient pressure on the neccesary parties to change the name to sound like Java.

    Quick recap:
    Java Applications - Java
    Java Applets - Java
    Javascript - Not Java

    I hope this helped.

    --
    I used to bulls-eye womp-rats in my pants
  17. Re:IE, Mozilla, and Opera are all I need! by Fembot · · Score: 5, Funny

    Why do I have a strange urge to try and embed it in an applet?

  18. Re:Who pay for it? by JohnnyCannuk · · Score: 4, Insightful

    +3 Insightful? WTF? Did the all the anti-Java FUD /.ers get their mod points today?

    First you place the blame on Java as one of the bloat/UI "candies" that are forcing people to upgrade thier PC. Then you say that Java has mostly expanded on the server market. So which is it? They aren't big currently big in the GUI department (although if you go here, you'll see that is changing). So tell me again how Java, which runs mostly on servers, is forcing people to upgrade their PC because of UI bloat?

    Or how this is part of this conspiracy since Java is made by a company that doesn't make a desktop PC, a company that until recently didn't even support the x86 architecture very well, a company that makes high-end servers and workstations that have exceeded your "typical" PC mentioned above for years?

    I agree that Java does on the server "what was easy to program and cheap to run using Apache/CGI/PHP/Perl/Python". It also does it faster (Python, by about 20%), with more maintainable code (Perl) and more securely (CGI). Apache (and by extension Jakarta) has always worked hand-in hand with Java quite well. But then, there are times when Perl and Python are the better choice, so use the right tool for the job.

    Comparing Swing to Flash is like comparing Gnome with HTML. That's right....apples and oranges. Excellent strawman attack but it doesn't work. The two are for totally different UI environments.

    Mods, just because you don't know Java or agree with the FUD doesn't make this guys tripe right.

    --
    Never by hatred has hatred been appeased, only by kindness - the Buddha
  19. Re:mmmm by bill_mcgonigle · · Score: 4, Insightful

    any idea why anybody would want or need to use that?

    They wouldn't. It's not about the users, it's about the developers.

    I use Mozilla, but I rarely hack on it. Why? I hate C++. It's a miserable language for developing an application. Java, on the other hand, is a great language for application development. The performance issues will melt away very soon as both the JRE and hardware improve. If I find a problem with Jazilla, I'm very likely to try to fix/enhance it.

    Plus, I happen to know both C++ and Java, but most kids coming out of school have never hacked C++. They've all hacked Java. These are the most likely hackers to work on a web browser.

    Let's come back in a year and see if Jazilla is more interesting to users, when it's fast, stable, and pretty, due to all the volunteer efforts.

    Short of a WxRuby port of Mozilla, this is what really has me interested.

    --
    My God, it's Full of Source!
    OUTSIDE_IP=$(dig +short my.ip @outsideip.net)