Not exactly. JSF does not "replace" Struts at all, rather, JSF is more of a replacement for JSP's.
This is completely wrong. JSF is a total replacement for struts at all levels: model, view and controller. The JSP aspect of JSF is only one implementation of the presentation layer of JSF, and the reference implementation of JSF includes a JSP taglib front-end. One of the big advances of JSF is that it can in principle render all sorts of interfaces: WAP, XML, Swing, SWT, yet the underlying Java code and XML mapping of actions and validators remains the same. JSF is designed to be more than just a web form coding system.
Struts will allow you to use Java Server Faces JSP tags for the view, but that is only one small part of JSF.
The inventor of Struts has moved on and has been working with Sun to produce a new and more versatile framework called Java Server Faces: http://java.sun.com/j2ee/javaserverfaces/ This is the framework that is being adopted by all major java IDE designers: NetBeans, Borland, Oracle etc. Fortunately, its not difficult to integrate struts and JSF, but for newer projects, JSF makes sense. It has an advantage in that the GUI doesn't have to be web pages - you will be able to 'plug in' WAP, Swing etc.
..after all, the Windows APIs are publicly documented, in at least as much detail as Java, and people can implement them freely.
Publically documented? No they aren't, that's one of the reasons why the EU sued Microsoft - so they would publish APIs and protocols.
People can implement them freely? Yeah, like if you even try to name a product something like Windows (e.g. Lindows) you get sued.
in reality, there isn't a Java standard, there is a single Java implementation (Sun Java), its derivatives (Blackdown, IBM, Apple), and its API documentation (the J2SE/J2EE "specifications"). If Java were an open standard, people could implement it without any restrictions (not even compatibility requirements), but compatible and complete third party implementations would exist (no, gcj and kaffe don't count).
Wrong. IBM, apple etc are full java implementations, not derivatives. And you can implement Java without restrictions. However, if you want to call the result 'Java' you must be compatible, otherwise what is the point? Look at the compatibility disaster that exists in other languages, such as C++ and Smalltalk. The whole point of Java is you don't need conditional compilation for different manufacturer's versions.
And yes, gcj and kaffe DO count. gcj can run IBM's eclipse IDE - that's impressive and useful.
Microsoft is bad, bad, bad, and anyone who chooses their products is degraded and called stupid.
As a Microsoft product user for nearly 30 years (I used their Z80 Assembler in the 70s), and having been in the IT business for over 20, I think that this is a pretty reasonable statement.
Java Server Faces is totally free, and its not complex at all, especially when compared to hard-coding form validation in Perl/CGI. Mature tool support is available in the next few months from Sun, Borland, IBM and oracle. There is a free implementation that can be downloaded from Sun's website, and a free evaluation (but working) copy of the Creator visual designer.
You may need to crack open the lid at some point, but GUI tools will get you most of the way.
Perl is a superb scripting language for system coding, but...
Now with systems like Java Server Faces and Creator you can design a web form in a few seconds using a drag-and-drop designer, clip in some data validators, and visually design navigation through a complex website. A few more clicks and you have an single archive file that can be dropped into any J2EE application server, using any JDBC database on any platform.
You can design, code and test complex form-based web applications in minutes.. and all the tools are free.
So why would anyone want to hand-code all this in Perl?
Even more puzzling, given that Perl has a portable database interface, why restrict things to MySQL?
The article misses the most important reason to consider Open (or Star) Office - portability. Its a well-established (but unfortunately often forgotten) good business principle to never tie yourself in to one supplier.
Until a couple of years ago there was no 'good enough for most purposes' alternative to MS Office. Now there is, and companies finally have freedom to choose their desktop systems.
Switch to Open Office and you can migrate gradually to Unix or Linux desktops using the same Office system throughout. The mere possibility of doing this should be more than enough justification for most businesses evaluating Open Office.
See gcj and SableVM. These ship free with many Linux distributions, including Debian. There is nothing to stop open source fans using open source Java.
The MS implementation of Java was pretty good - and very fast - but was being used to cooerce developers into writing for only the Windows platform.
I also miss having an equivelant to the Excel solver utility, which can optimize hundreds of variables at once to minimize/maximize a result.
Woah! Maybe I'm a mere scientist and not an accountant, but I would not trust anything I did not have the code for to fiddle about with even a few variables at once to perform a minimization. Its hugely tricky stuff, even if you know an underlying mathematical model for your data.
You simply can't prove that what you get is a real maximum or minimum, and not a false local max or min.
... is the mindset that "something is wrong with it".
This mindset is rare. Java is the most widely requested skill in the IT industry. Its only in geek-filled forums like Slashdot that there is a strange dislike of Java.
Scalability is often not a case of 'enterprise level design', but a sensible choice of platform and technology at the start. Its about allowing for the possibility of enterprise design in the future. Its not about buying Oracle or whatever, its about enabling that possibility.
This does not take a lot of work, but it does require a more professional attitude than "I gave up with Postgresql after a few hours, and decided to go with MySQL because its cool."
Re:I call bullshit. Try this gem instead!
on
The State of OpenGL
·
· Score: 1
The ruby-> java bytecode sounds interesting (although I would not use a pre-alpha stage project for business development) is but you would still not be using OpenGL - you would be using an even higher level of abstraction away from the OpenGL driver.
Re:Yeah... I'm gonna sqitch from Oracle to MySQL
on
Why MySQL Grew So Fast
·
· Score: 2, Interesting
You are missing the point. The point is that other databases, such as Postgresql, offer virtually all the SQL features of Oracle including a reasonably compatible PL/SQL language. Oracle is not a simple database. Developers tend to use its features. MySQL can't provide those features. Other databases can.
Suggesting a migration from Oracle specifically to MySQL is typical management bullshit along the lines of 'I have heard of both of those and they are both databases, so they must be the same'.
People need to use SQL and need something simple and fast. Postgresql is not optimised for simple web applications out of the box.
Yes it is. You connect to it with PHP, JDBC, ODBC or whatever and use it just as you would use MySQL. From the programmers point of view there is no difference (apart from the better SQL support). The same goes for SapDB, Oracle, MSSQL, etc.
Exactly how is MySQL 'optimised for simple web applications' in a way that any other database isn't? Is there some sort of built-in query optimizer that recognises SQL from web applications, or am I missing something?
Also, how do you think those "massively multiprocessing Unix mainframes" are implemented? They are increasingly just expensively packaged, expensively networked collections of individual machines.
Like... no. They are extremely carefully designed shared memory multiprocessors. They are NOT in any sense individual machines.
As virtually all new phones come with Java built-in, its kind of moronic not to use it.
Of course, if you prefer wasting your time hard-coding OpenGL calls and re-compiling for each make of phone, that is up to you, but as a business model its suicide.
Usual Cringley nonsense. Sun haven't given up on anything. They get access to MS APIs. They get billions of dollars. Why? They agreed to an out of court settlement from Microsoft, which Microsoft wanted as a way of trying to look good so as to calm down the Europeans.
Sun won. They sued Microsoft and got paid by them.
I'm convinced that will be the case, as there is a huge mistrust of Microsoft in enterprise-scale IT. However, as.Net developer kit sales increase Microsoft and the less informed (i.e. majority) of IT commentators will talk of a threat to Java.
That's because most web servers don't even come close to needing the resources of even a single low-end machine. But that isn't Sun's business.
You are confusing web servers with app servers. Almost all hosting services offer app server capabilities, such as PHP+Mysql combinations. These do need resources.
Yes, a last-gasp effort by big iron vendors to stem the tide.
No. A response to customer demand in an expanding high-end server market.
Given that there really are only two 3D standards, I'd much rather it was OpenGL than Direct3D.
If you are developing software for future mobile phones you are almost certainly going to be using Java (J2ME), as there is no way you want your compiled code to be limited to a specific CPU or operating system on those devices. In that case you will be coding using the Java 3D API which hides the specific 3D libraries on the device. So why do you care if its OpenGL? Why should you care?
Not exactly. JSF does not "replace" Struts at all, rather, JSF is more of a replacement for JSP's.
This is completely wrong. JSF is a total replacement for struts at all levels: model, view and controller. The JSP aspect of JSF is only one implementation of the presentation layer of JSF, and the reference implementation of JSF includes a JSP taglib front-end. One of the big advances of JSF is that it can in principle render all sorts of interfaces: WAP, XML, Swing, SWT, yet the underlying Java code and XML mapping of actions and validators remains the same. JSF is designed to be more than just a web form coding system.
Struts will allow you to use Java Server Faces JSP tags for the view, but that is only one small part of JSF.
The inventor of Struts has moved on and has been working with Sun to produce a new and more versatile framework called Java Server Faces:
http://java.sun.com/j2ee/javaserverfaces/
This is the framework that is being adopted by all major java IDE designers: NetBeans, Borland, Oracle etc. Fortunately, its not difficult to integrate struts and JSF, but for newer projects, JSF makes sense. It has an advantage in that the GUI doesn't have to be web pages - you will be able to 'plug in' WAP, Swing etc.
..after all, the Windows APIs are publicly documented, in at least as much detail as Java, and people can implement them freely.
Publically documented? No they aren't, that's one of the reasons why the EU sued Microsoft - so they would publish APIs and protocols.
People can implement them freely? Yeah, like if you even try to name a product something like Windows (e.g. Lindows) you get sued.
in reality, there isn't a Java standard, there is a single Java implementation (Sun Java), its derivatives (Blackdown, IBM, Apple), and its API documentation (the J2SE/J2EE "specifications"). If Java were an open standard, people could implement it without any restrictions (not even compatibility requirements), but compatible and complete third party implementations would exist (no, gcj and kaffe don't count).
Wrong. IBM, apple etc are full java implementations, not derivatives. And you can implement Java without restrictions. However, if you want to call the result 'Java' you must be compatible, otherwise what is the point? Look at the compatibility disaster that exists in other languages, such as C++ and Smalltalk. The whole point of Java is you don't need conditional compilation for different manufacturer's versions.
And yes, gcj and kaffe DO count. gcj can run IBM's eclipse IDE - that's impressive and useful.
You are looking at the UML describing the mechanism of how JSF works and how its implemented by tool providers.
JSF is simple for developers who use JSF to produce web interfaces: Its only a few lines of XML and and some tags on a JSP page.
Microsoft is bad, bad, bad, and anyone who chooses their products is degraded and called stupid.
As a Microsoft product user for nearly 30 years (I used their Z80 Assembler in the 70s), and having been in the IT business for over 20, I think that this is a pretty reasonable statement.
http://wwws.sun.com/software/products/jscreator/in dex.html
Java Server Faces is totally free, and its not complex at all, especially when compared to hard-coding form validation in Perl/CGI. Mature tool support is available in the next few months from Sun, Borland, IBM and oracle. There is a free implementation that can be downloaded from Sun's website, and a free evaluation (but working) copy of the Creator visual designer.
You may need to crack open the lid at some point, but GUI tools will get you most of the way.
That's a great statement, but it ain't true. Our business doesn't need an Office package. Our hangup are other, specialized programs.
Its true for a reasonable value of 'true', that is for the majority of all desktop systems and for almost all enterprise workstations.
there is no argument that... using MySQL and Perl will aid immensely in that development
Translation: either ignorance or flamebait.
You don't use phrases like 'no argument' without expecting an argument.
Perl is a superb scripting language for system coding, but...
Now with systems like Java Server Faces and Creator you can design a web form in a few seconds using a drag-and-drop designer, clip in some data validators, and visually design navigation through a complex website. A few more clicks and you have an single archive file that can be dropped into any J2EE application server, using any JDBC database on any platform.
You can design, code and test complex form-based web applications in minutes.. and all the tools are free.
So why would anyone want to hand-code all this in Perl?
Even more puzzling, given that Perl has a portable database interface, why restrict things to MySQL?
The article misses the most important reason to consider Open (or Star) Office - portability. Its a well-established (but unfortunately often forgotten) good business principle to never tie yourself in to one supplier.
Until a couple of years ago there was no 'good enough for most purposes' alternative to MS Office. Now there is, and companies finally have freedom to choose their desktop systems.
Switch to Open Office and you can migrate gradually to Unix or Linux desktops using the same Office system throughout. The mere possibility of doing this should be more than enough justification for most businesses evaluating Open Office.
See gcj and SableVM. These ship free with many Linux distributions, including Debian. There is nothing to stop open source fans using open source Java.
The MS implementation of Java was pretty good - and very fast - but was being used to cooerce developers into writing for only the Windows platform.
I also miss having an equivelant to the Excel solver utility, which can optimize hundreds of variables at once to minimize/maximize a result.
Woah! Maybe I'm a mere scientist and not an accountant, but I would not trust anything I did not have the code for to fiddle about with even a few variables at once to perform a minimization. Its hugely tricky stuff, even if you know an underlying mathematical model for your data.
You simply can't prove that what you get is a real maximum or minimum, and not a false local max or min.
... is the mindset that "something is wrong with it".
This mindset is rare. Java is the most widely requested skill in the IT industry. Its only in geek-filled forums like Slashdot that there is a strange dislike of Java.
Scalability is often not a case of 'enterprise level design', but a sensible choice of platform and technology at the start. Its about allowing for the possibility of enterprise design in the future. Its not about buying Oracle or whatever, its about enabling that possibility.
This does not take a lot of work, but it does require a more professional attitude than "I gave up with Postgresql after a few hours, and decided to go with MySQL because its cool."
The ruby-> java bytecode sounds interesting (although I would not use a pre-alpha stage project for business development) is but you would still not be using OpenGL - you would be using an even higher level of abstraction away from the OpenGL driver.
You are missing the point. The point is that other databases, such as Postgresql, offer virtually all the SQL features of Oracle including a reasonably compatible PL/SQL language. Oracle is not a simple database. Developers tend to use its features. MySQL can't provide those features. Other databases can.
Suggesting a migration from Oracle specifically to MySQL is typical management bullshit along the lines of 'I have heard of both of those and they are both databases, so they must be the same'.
People need to use SQL and need something simple and fast. Postgresql is not optimised for simple web applications out of the box.
Yes it is. You connect to it with PHP, JDBC, ODBC or whatever and use it just as you would use MySQL. From the programmers point of view there is no difference (apart from the better SQL support). The same goes for SapDB, Oracle, MSSQL, etc.
Exactly how is MySQL 'optimised for simple web applications' in a way that any other database isn't? Is there some sort of built-in query optimizer that recognises SQL from web applications, or am I missing something?
You're right, not everybody has to worry about those issues, but maybe they should.
Well said! I seem to have spent most of my working life fixing projects that were initially designed as small systems that 'will never need to scale'.
Good software engineering practice is to allow scalability, security and real transactional integrity from the start.
Also, how do you think those "massively multiprocessing Unix mainframes" are implemented? They are increasingly just expensively packaged, expensively networked collections of individual machines.
Like... no.
They are extremely carefully designed shared memory multiprocessors. They are NOT in any sense individual machines.
Ah! Usual /. anti-Java dogma.
As virtually all new phones come with Java built-in, its kind of moronic not to use it.
Of course, if you prefer wasting your time hard-coding OpenGL calls and re-compiling for each make of phone, that is up to you, but as a business model its suicide.
Usual Cringley nonsense. Sun haven't given up on anything. They get access to MS APIs. They get billions of dollars. Why? They agreed to an out of court settlement from Microsoft, which Microsoft wanted as a way of trying to look good so as to calm down the Europeans.
Sun won. They sued Microsoft and got paid by them.
I'm convinced that will be the case, as there is a huge mistrust of Microsoft in enterprise-scale IT. However, as .Net developer kit sales increase Microsoft and the less informed (i.e. majority) of IT commentators will talk of a threat to Java.
That's because most web servers don't even come close to needing the resources of even a single low-end machine. But that isn't Sun's business.
You are confusing web servers with app servers. Almost all hosting services offer app server capabilities, such as PHP+Mysql combinations. These do need resources.
Yes, a last-gasp effort by big iron vendors to stem the tide.
No. A response to customer demand in an expanding high-end server market.
Given that there really are only two 3D standards, I'd much rather it was OpenGL than Direct3D.
If you are developing software for future mobile phones you are almost certainly going to be using Java (J2ME), as there is no way you want your compiled code to be limited to a specific CPU or operating system on those devices. In that case you will be coding using the Java 3D API which hides the specific 3D libraries on the device. So why do you care if its OpenGL? Why should you care?