TheServerSide presents a Hard Core Tech Talk interview with JBoss lead Marc Fleury. In this interview, Marc discusses JBoss and the open source movement, how JMX is used in JBoss, and the administering of 'farms of clusters'; he also talks about the significance of JSR77, the future of J2EE with respect to JBoss, and comments on the
Watch Marc Fleury's interview here
Whoa, this is a first I believe: I agree 100% with what Marc says :-) Great interview, great answers!
The only sad thing is that it's from J1 this past summer, so he'd have even more interesting answers about the JBoss architecture if we did the interview now instead. C'est la vie. :-)
NET failure? It would be more appropriate to talk about J2EE failure. I would suggest that mr Fleury go to Jakarta
(search on fireball) or look at: J2EE considered harmful.
If this is how they want to play this game, fine. Let them. Don't have any illusions about how it will end up though.
Re: "J2EE considered harmful"
One of my favourite Fleury quotes is "talk is cheap and words are plenty". IMHO it applies to that post. Most of the replies were emotionally twisted, and wasn't very interesting.
It is really very very simple: if you don't like it, don't use it. No-one is forcing you to do anything. To "force someone" is to put a gun to someone's head and have them do something, and that's not really the case here. That was just regular whining.
If Tim has an alternative solution for building enterprise applications, please write a whitepaper or similar on the topic and submit it here. I'm sure there's quite a few who would be interested in hearing about alternatives. At the very least provide some factual points about what's bad with J2EE and what it should look like instead.
If you need more information/white paper on solutions for building enterprise applications why don't you look at Roger Sessions site, for instance, A critical look at EJB 1.1
Well, that was more than two years ago, why is it so many Java project failures, why do so many still prefer to program in perl/PHP?, why is it so difficult to find a decent Java Internet Service Provider? The problem is Sun and the community process and all this impractical theorists. Never have anything worthwhile come from a committee..
Sun should release all Java/J2EE to the Jakarta, the open source guys which really do a fantastic job. And the time is short.
Well, that was more than two years ago,
And still you submitted it as a response about viable options?
> why is it so many Java project failures,
Why is it that so many COM/.Net project fails?
> why do so many still prefer to program in perl/PHP?,
Why is Visual Basic more popular than C++?
> why is it so difficult to find a decent Java Internet
Why do you think?
>The problem is Sun and the community process and all this
>impractical theorists. Never have anything worthwhile come
>from a committee..
I'm on JSR's, Marc are on a couple, but I wouldn't call either of us "impractical theorists". Most people I know on JSR's are practical people.
Who do you know in JSR expert groups (I assume that's what you mean by "committee") that are impractical theorists? If there's so many you should be able to name at least, oh say five.
>Sun should release all Java/J2EE to the Jakarta, the open
>source guys which really do a fantastic job.
.. at implementing specs and API's. What is their track record with regard to creating specifications?
I think Sun is slowly destroying Java, you think otherwise. The result obviously will be clear in a year or two so lets just wait and see..
The Java language would certainly benefit from being released to a standards body. But, despite their claims of "openness" of Java and J2EE, etc, Sun is in it for (drum roll.....) Sun!
Unfortunately, many developers have taken the bait that Java and is about standards, openness, yada, yada, yada.
The age old axiom holds true... "Never fall in love with a product". That holds for MS products as well.
"I think Sun is slowly destroying Java, you think otherwise. The result obviously will be clear in a year or two so lets just wait and see.. "
History tells us that languages/products/technologies have a limited lifetime. Java will be an afterthought in a few years; Sun may help it along.
Who knows, Sun may not be around in its present form much longer anyway. Where would that leave Java/J2EE/ et al?
Sun should release all Java/J2EE to the Jakarta, the open
>>source guys which really do a fantastic job.
>.. at implementing specs and API's. What is their track >record with regard to creating specifications?
well, i can't pass this up . . . how about tcp/ip, http, html, xml, . . .
sun has no monopoly on spec creation, and nearly lost the ball on adopting xml (serialized classes for deployment descriptors? what's that about!?) because of politics.
my *impression* about the JSR process is that discussion is farmed out to the community, but ulitmately the decisions that are made simply to suit the interests of Sun.
.. at implementing specs and API's. What is their track
>>record with regard to creating specifications?
>well, i can't pass this up . . . how about tcp/ip, http, html,
>xml, . . .
What do you mean? Please make a whole sentence. What does those specs have to do with Jakarta/Apache?
You pointed us to objectwatch.com? You really have _no_ respect for anyone, do you? I'm not going back to naming my objects 0x18F4F25E5C002E75BA420001FE63C218 and "deploying" them to a global OS registry ... been there, done that. ;-)
At least point us to a site that can discuss these issues with a little more objectivity, like JavaLobby.
.NET is a huge improvement from COM. No longer is it necessary to restart anything on the server neither do you need to register. A simple copy is enough. The reason I pointed to the old article was that in Roger Sessions opinion, even the old COM+ was superior to EJB. Sun should think of new things instead of copying Microsoft bad practise (JSP=ASP, EJB=COM, etc). Jar once, jar two, copy to the server, restart server..
The J2EE should be compared to .NET.
But anyhow I think that in the long run that neither Microsoft nor Sun will be able to keep their platforms proprietary. There is already several projects going to port .NET to open source and the Jakarta people will probably loose patience very soon.
I dont find toooo many technical people that take Mr Sessions' spouts seriously (not even some M$ proponents) - I would advise that you consult other references for more balance (and credibility).
I'm having a little trouble following your reasoning, but here goes:
"No longer is it necessary to restart anything on the server neither do you need to register. A simple copy is enough."
Same thing with J2EE, at least with most servers.
"The reason I pointed to the old article was that in Roger Sessions opinion, even the old COM+ was superior to EJB."
An opinion that was based on thin air, as I showed two years ago.
"Sun should think of new things instead of copying Microsoft bad practise (JSP=ASP, EJB=COM, etc)."
Hm... so ASP has taglibs then? I didn't know that.. and COM has automatic persistence now? Cool! I didn't know they had support for stateful components. Where can I find out more about these things? It seems I've missed a lot of things.
"But anyhow I think that in the long run that neither Microsoft nor Sun will be able to keep their platforms proprietary."
Are you saying the Java platform is proprietary? If so, can you please define that word, because we obviously have very different interpretations of it. Thank you.
"There is already several projects going to port .NET to open source"
Where? I only found Mono, but "several" implies >1.
"Jakarta people will probably loose patience very soon."
And do what?
Taglibs are cool? How many people are making/deploying taglibs in this moment? Have you seen the competition? (Web Controls). Persistence database objects? What was it I said about theoreticians again?
There are four projects porting the .NET. Two open source, one proprietary and one "shared source". These are following: The DotGNU Project, Mono, iNET from Halycon software, and Corell for the shared source. Halycon is doing it differently by transforming the IL code to java byte code.
If Java is not proprietary why cannot Sun disclose how much they take in in license fees? Java most be open sourced, that is the only way to stand against Microsoft.
Taglibs are cool? How many people are making/deploying
> taglibs in this moment?
I am, we are. We made something similar to web controls in WebWork, and it works just fine.
> What was it I said about theoreticians again?
I don't know, enlighten us.
>There are four projects porting the .NET. Two open source, one
>proprietary and one "shared source". These are following: The
>DotGNU Project, Mono, iNET from Halycon software, and Corell
>for the shared source. Halycon is doing it differently by
>transforming the IL code to java byte code.
I assume the DotGNU one uses GPL, in which case you have the usual problems with GPL (=only GPL apps can run on it). So, only one viable OpenSource effort then.
>If Java is not proprietary why cannot Sun disclose how much
>they take in in license fees?
What does that have to do with anything?
Your general whining and ranting isn't getting anywhere it seems...
Well I am sorry you think I am whining and ranting. But it is the usual reaction from EJB proponents when somebody questions their hype. I am perfectly happy programming in .NET for the moment, after all c# is Java too (more or less). But the same day Java and J2EE is delivered to a standards body I will switch back to Tomcat and Velocity.
Good luck with your taglibs. I only tried it once but didn’t knew if I should cry or laugh.
"I only tried it once but didn’t knew if I should cry or laugh."
That quote seems to apply to your overall java experience/knowledge (at least j2ee exp.)...
.NET is a failure for everyone that needs solid and proven platforms. J2EE just got started and already is the unmatched nr1 in "server programming".
But it is the usual reaction from EJB proponents when somebody
>questions their hype.
That comment was *only* based on your inability to answer my questions in a satisfactory way (or at all for that matter). When people loudly voice opinions and then can't back them up, I tend to call that "whining" and "ranting".
>... after all c# is Java too (more or less)
Thank you. Now we know that your perception of what Java is differs "slightly" from the rest of the world. You're starting to make sense now.
So why is everybody talking about .NET against J2EE. I do not know. If .NET becomes a success, and I'm sure about that, it might replace J2EE. Or it might fail. Whatever.
If .NET overcomes J2EE there will be a set of fine tools which will be able to convert Java Byte Code/EJB/J2EE into their .NET counterparts. If .NET does not overcome J2EE, J2EE developers are fine anyway.
I cannot believe I am actually reading an all-out religious battle of J2EE vs .NET. I have to side with J2EE, even if I am not totally in love with it.
I think J2SE and J2EE are amazing things, not because of how wonderful their design is, but *in spite* of all their significant problems. Consider for a moment what Sun, IBM, BEA and others were able to achieve. They managed to unite the non-microsoft world and create a common server-side development platform. That a company like Sun (which, let's not forget, created NFS ;) ) was able to set this in motion is truly wonderful and unexpected.
I think as far as execution I would say Microsoft is the best, IBM second, and Sun third. However, as far as vision Sun is way ahead of everyone else.
I also want to say something about the accusation that some Java initiatives (like some JSRs) are academic, or not designed with a production environment in mind. In many cases I have to agree. Forcing people to use RMI is a case in point. Bill Joy himself (at least I hope I am not confusing him with someone else) admits in the forward to "The Jini Specification" that Jini is needed because he learned from building NFS that you should not pretend that a remote call is the same as a local call. However, other things that Sun gave us have come out of entirely practical considerations. For example, the Java syntax is similar to C++ to make it familiar to people, and Sun did not include many C++ features which it considered harmful, like explicit memory management and operator overloading.
After over 10 years of development in the IT industry, including many years of C++ and over 4 years of Java, it is pretty obvious to me that projects generally fail because of bad project management and/or bad design.
Project failure is very rarely due to the technology involved. It is worthwhile debating the technical merits of J2EE and .NET, and inevitable we will prefer one or the other. But it is almost never these merits or lack of that causes projects to fail. Religious wars are pointless.
With all this heated discussion, I believe Rolf actually raises interesting points. It is easy to bash Microsoft, but they do have some interesting technology and put bluntly there are oodles of developer tools, utilities, frameworks out there targetted at MS platforms.
> It is pretty obvious to me that projects generally fail
> because of bad project management and/or bad design.
> Project failure is very rarely due to the technology
Well, technology does matter! If your developers are not familiar with the technology or are not convinced of its usefulness, and lastly do not have the right tools for it - it makes it that much more difficult for the project to actually succeed.
I've seen quite a lot of developers work on Microsoft technologies and the fact is they could churn out a lot of applications (yes - N-tier ones) in very little time. This had a lot to do with the tools and frameworks that automated many of the tasks and thus boosted their productivity. Of course, they were tied in to the OS - but these were what the applications were designed for in the first place - run on MS platforms (and there is no arguing that their OS is most widely used).
J2EE on the other hand is maturing at the moment. I work for Borland and if I had to compare (for example) the work it took to create EJBs & JSPs, test them 2-2.5 years ago and the work it is now, I am blown away with the increased productivity current tools offer. But J2EE still has quite some way to go. The technology (implementations to be precise) offers a wide range of hardware and OS choices as deployment platforms. But in the end I believe both (J2EE and .NET) will co-exist (and maybe even talk to each other - though that might be an ambitious statement - but given Web Services and the like, it is a distinct possibility).
PS: Guglielmo Lichtner - I liked your post man. I agree there is no need for name calling and generally it is sad to see a good discussion degenerate into this.
PPS: Tyler Durden - I don't believe Rolf is 'forcing' Rickard to respond by holding a gun to his head :)
Well, technology does matter! If your developers are not >familiar with the technology or are not convinced of its >usefulness, and lastly do not have the right tools for it ->it makes it that much more difficult for the project to >actually succeed.
Agreed, but this is still a project management failure rather than a technology failure. That's why when people trumpet about a .NET failure or J2EE failure, it is relatively meaningless so far as the specific technology is concerned. Bad managers can screw up any software project.
J2EE is certainly my preference, but I don't discount .NET. Microsoft has a lot of very smart people working for (including my supervisor for my research masters), and they are betting the farm on .NET. It will be competitive - perhaps not in 1.0, but soon after.
Java had a long to way to get rid of its early days'hype
With the J2EE1.3 it is going to last and stay even if .NET
will have the same success.
Just a few pointers/corrections/whatever:
Taglibs are cool? How many people are making/deploying taglibs in this moment?
You seem to be a big fan of Apache's Jakarta project? Well - so am I, but have you actually browsed the jakarta projects?
Apart from that close to every app server vendor has their own collection of taglibs (Oracle, IBM, BEA, Ironflare etc.). There is also a JSR (JSR 52) that's trying to create a standard taglib to be included in future versions of J2EE.
So, based on this and my own experience - Yes, there are actually people that develops and deploys taglibs.
Have you seen the competition? (Web Controls).
Now you're barking up the wrong tree.
Take a look at JSR 127. That is what you want to compare with.
Persistence database objects? What was it I said about theoreticians again?
Ok - it's not my job to speak for Richard in any way - but could you please elaborate that comment a little further, please?
Where can I see JSR 127?
hmm, the opensource java guru LOL
here you go:
Taglibs are cool? How many people are making/deploying >taglibs in this moment? Have you seen the competition?
yes, you can add own controls in .NET
But we can also present (simulate) NET's Web Controls
with taglibs. Check out for example Coldtags suite
for DataList, Calendar etc.
I won't speak for other people, but as to the "How many people are making/deploying taglibs in this moment?" question:
My group reqularly uses taglibs for all of our J2EE/Servlet projects. We just released a very large-scale system to the government that used Struts for the MVC framework and had only a few scattered lines of scripting throughout the entire system (places where we couldn't use a taglib or it didn't mak any sense to write one).
Essentially, the entire front-end of the system was based on tags. This system has been a year in the making, and will tests are good for large-scale performance and scalability.
Sure, Struts has some distance to go before its a perfect solution. But its pretty good so far.
As for JBoss? Love it. Keep up the good work.
As for the idea "J2EE and EJB sucks." I don't happen to agree (accept maybe Statefuls drive me nuts), but even if it did suck, it's sort of like JFK's statement regarding democracy (I think it was JFK but please feel free to correct me). He said something along the lines of "Democracy is the worst form of government........Until you consider the alternatives."
To recoin (even though I disagree), "J2EE is the worst form of app-server, until you consider the alternatives." And just like democracy, the J2EE world is a work in progress. Better every day.
Show me a better alternative. As Rickard said, put together a white-paper. But don't blow up the bridge your standing on until you have a newer-better bridge to use. You come up with something better, people like us will be your sales-people. We'll sell it for you, simply because of its merits. What's more, the merits will speak for themselves.
My take is .NET doesn't stand on the merits yet. Corba? fugeddaboutit. J2EE isn't perfect, but it's good and getting better.
First of all, could those of you who get money from MicroSoft please flag your posts, that will make it easier to read them, thanks.
There is NO OpenSource .NET port. You cannot port code from the MS plattform to other plattforms, e.g. Mono only implements 900 out of 3500 classes. It's impossible to switch professional projects from .NET to Mono.
We have no problems with EJBs (entity). We use design patterns, XML and have nice caching (we write intranet solutions with lots of reads, few writes) and have no performance problems. The only problem with Entity Beans is that they try to integrate a lot of concepts: remote, declarative transactions, persistency, permission/security, instance pooling/life cycle. There will be some seperation in the future (see development of local interfaces).
.NET is nice too. When J2EE will be dead (haha, probably never happens), we will switch to .NET, I'm a programmer and J2EE and .NET are tools. I choose the best for my job. Right now J2EE/Java and .NET/C# are very similar, just compare them to other solutions. There are some problems with .NET: You depend on one vendor. The MS EULA does forbid benchmarking. No open source.
About those people at Jakarta: As there are nice APIs in the JDK and some not so nice APIs (hey, use those you like), there are nice projects at jakarta and not so nice projects. Struts is for example very poor compared to WebControl and WO. On the other hand Lucene is the best search engine there is and ORO is very useful.
Why is Microsoft copying Java language if Java is complete failure?.
Just think about "LPZSTR" style naming conventions or about MFC which is pure hack (with no OOD involved - on top of Win32 API) you will start to cry. Or WinSock - you need to call init ...() before usage lol! :)
For the first I am not a Java guru, only three projects during ca two years. On the other hand you could say that I have deep and up-to-date knowledge of MS Enterprise products including the .NET.
Microsoft is copying Java because Sun wouldn't let them use Java.
With J++ I could happy develop anything, if I wanted to do MS specific things I used the extensions, if I wanted to do cross platform I didn't use extensions, harming no one. I still think it is the best java tool in spite of the have been no new versions for 3? Years. One can only speculate in what it would have been now if they had been allowed to go on.
There is nothing wrong with Java, it is J2EE that is a disaster.
"I still think it is the best java tool in spite of the have been no new versions for 3? Years."
Now you're losing it...
"One can only speculate in what it would have been now if they had been allowed to go on."
Can agree on that one, if they had played fair and not intended to mess up java they could have produced some excellent tools (that's what they're good at after all - that is user/developer tools, not system/platform development)
"There is nothing wrong with Java, it is J2EE that is a disaster. "
In what way would you call J2EE a disaster? (or are you writing it in the same way microsoft does when they looks at what J2EE does to their server side sales? ;)
I can tell that you strongly believe that which you strongly believe, and I can respect that, but IMHO you are repeating things that have been told to you that are incorrect and in some case these things are purposeful lies that have been propagated in the industry.
Rolf: "For the first I am not a Java guru, only three projects during ca two years."
That's OK ... no one should expect you to be a guru or know all these things off the top of your head.
Rolf: "On the other hand you could say that I have deep and up-to-date knowledge of MS Enterprise products including the .NET."
This is the first piece of mis-information. The .NET product is not an "enterprise" product. It is an evolution of Microsoft's workgroup product line. According to a friend selling a .NET solution into the enterprise, when the .NET subject comes up, it is a liability. Period.
Rolf: "Microsoft is copying Java because Sun wouldn't let them use Java."
As has been carefully documented and painstakingly explained on an oft-repeated basis, that is a lie.
Microsoft is copying Java because Sun did not let them kill it's promise of cross-platform support. I would suggest the findings of fact from the antitrust case against Microsoft as a good primer for this particular subject -- and other related subjects.
Rolf: "With J++ I could happy develop anything, if I wanted to do MS specific things I used the extensions, if I wanted to do cross platform I didn't use extensions, harming no one."
I still use J++ ... it's a fine tool. It wasn't J++ that caused the problem, it was Microsoft refusing to live up to their contract that would have forced them to support cross-platform Java in their VM. The J++ topic was just a side-show. Please explain how I could have my cross-platform RMI-based Java program working on the Microsoft JVM at that time? They claimed that "RMI is bloated so we won't ship it", so many developers could not get their cross-platform Java products to run in Windows on the Microsoft VM. (Microsoft did eventually provide a way to get this working ... sometime around the end of the Sun suit if I remember correctly.)
Rolf: "I still think it is the best java tool in spite of the have been no new versions for 3? Years."
That's 'cause it was based on Vis Slick Edit ;-)
Rolf: "There is nothing wrong with Java, it is J2EE that is a disaster."
Parts of the EJB specs qualify for the disaster award (thanks, IBM). As has been said repeatedly though, there is value even in a poor spec, because a spec allows us all to participate and our solutions to interoperate.
It really doesn't matter how good .NET is, because only Microsoft will participate, and their products will only interoperate with each other. Their customers don't want .NET, I don't want .NET, our customers don't want .NET, and the numbers prove this clearly ... sorry.
.NET is hype, whether or not it works, whether or not it is technically superior in any particular respect, and it will continue to be hype as long as Microsoft has money to burn trying to hype it.
It's just a matter of time. Java has already won.
"It really doesn't matter how good .NET is, because only Microsoft will participate"
Not exactly true, according to this article
"Java has already won."
Never a warrior is more vulnerable than when he thinks he has already won.
In fact, what I'd blame is not .net but simply the fact one need Windows which is clearly a sub-sub Unix OS and cannot support serious production constraints...
Do you need some arguments to prove this ?
"I'm not going back to naming my objects 0x18F4F25E5C002E75BA420001FE63C218 and "deploying" them to a global OS registry ... been there, done that. ;-) "
You can use the progname.
global OS registry is very similar to LDAP, JNDI, CosNaming, etc
I like this comment by Rickard. Another point is that even if EJBs (or specifically Entity Beans) are not useful in a certain context, it doesn't mean you have to give up the rest of it.
The OFBiz (www.ofbiz.org) Entity Engine is an alternative to Entity Beans for "container managed persistence". It's goal is to be quick and easy to use. Just define your entities and relationships between entities and everything else is dynamic meaning you don't have to code it.
So, we gave up on using Entity Beans. Partly because of run-time performance, but mostly because of code bloat. We chopped about a million lines of code from our project when we started using the Entity Engine (~400 entities).
But, we didn't give up on J2EE. The Entity Engine uses JTA for it's transaction support and of course we are using JDBC to hit the datasource. Also, on the front end we are still using good old Servlets and JSPs, and they are working great (except for a bit of a performance problem with taglibs that we just ran into, they just don't do so well with hundreds of tags running on a single page in Tomcat).
Anyway, I'm all for J2EE, but a tool that doesn't fit is a tool that doesn't fit and sometimes needs to be replaced. With the kind of efficiency gain that we are experience, I don't even CARE if it's a standard. It was faster for me to develop it and start using it than it was to wade through all of the Entity Bean code. Plain and simple pragmatism.
So, there's an alternative to Entity Beans without requiring you to throw away everything you know or all of the code you already have.
So, we gave up on using Entity Beans. Partly because of
> run-time performance, but mostly because of code bloat.
Another possible can of worms. People blamed (still do) entity beans for their performance (or lack of it) and code bloat.
Re: performance, you probably concluded they were slow because of their execution on a particular vendor's AppServer. But it would be a folly to generalize - and in your case, you still needed transactions (which is why I presume you chose Entity Engine), and entity beans on a performant AppServer could have made the difference. There was a thread
on this topic quite recently that I responded to as well.
Re: bloat, of course EJBs (specifically entity beans) have local and/or remote interfaces, deployment descriptors etc. But the right development tool (again there was a thread on this started by Dion Almaer I believe) can abstract much of the complexity associated with J2EE development. As you state, if a product/tool/technology helps me reach my objective irrespective of the underlying standard _and_ project management allowed/approved it, I would definitely go for it! (Which also probably explains why M$ is in this picture ;)
NET failure? It would be more appropriate to talk about J2EE failure. I would suggest that mr Fleury go to Jakarta (search on fireball) or look at: J2EE considered harmful.
You just have to ack. that some people will not be able to develop with J2EE and Java. There is just too much flexibility.
It is a shame this got off subject. Nice interview. I hope TSS will get a more up to date interview in the near future.
I just browsed the interview. What I was missing was a possibility to view the entire interview in one piece. Now it was divided into 16 chunks.
Kind of ironic this post sparked a J2EE vs .NET catfight.
For once Marc (whom the Serverside neglected to name as founder, not just lead on JBoss) did not say anything particularly controversial.
To me, what is interesting about the JBoss phenomena and the true source of their strength is the amount of high-level contribution they get. Even though they put their code out for everybody to take (see JRUN mea culpa of yesterday), the truth is a one person or six person prop. vendor team just cannot compete with a group where talent attracts talent, the source is open (we all know what egomaniacs server developers are) and there is no limit to participation. People get to choose what they work on and who they work with. If they're any good, they even get to be nerd stars of a sort :) Everybody talks about Marc and Rickard, however, the rising stars there now are Scott Stark, Bill Burke, Sacha Labourey and Dain Sundstrom, to mention a few. If Marc is where he is today, its because he's been successful in building a group that's greater than the sum of its parts.
Well, the last two posts seemed very balanced and reasonable. I cannot understand however why some is calling it a religious battle, for me it is a normal discussion, all in a days work. I have been working with Java. Now my productivity is higher by a degree of power, the apps are faster and takes less memory. What am I then to think when somebody call .NET a failure?
But why is it that some people have to retort to shouting and name calling just because I have a different opinion? In this discussion I have been called a whiner and ranter, have _no_ respect for anyone, lacking overall java experience/knowledge etc..
When somebody is overreacting so much in a normal discussion there is usually something that is wrong. Likewise there is probably something which is wrong when everybody agree to how good they are and bash all that don't fit in.
Look up Short Introduction to Lysenkoism
"But why is it that some people have to retort to shouting and name calling just because I have a different opinion? In this discussion I have been called a whiner and ranter, have _no_ respect for anyone, lacking overall java experience/knowledge etc.. "
I think it takes experience in the corporate world to learn moderation. However, here you may be talking to some people who just develop products and never really deal with IT managers, business rules, and just general day-to-day insanities, and they are just very categorical and arrogant and never learn to argue without getting worked up. This is proven in mailing lists over and over again. So, when a kid calls you a whiner, don't feel bad. Feel bad for the guy, who probably hasn't been around enough.
Thank you Guglielmo. Time to get some work done. Anyhow your post was the most interesting in the lot, had it been in slashdot I would have given it a "5".
Its certainly human nature to have some sort of "religious" attitude toward various things that a person feels passionately about - obviously it can degrade quickly in discussions. I don't particularly care for .NET - I am sure that it is nifty in its way - but I am a Java fan - I like the language and the technologies that have sprung up around it. I like J2EE and I like the way it is constantly growing - slow though it can seem sometimes. I even like the bickering that there can be in the community sometimes about how things should be done. I am not big on Microsoft - I never have been - but so what? It comes from experience, really - I mean to say that I have never in my 16 years of corporate development experience worked in an all (or even mostly all) Microsoft shop. J2EE works *today* on a wide variety of platforms that I find in shops all over - including Microsoft. It's hardly likely that .NET is going to take over the world - it might compete someday when it is more proven and in fact does appear on more platforms. And someone mentioned earlier, and I think its true, that there is no tool or paradigm that is going to make your project a success. If you have a poorly conceived project, a poor or ineffective team, or ineffective management staff or no user or executive buy-in - it's not going to succeed whether you use J2EE or .NET or the Man-In-The-Moon. So, my philosphy is to use and push the tools I like - so it will be Java and J2EE and so far, that philosophy has worked.
Well Rolf ... get a life!. I understand you might have so much time left now that your productivity is increased with that .NET thing, but our Rickard is very busy improving our site and you are making him waste time with your poor arguments. ... and what are those URLs in your posts?, you should try to think for yourself instead of use Google man...
Nice to see such a good leadership behind JBoss.
Good work Marc!
Rolf Tollerud is such an obvious MS troll. He did get lucky because I'm pretty sure most of the J2EE guys would like to weigh in on the Jakarta/Fireball discussion.
My reading of the Jakarta post is that they're annoyed that Sun doesn't want to let the open source initiatives (like JBoss) undermine the work they've done with the major players like IBM, BEA etc.
I can see Sun's point of view and it's not like they're stopping JBoss from happening, they're just not certifying it. For that, they get a _huge_ amount of participation and money thrown at the J2EE initiative which is good for JBoss as well. Not certifying JBoss does keep the major corporations from using it as their deployment app server but most of the developers are probably using it on their development boxen anyway. As soon as "Cut the costs!" day arrives, half of them just deploy JBoss and everyone is a winner.
Regarding Marc's discussions about JBoss, which is what the topic was really about, I would have loved to hear more about rabbit hole and what the web/os is going to look like. It's exciting stuff and JBoss is at the very least the most fun app server to develop for.
This discussion is great (at least part of it, when people who know what they are talking about are posting). Just bring in Roger Session with his deep thoughts and evangelism in to all of this now, and it would be complete. I guess you can convince Objectwatch to open up an Scandinavian office, Rolf. It seems like you have just the same standpoint and experience with Java and J2EE as he does. When he was here in Norway some years ago, he gave just the same realistic comparisons as you do...
Regarding taglibs and other Java stuff mentioned, many have used it, and are using it - some fail, some don't - I don't think any of the M$ technology you mention has a better track record. As correctly put by someone else in this thread - projects rarely fail because of technology - it's the people you put on it that make the difference. Apropriate technology should be choosen early on.
Rolf, the problem with your arguments are that it begs the question; that is, you have already made up your mind that .NET is superior to its competitor before coming to this messageboard( hence your typical "...talk about a J2EE failure..." comment ), and then you use that premise to provide the reason why you think this --- yes, that is a cyclical paradox, and this kind of argumentative fallacy is evident on most of these kinds of topics.
It is a waste of people's time to post negative sweeping statements about J2EE on a J2EE messageboard, then complain about personal attacks when the reply you get uses facts instead of emotions to prove your statements wrong. Having said that, it would be a pleasure to hear your point of view now that this has happened.
"Rolf.. you have already made up your mind that .NET is superior to its competitor before coming to this messageboard"
Not defending Rolf, but as an entrepreneur trying to decide between J2EE and .NET, I find the vast majority of Java platform advocates (at least on these boards) to fit that profile.
We have Cameron saying ".NET is hype, whether or not it works, whether or not it is technically superior in any particular respect.. Java has already won." I have examined countless other times where Microsoft is bashed by people that have almost zero knowledge of what .NET really is. Just the other day I heard this J2EE panelist exclaim his incredulity at language-independence in .NET due to the complexities of prior attempts at interfacing languages.. he totally didn't understand the required language specs or the level at which language indepedence is achieved.
I find the Java platform to be intellectually appealing. It's (mostly) vendor-independence allows future-proofing. But there is a cost, and right now I see that cost as (1) complexity, esp. for development, and (2) performance -- an unknown performance hit due to lack of J2EE vs .NET neutral benchmarks. I find the JBoss initiative to be quite noble and can only wish it great success. But the few benchmarks I've seen on its scalability/reliability indicate JBoss 3 will have to be out before its adopted in any kind of mission-critical situation. (Perhaps Rikard can update us on Project Rabbit Hole.. any ETA?)
Then Anders said ".NET is a failure for everyone that needs solid and proven platforms. J2EE just got started and already is the unmatched nr1 in server programming". How did you get that Anders?
Are you claiming that all products under the J2EE banner are unmatched? Are you going to put JBoss or Enhydra up against .NET in reliability & clustering today? IBM & BEA acquired very mature transaction monitors and Microsoft had MTS. Both sides can claim very big users: eBay, Instinet (J2EE), NASDAQ, Dell.com (Microsoft). .NET looks to be a very solid reworking of technology that Microsoft has been using for a while.
Since this thread is ostensibly about JBoss, I would be interested in hearing the largest commercial use of JBoss, preferably on the e-commerce side. I'm not asking a rhetorical question.. I'm really interested in finding an open-source (or low cost) J2EE product that has "solid and proven" business use. Best wishes to all.
I am a consultant working with www.cbdiforum.com and we recognise that for most of our clients .NET and J2EE will have to coexist. XML Web service approach is the way to do this in our oppinion. Has anyone got practical experience with JBoss or any other J2EE server and XMLweb services?
For what I know of the market, I have to agree with your co-existence statement.
There's certainly a trend (a rush?) to add SOAP web services support to EJB containers. The only one I have been able to test so far is Weblogic 6.1 and I can tell you it can expose a stateless EJB as a SOAP web service almost automatically (you need to slightly change the exposed WSDL in order to use it from .Net though). Aside of that, I really like the simplicity of GLUE for exposing almost any Java class as a web service, GLUE of course is not a EJB container.
Please note these remarks are based on my limited hands-on experience and there are probably better products that do the job (Webpshere 4.0 and Oracle 9i come to my mind).
Yes, we have demo on our web site (www.javelinsoft.com) of a code generated version of Northwind with GLUE web service API's. You can browse the database then download a simple C# demo to suck data from our APIs using web services.
Just one point about SOAP. RMI/DCOM it ain't. You just get the data, no API's. The C# SOAP client stub generator doesn't generate the accessor methods. Which is a pity because you need the accessor methods to display C# components in a Data Grid, so we code generated them ourselves. Which goes to prove Microsoft haven't started joining up their APIs yet.
If you can't see how to make money with open source, you have to watch this video. It seems like we're goin back to a system on which people will be paid for knowledge instead of products. I supose it would be a matter of time before a "Big Co." realise this and begin to support this kind of projects, bringing the marketing muscle open source lack of.
Can you imagine an IDE for Jboss build by MS?. That would be fun!
Personally, I think that arguing over which technology (J2EE, .NET, ..., n) is more apt to win this invisible and imaginary war of the enterprise platforms is completely ridiculous. Neither will win, both will lose... They are not perfect, and will either be cannibalized or evolved into something completely different over the coming years.
Competition is healthy, and is perhaps one of the most important driving factors in technological innovation. Rather than simply arguing over whether J2EE EJBs suck or if M$ .NET's attempt to clone Java will eviscerate Java as a mainstream language, why not intellectually discuss the benefits, tradeoffs, and future direction that would be ideal.
People have a tendency to find a comfort zone, refuse to let go, get stuck in the past, and are eventually replaced by the innovators who drive change -- or are doomed to maintenance programming for their entire lives. Bad trap to fall into.
While my rant here has proven nothing, and will most likely be ignored, it's a pity that an opportunity to intellectually discuss a topic rather than arguing on the basis of personal taste will be passed up.
"Rather than simply arguing over whether J2EE EJBs suck or if M$ .NET's attempt to clone Java will eviscerate Java as a mainstream language, why not intellectually discuss the benefits, tradeoffs, and future direction that would be ideal."
I couldn't agree more with your statement. I find that places like Javalobby and TheServerSide are great to discuss the pros and cons of a specific technology *once you have decided to stay inside its realm*. But when you want to or have to use technologies from diverse -let alone antagonic- sources, discussions can get unnecessarily nasty.
My small and personal try at this problem is this discussion forum
where we try to talk about O-O business applications development regardless of any particular platform or vendor.
Hope to see you there!
The serverside also has trolls from redmond that constantly lay around here like crocodiles waiting for the next thread to sink their teeth into spreading dotnut delirium. I guess they still didn't learn their lesson from rigging ZDNET. It's only a matter of time before someone uncovers the rigging that is going on within TheServerSide by M$.
Marc said one significant thing ...
"The objects poets that want to see objects
talking every where, it just doesn't work that way."
hat may or may not be true. What is true (in general) is that the default EJB model of descriptors that aren't checked at compile time, pessimistic locking, distributed objects and 2 Phase commit only meets the requirements of small niche. I've always regarded these features as pitfalls.
Marc is absolutely correct in saying that J2EE is going to change from being a monolith. It's unnecessarily slow to develop, debug, deploy and execute the components.
At www.javelinsoft.com we created a code generator that produces Bean APIs based on the EJB semantics (entities, sessions, homes etc). EJB is just one under-the-cover implementation options; we have an in-memory, JDBC and JDO implementation which we can switch completely transparently.
J2EE is not EJB. Sun have (at least) nine different persistence mechanisms (Serialization, Object-XML, JDO, JDBC, JNDI, MIDP, Java Spaces, Caching, EJB), each of which meet different requirements. EJB is just one requirement. Sun are beginning to wake up to the problem of having consistent UI API's with the Java Faces project. If Java wants to keep users using Java they need to offer migratable persistence API's too.