JSF vs ASP.net 107
DuncanE asks: "We are looking at migrating an old legacy database application to a newer web
based framework for the front end. For me the two obvious choices are ASP.net vs
Java Server Faces. CodeGuru has
side by side look at both, but does anyone have any real world comparisons? ASP.net appears to be MS only, which is a concern, depending on how mature
mod_mono has become." Which framework would you prefer to use? Under what situations and conditions would you recommend the use of the other?
DOS isn't done til Lotus won't run (Score:4, Insightful)
AFAIK The only issue with Mono currently is that MS-specific security doesn't work under Mono, because it relies on Windows.
I suggest that if you want to be able to run on something other than Windows, be careful about choosing
BTW The only programming I do is
Re:holy random comparison batman (Score:2)
I haven't worked with both, but.... (Score:5, Informative)
Java Server apps can run on multiple operating systems, multiple servers, and in the extreme case of Sun not supporting it anymore ( or not adding a feature you want) you've got tons of big companies pushing it, like IBM and others, in addition to open source implementations like GNU classpath. Not to mention that you can implement 100% of your solution without paying anything.
ASP.net, on the other hand, is a Microsoft solution, and you depend on the whims of MS for everything. It runs on little more than Windows/IIS, and the only serious IDE for it would be Visual Studio.net, and good luck trying to run it under mono if you favorite class or function is incomplete or has a bug in its mono implementation ( or the MS implementation for that matter).
I think that the Java and
Re:I haven't worked with both, but.... (Score:5, Informative)
If I want a
Same for running the apps: I can either choose from IIS or Apache/mod_mono for
As for my comment on "good luck if there's a missing function in the mono implementation" , it wasn't anti MS zealotry but a practical remark: whenever I check the mono status I get a chart which says "class so and so is implemented and function so isn't". It really worries a developer when he sees that the project is incomplete to the level of functions in the libraries he'll be developing with[1]. My point has nothing to do with Microsoft, but a simple remark that mono isn't mature enough yet.
Re:I haven't worked with both, but.... (Score:2, Informative)
Actually, you can download MS Visual Web Developer 2005 Express for free here: http://msdn.microsoft.com/vstudio/express/vwd/ [microsoft.com] I've used it pretty extensively, and it seems pretty full-featured. Of course, it's Windows only, so if you want cross-platform, something e
Re:I haven't worked with both, but.... (Score:2)
BTW, it will be a free download for only a year then will be sold for a price.. to the 4 remaining developers who still haven't heard of the offer
Re:I haven't worked with both, but.... (Score:1)
Yes, but as long as you get it in the "free download" period, it will be free to use as long as you want, even after the year has expired.
Re:I haven't worked with both, but.... (Score:1)
http://shop.borland.com/dr/v2/ec_Main.Entry17c?SID =39696&SP=10023&CID=0&PID=772687&PN=1&V1=772687&CU R=840&DSP=&PGRP=0&ABCODE=&CACHE_ID=0 [borland.com]
Re:I haven't worked with both, but.... (Score:2)
And does anyone use eclipse for
Re:I haven't worked with both, but.... (Score:2)
Re:I haven't worked with both, but.... (Score:2, Informative)
Spoken like a true astroturfer.
Several times more, at least in Web server arena, according to Netcraft. 69.97% for Apache vs. 20.92% for IIS.
Re:I haven't worked with both, but.... (Score:2)
Thanks for flying your colors up front. I'm glad to know that I won't be involved in an intelligent discussion this morning.
"Several times more, at least in Web server arena, according to Netcraft. 69.97% for Apache vs. 20.92% for IIS."
Exactly my point numb nuts. ASP.Net runs on Apache. So if by the parent's "little else then IIS" comment, he actually ment to say "will run on the vast majority of web servers", then yes he would be correct. But I'm pretty sure he was just reci
Re:I haven't worked with both, but.... (Score:1)
You had taken care of that by typing 'http://slashdot.org'
Re:I haven't worked with both, but.... (Score:2)
And it's probrably one of the best IDEs available. This is the one categoy that MS really pwns the competition, their IDEs are awesome.
If "probably" includes also "probably not" then I can agree with you
MS Visual Strudio is just an IDE. Its absolutely nothing fancy on it. Everything there is OLD, STANDARD IDE functionallity. Nearly EVERY OTHER IDE is better and offers more, better debugger, better refactoring, better project management, better configuration management
Re:I haven't worked with both, but.... (Score:2)
However, there *is* one thing that Eclipse has over VS... totally free. You can't beat that very often!
Re:I haven't worked with both, but.... (Score:2, Informative)
The debugger is debatable, I think they're about on par, although VS has only just (finally!) gotten edit and continue.
Ahem, Visual Studio 6 had "Edit and Continue", and it has been out for, what, 7 years now ?
Other than that small correction to your post, I think that MS have nothing interesting to offer in that area anymore. Only people who haven't tried Eclipse think that MS still has an edge in IDEs. Also, don't forget that besides being free, Eclipse is also Open Source, which means bugfixable, e
Re:I haven't worked with both, but.... (Score:3, Interesting)
As for the IDE, I have indeed used both, and prefer Visual Studio. Don't get me wrong; Eclipse is a very good IDE. VS is just better, IMO. I've already detailed the real differences between them; the rest is look/feel, responsiveness, and general user experience. Eclipse is great, but VS is better.
It's like the difference between MS Office and OpenOffice.org. O
Re:I haven't worked with both, but.... (Score:2)
I suppose arguing one vs. the other is like apples and oranges, since there's little cross-over between the two.
Re:I haven't worked with both, but.... (Score:1)
What The Fuck? (Score:5, Funny)
My web apps must be crap, because I've never heard of "JavaServer Faces".
Re:What The Fuck? (Score:2, Insightful)
About the Author A Senior Consultant with Sogeti LLC, Michael has spent over 7 years in IT, specializing in J2EE and Oracle analysis and development.
wonder which platform he's rooting for? The article was a piece of shit anyways, a few screen caps of the IDE's doesn't make for a good comparison of frameworks.
Re:What The Fuck? (Score:2, Funny)
Re:What The Fuck? (Score:2)
Wouldn't they call the police? And then where would I get my coffee?
Re:What The Fuck? (Score:2, Funny)
Re:What The Fuck? (Score:2)
Then you may not have been paying attention for the last few years.
JavaServer Faces [sun.com] at Sun java/J2EE. It's been around a while.
But not using JSF will not make your web apps crap. There's bound to be a better explanation for your web apps being crap.
What are you and your programmers familiar with? (Score:5, Insightful)
Either (Score:5, Informative)
Having said that JSF is still a good choice - particularly if licensing costs and portability are an issue. Apache MyFaces [apache.org] is an excellent framework whose only downside is the poor documentation. JSF can be slower to get started with but I found that it enforces best practices more strictly and once you get the hang of all the XML wiring it wasn't that bad. Another benefit of JSF is that you'll have trouble breaking the MVC pattern but you can pretty easily embed alot of code in ASP.NET unless you properly use code-behind and deliberately seperate out the DAL which isn't the default for the point and click wizards (the DAL separation).
In the end it comes down to a few things. If you have existing C#/VB skills and don't mind being stuck with IIS then go for
Re:neither? (Score:1, Interesting)
Re:neither? (Score:2)
Have you actually USED PHP, Ruby, or Python? I've never used Ruby, but PHP and Python are far faster than I've ever needed them to be. Java, on the other hand, is only fast on new hardware. And don't get me started on backwards-compatibility. . .
Re:neither? (Score:5, Insightful)
Its also much, much more productive to develop, and support. Its a nice stable, extendible extendible object-orientated framework that can give you most of a website with very little code (asp.net 2.0), or it stays out of your way if you'd rather do it yourself.
IIS has also moved on a LOT since NT4 as well. Its much, much more stable and secure.
With ASP and NT4 remember you are talking about technologies that are about 10 years old now.
Re:neither? (Score:5, Insightful)
Maybe on Slashdot... Java has an excellent track record for security. Compare with the PHP worm that swept the net, or PHP based framworks like NukePHP that are hacked so regularly that sites are unusable [city-of-doors.com].
Server side java is REALLY fast. On artifical benchmarks, java can be as fast as C++ [idiom.com], and these people [linuxclust...titute.org] wrote a high performance Linux cluster monitoring tool in Java.
If you need more proof, Java is now the preferred language for Boeing [aonix.com] when doing mission critical and real time software. NASA [sun.com] used it during the Mars mission...
and proprietary.
You can join the Java Community Process [jcp.org] for free as an individual and vote for how future versions of Java will look like, Sun has handed over control over just about everything but the Java trademark to this JCP. There are also plenty of open source implementations of compilers and JVMs. Sun keeps donating stuff to the open source community. DTrace, Solaris, 1600 patents [wikinews.org], cryptography tech [zdnet.co.uk]....
Re:neither? (Score:2)
On artificial benchmarks, java can be as fast as an unladen swallow (African). In my experience, Java performance tends to suck. Why yes, I *am* a C++ programmer.
I don't hate Java, I use it occasionally as a portable and syntactically superior replacement for Visual Basic.
Re:neither? (Score:2)
Clearly they've never read an EULA from Microsoft:
Certain SOFTWARE PRODUCT(S) may contain support for programs written in Java. Java technology is not fault tolerant and is not designed, manufactured, or intended for use or resale as on-line control equipment in hazardous environments requiring fail-safe performance, such as in the operation of nuclear facilities, aircraft navigation o
Re:neither? (Score:2)
Re:neither? (Score:2)
Sun Microsystems, Inc. has contractually obligated Microsoft to make this disclaimer.
Re:neither? (Score:1)
Re:neither? (Score:2)
I've started to program in J2EE myself, and I must say, the concepts presented in it definitely make me NOT want to program in PHP again. The Perl apps I've seen are marginally better - but maybe because of the module extensions which aren't used a lot in PHP land.
I haven't touched large scale PHP code in some time but J2EE does try very hard to divorce each layer of the application to the point where programmers need not worry about what others are writing too
Re:neither? (Score:2)
JSF (Score:2)
I wouldn't make it a large deciding factor though -- in both cases the actual page
Re:JSF (Score:3, Informative)
FileUpload from jakarta would be used for that as it's pretty much the de facto choice. There are other options like javazoom but it's an easy add-on. The apparent lack of a file upload control is probably reflective of the fact that Java allows multiple ways to do the same thing (which can be very confusing to someone new to the field) where MS products tend to have all the features included whether you use them or not. The JSF user community is not that small and is growing (although there are about 10x a
Re:JSF (Score:3, Informative)
The usual mistake many people do with JSF is that they just look at the RI and then dismiss it as all there is, while literally hundreds of components linger around on the net for free and about the same amount in commercial solutions.
Re:JSF (Score:2)
Re:JSF (Score:3, Informative)
Re:JSF (Score:1)
It all depends on your existing skillset (Score:2)
Re:It all depends on your existing skillset (Score:3, Interesting)
Re:It all depends on your existing skillset (Score:1)
Re:It all depends on your existing skillset (Score:1)
Re:It all depends on your existing skillset (Score:1)
and while I'm sure it wouldn't be too dificult to transition to the Java language, I think I'd have the most problems adjusting to the tools
My point was it wasn't the language, douchebag, it was the supporting tools of the platform that takes some experience to learn. Yeah, C# and java are very simmilar syntactically. Of course someone who thinks a programming platform is just syntax (like yourself) would be a "shitty" developer who doesn't
Re:It all depends on your existing skillset (Score:1)
Re:It all depends on your existing skillset (Score:1)
Not true? Really? How many projects have you worked on that use both
A good developer once they know how to use one can learn use the other to accomplish similar tasks.
You are completely missing the point, which is that developers who dont know websphere, java, oracle etc... will have to ramp up, good developers or not, if using a specific tech is that important to you, fine, you need to plan for it, and its g
Re:It all depends on your existing skillset (Score:1)
I not arguing that a programmer can switch overnight, but one can definatly swith in a relatively short time frame.
Java (Score:1)
Re:Java (Score:2)
struts is really cool, and I use that. I've come up with a few of my own tags though, because struts does not have them.
The following, obvious things are missing from all the frameworks I've used.
1) struts tags are nice, but if you use the dynaformbeans, then its a problem to fill the beans from a database. Not really a problem, its possible, but not easy. I've created a request to hashtable to object method, so I can
Re:Java (Score:2)
I prefer Struts to JSF as it's more mature and you can use more JSTL in it (JSF has issues with ). The JSTL fmt tags can also be used for formatting, including dates and this is recommended by the Struts team which is why they probably didn't both with a competing struts tag to do the same thing.
I'm also with you on the fact that what framework you use depends more on what language you are happiest coding in and what your company uses. Comparisons like this are a bit of fluff as you can say anything depend
Re:Java (Score:2)
Re:Java (Score:2)
<htmlcustom:dateSelect inputFormat="MMDDYY" outputFormat="MMDDYY" useLongYear="true" yearFrom="2001" yearTo="2010" name="foo" bean="mybean"/>
The select shows January dropdown for the month, 1-31 for day, and the year goes from 2001 to 2010 or whatever you select. It can be dynamic using the Java Calendar object. If useFUulYear = true then the year is CCYY otherwise its just YY. The input format can change based on a user pref from MMDDYY to DDMMYY. Since its a dropdown, the cha
Re:Java (Score:1)
As far as tags go, we use a lot of JSTL and the tags that are missing or tags that wo
I'd recommend Java for several reasons. (Score:5, Informative)
First of all, every platform in use supports Java, and you can download almost anything you might want to use for free. This is going to save you a bundle. YES, I know that technically Mono is sort of
Second, Java has an amazingly rich class library. If you can think of something you might want to do with a computer, there's a java library in there somewhere which will let you do it -- usually relatively easily, too. Although C# is approaching this level of functionality, I don't think it's exactly equal with Java yet. Close, maybe, but I think Java still has a little edge. Which makes sense, when you think about it -- Java's been around for several years longer.
Third, most major vendors are now completely behind Java. Sun, IBM, Novell, and Oracle, for instance, are all putting their collective might behind the platform. That's pretty significant. It means that new innovations from these companies are going to be available in Java FIRST. Also, when you're ready to ramp up to big iron, you're more likely to be able to do so with Java, because all the big players there are Java shops.
Fourth, you can download Oracle Express for free, and use it with Oracle's Java developer's tools to build a rather interesting type of system. Oracle's considering an interesting approach here; give away the low-end database so that as companies grow they think about going with Oracle first. That's pretty good business; be generous first, so you'll be thought of when it's time to purchase something big. And this can work for you.
Fifth, the same skill set your developers use to create Java-based apps on your web server can be used to program just about anything from a Microwave to a PDA to cars and trucks (believe it or not, yes Java's finding its way into some vehicle systems). Java's everywhere these days; the language is the same, only the API changes. That makes your Java skillset very portable.
Finally, I think JDBC is a little nicer than Microsoft's database approach. I've programmed both ways, and I like the Java approach better. It's easier, for one thing; I write less code working with Java (YES, I know, it's astounding, but nontheless true).
I could go on, but you see where I'm going. Java's the nicer of the two platforms, and you can't really go wrong choosing it.
Re:I'd recommend Java for several reasons. (Score:1)
More choices (Score:3, Informative)
A good thing with Java, no matter which framework you choose, is that you have a huge number of open source tools and libs to help you (Eclipse, Netbeans, JUnit, Ant, Maven, CruiseControl, JMeter, PMD, Checkstyle, xdoclet, Hibernate, Spring, Tomcat, commons logging, jsch...) , and there are also plenty of books, online tutorials, and programmers around who know Java.
Rule of thumb (Score:2)
My money.... (Score:1, Offtopic)
Dang you beat me to it (Score:2)
Have you considered WebObjects? (Score:3, Informative)
--Paul
(disclaimer -- I work for Apple; however, I've been doing web development using ASP, J2EE, and WebObjects for years. IMHO WebObjects is far more elegant and robust than the alternatives.)
Re:Have you considered WebObjects? (Score:2)
Why compare only two? (Score:1)
Why are they the two obvious choices? What about PHP for example? It sounds like you've already made your mind up - why bother asking the question?
Re:Why compare only two? (Score:2)
Re:Why compare only two? (Score:2)
In my experience, PHP is an intepreted, unstructured, code-mixed-with-markup hellhole. Comparable to the original ASP or JSP. The state-of-the-art development platforms moved past that sort of thing several years ago... too many maintenance and scalability issues.
JSF hard to develop (Score:4, Interesting)
Re:JSF hard to develop (Score:2)
Re:JSF hard to develop (Score:2)
You're not going to like ASP.NET either. The reason why these two technologies are being compared here is precisely because they both attempt to make the web development experience (which, as you say, is transactional) look more like a windowing application development experience (which is event driven).
I guess that the theory why this type of approach is popular is that there are many developers out there who a
Compare to ASP.NET... (Score:2)
1. Non-existant error reporting: If an exception is throw by the code backing it up, the error message on the front end will be something like "Exception: '{mycomponent.dosomething}'". Which really means that dosomething threw some other exception that it is hiding from you.
I don't think this applies to asp.net. If the code backing it up throws an error, and you're di
Try Tapestry 4.0 (Score:1)
Re:Try Tapestry 4.0 (Score:1)
More than two options... (Score:2)
That said, I have a radical suggestion: use a rich client rather than web application. Even with AJAX, the web is still a very limited user experience platform -- I've always preferred manly GUIs to sissified pansy-web-pages.
Re:More than two options... (Score:2)
Re:More than two options... (Score:2)
As for maintainability... good luck getting maintainability with *any* language when you have dozens of coders on a project. PHP is not inherently unmaintainable, it's a language, capable of some pretty sweet things. So are Java, C#, ruby, and python, just to name a few (note: I avoided perl, because *shudder*
Re:More than two options... (Score:2)
Open Appserver and Progress 4GL (Score:2)
Re:Open Appserver and Progress 4GL (Score:1)
I totally agree with this, it is the best development scheme you can do for yourself. As a corollary you can also write multiple front ends, i.e. web based for quick deployment, and a rich client for in-house power use.
Re:Open Appserver and Progress 4GL (Score:2)
This is exactly the scheme we're using in house. We'll deploy various frontends (some TBD) based on client needs and bandwidth. On our company LAN, we'll use fat clients (better for serious data entry IMHO), and all will access the same body of business logic on our Progress Open Appserver (great product).
Rant: I really wish Progress Software Corporation had better advertising and promotion. They've had a great DB and rich development environment for years.
Proprietary? It's 2006 already! (Score:1)
Consider Microsoft for games, but not for business.
Java- new tools slick and free! (Score:2)
Java has some new ide's for free that seem to produce web pages (I'm not exactly sure what java flavor). They look really slick, and have me thinking about switching to java from php.
http://developers.sun.com/prodtech/javatools/jscre ator/index.jsp [sun.com] [sun.com]
http://developers.sun.com/prodtech/javatools/jscre ator/reference/quicktour/2/flash/index.html [sun.com]
Tapestry vs. JSF detailed comparison (Score:2)
http://www.realsolve.co.uk/site/tech/jsf-vs-tapes
Tapestry 4.0 was just released, so that comparison a little dated now, but still worth a read.
JSF using netbeans demo (Score:1)
http://weblogs.java.net/blog/binod/archive/foss-i
Re:JSF using netbeans demo (Score:1)
ASP.NET is incredibly productive (Score:1)
MasterPages. Page templating ensures consistent page layout throughout the site, without the hassle of a centralized dispatcher logic like e.g. a front controller.
WebPart
Re:Stupid question for /. (Score:1, Troll)