 |
Welcome to the JavaServer (TM) Faces Implementation Project!
Posted by edburns on June 28, 2004 at 09:56 AM | Comments (6)
Hello, and welcome to my first blog on java.net. In spite of all the
hype about blogging lately, I was still hesitant to jump into the
blogging universe until I had something to say, and today I do:
Welcome!
People have been requesting that Sun release the source code of its
implementation of JavaServer(TM) Faces Technology for several years,
and Sun's answer has been that doing so is under review. I won't go
into the reasons for the length of the review process, but I'm happy
to announce that it's finally complete. We have created an open development project
on java.net to host the continuing development of Sun's JavaServer
Faces implementation. All previously internal development will be
done in this project; there is no private source tree that we
really use. In other words, this project is not just for show.
Please read the FAQ for
answers to such pressing questions as "how do I get and build the
source".
You'll note that I didn't use the term "open source", but rather,
"open development". We're doing so out of respect for the rigorous
definition of the term supplied by the Open Source
Definition (OSD). I'm not a lawyer, and I can't tell you where
the Java Research License,
which we're using for our project, stands with respect to the OSD.
I'll leave that to someone who doesn't write code!
In any case, as with any open development project, there are many
levels of participation. You can file
bugs so we know about them and can get the fixes to you as quickly
as possible. You could simply grab our regular
builds to check if your pet bug has been fixed. You can browse
the source code to get an explanation of the behavior you're wondering
about. You can, also (my favorite) build
the code yourself and run
it in a debugger for the ultimate in development transparency.
Presently we are only accepting Observer role members
into the project, but we plan to open the project up to committers on
a case by case basis once trust is established that our development
processes will be followed.
So what are these processes? We'll have more detail in the FAQ but
here's the idea. All the code in the javaserverfaces was developed
using Test
Driven Development. Each checkin must include either a new test,
or a modification to an existing test to prove that the new code works
as expected. Before checkin, each developer's workspace must
successfully execute all automated tests, as well as have code review
and approval from another developer. We employ the usual suspects to
make this happen: ant, junit, cactus, and htmlunit. Heavyweight?
Perhaps, but when you're testing resources are so taxed that they
can't spend as much time as you'd like with your project, these
measures are well warranted. I feel that our commitment to code
review and test driven development has contributed significantly to
the quality of the project, and helped to reduce the bug introduction
rate.
To wrap it up, I'd like to share what we hope to gain from doing
open development on javaserverfaces. This project aims to:
be the most complete implementation of the
specification.
have a fast turn-around time for getting bug fixes into
the hands of users.
build a community of developers who are committed to
increasing the quality of Sun's JavaServer Faces
implementation.
demonstrate uncompromising commitment to test-first
development and code review for all code coming into the
project.
Technorati Tags: edburns
Bookmark blog post: del.icio.us Digg DZone Furl Reddit
Comments
Comments are listed in date ascending order (oldest first)
-
Licenses
"I'm not a lawyer, and I can't tell you where the Java Research License, which we're using for our project, stands with respect to the OSD. I'll leave that to someone who doesn't write code!"
It's not even close to meeting the OSD, which I'm sure you knew even before posting your snarky "people who care about licenses are surely not coders" remark. More importantly, it's not even close to a free license. It's a research only license, as the first paragraph of the explanation indicates:
If you decide to use your project internally for a productive use, and/or distribute your product to others, you must sign a commercial agreement and meet the Java compatibility requirements.
You say you didn't use the term "open source" because of the "rigorous definition of the term supplied by the Open Source Definition." However, your license does not even give me the basic freedom to actually use the code. I am licensed to look at the source, talk about it, play with it...and if I decide to use it for something, I need a different license. The reason you didn't say open source is because it isn't. Not even close.
License the code however you want ... it's your code. However, please don't mock those of us who prefer licenses that allow us to make changes, distribute them, and use the code in productive ways.
Posted by: mdi on June 29, 2004 at 07:33 AM
-
Licenses
After reading my previous comment, and thinking some more about it, I realize that I didn't say everything I should have said.
First: your project is to be commended for moving to visible source and transparent development.
Second: the JRL is an interesting license. It grants many of the freedoms that would make it open source, but denies the most important: freedom to use the software.
Finally, here's what it sounds like your project is saying to developers:
We've made some software.
We'd like for you to download it and play with it in a research capacity.
We'd like for you to find bugs and tell us about them.
We'd like for you to make cool changes to our software and pass them around, knowing that we'll probably incorporate the better ones into the software.
We'd like for some of you to come and work directly on the software, if we check you out and you agree to follow our process.
Oh, and by the way: if you decide you'd like to use the code to do anything useful, you'll have to go through another process and get a commercial license.
While that may sound good to some people (and it's better than what some projects offer), it doesn't sound very open to me.
PS: The "real coders don't argue about licenses" line really ticked me off, and I'm sorry if I responded too soon.
Posted by: mdi on June 29, 2004 at 08:13 AM
-
Licenses
Hello mdi,
Thanks for your followup, and the second one in particular. I was merely trying to inject some levity into the blog with my, "leave that to someone who doesn't write code" line. In fact, I was referring to the many lawyers who helped us release on java.net, who (thankfully) don't write (production) code.
Now, on to the "there's another license for distribution" point. Yes, there is, and legal is finalizing the details of it. We will be releasing it before the end of the month, and this project will be subject to it. I've seen an early draft of this license and it seems reasonable.
Ed (JSF Spec Lead)
Posted by: edburns on June 29, 2004 at 10:57 AM
-
CVS access
I, for one, am ecstatic that the RI is so visible. I think it'll really help the adoption and evolution of the framework. However, the link on how to get CVS access currently references a file on C:\. Since I run linux (and I don't work at sun), that file lives nowhere on my harddrive. Could we get that fixed? I'd sure like to get involved. Thanks.
cheeser
Posted by: cheeser on August 03, 2004 at 12:08 AM
-
How do we approach testing the JSF components that we have built. Should we use the test driven methodology?
What are the tools that are available for testing the custom JSF components?and which is the best tool?
What are the things that we need to test in a custom JSF components?
Should only the renderer output be tested or we need to test the inputs to the components too?
Posted by: julius_ferns on November 09, 2004 at 11:20 PM
-
Testemonial
Hi there Ed. I'm a guy that just loves JSF and can't see a better way to write UI's. I'm writing to ask you something. I am a user(will soon be a moderator and exam leader) on javablackbelt. You can take a peack there. Most of the exams have a small testemonial from someone who has been involved with that technology. What I want to ask you if you would be interested in writing a small testemonial for the JSF 1.1 exam. If you are interested, please let me know, and I will put you in contact with the person who is responsible with the testemonials.
Best of wishes,
Alex Enache
Posted by: foxro on July 24, 2007 at 04:06 AM
|