hi to all

well i know html, css javascrpit php apache and mysql. but now i am learning jsp and I DONT HAVE ANY JAVA PROGRAMMING EXPERIENCE!!!:sad:


uptill now i just cant figure out whats java and jsp all about well i know its a serverside scripting for web development in java but to start validating forms creating shopping carts and ecommerce online transactions wowow that gonna be very veyr tough please help


thanks

but to start validating forms creating shopping carts and ecommerce online transactions wowow that gonna be very veyr tough please help

And that's why you should start small...
Baby steps, not giant leaps.

And do NOT use that linked tutorial. It's about 7 years out of date, and teaches you exactly how you should NOT work.

hi jwenting, I am also new to jsp. what do you suggest.
I am looking at reducing my learning time tremendously. I am ready to work. Already a programmer 12 yrs. Looking at java and jsp but have little know-how. I was already looking at the tutorial before i saw your advice.
Will be glad to hear from you.
I hope this does not qualify as a private message asking for help:)

And that's why you should start small...
Baby steps, not giant leaps.

And do NOT use that linked tutorial. It's about 7 years out of date, and teaches you exactly how you should NOT work.

Get yourself some good books.
Head First Servlets and JSP for starters, and O'Reilly's JSP book (be sure to get the 3rd edition or later, the others are outdated).

Install Tomcat, read those books, and start experimenting.

Now I have not seen the site in the link above and jwenting and I have had words over "opinion" about what is right and what is not... Unfortunately, I find his posts to be very little help to most people, he seems to want to post to everything but usually says little more than, "good luck", or "go find out for yourself" type of things... which is just what he has done here... How can he be a moderator when he doesn't wish to help people, and his posts are so negative, I have no idea...

There is nothing wrong with learning to code however it works for you... You can learn using scriptlets, then when you feel comfortable you can move the scriptlets into a custom tag library, a change which takes very little effort. Then you can, if you choose, build robust servlet MVC applications...

He loves to say that things are 7 years out of date and since that site has been registered for 7 years he would have you believe the content was outdated the moment it was published...

Do what works for you, but don't stop learning just because you found 1 way, always search for newer, better ways, and don't get a closed mind like some people we know...

When you actually know what you're doing help people on tech lists rather than just shine them on, and remember the ancient Japanese proverb... "Junin Toiro" roughly translated... "10 people, 10 colors" which sounds more pleasant than the equivalent English phrase, "Different Strokes for Different Folks"... "Different Strokes" now that was a good TV show ;-)

Peace,

Now, for some programming advice...

using Java & JSP is not so hard...
You can put all the code into the JSP pages, you can separate some or all of your logic into servlets (small independant routines that run on the server) and leave you presentation logic in jsp files... you can use beans to store data between for passingbetween the logic and jsp, or jsp to jsp, and you can create custom tags to do specific logic that is unique to your site...

in the begining jsp did NOT have any way to loop through a code sequence repeatedly... this was a great weakness of JSP and so developers were forced to either
a) limit their output to fixed number of itterations... troublesome at best

b) create custom tags that would cause a loop.... common in professional applications where they wanted to hide the code...

c) use embedded Java (scriptlets) inthe code to control the loop...

This is just one example of why scriptlets were frequently needed.

Beans can also do more than just store information, you can program any logic into the bean code and trigger it either by the bean constructor or by a call into the bean from the jsp page... this use of beans removes the need, almost entirely, for servlets...

Then there is the MVC which stands for Model View Controller, a fancy way of saying separate logic, data storage "state", and presentation... in the MVC architecture model jsp "shows" the content to the user, and collects data via forms from the user... the forms are sent to the servlets on the server... the servlets handle the logic of processing the data and determine the results... the servlets place any output data, results, etc. into beans objects and save those into a scope that will persist, request, session or application... depending upon the need... the servlet then "forwards" the request to a jsp page, logic can choose between jsp pages if you like, to determine which one to show... this is a unique feature of Java over most other web coding languages... Java can pass the request off to another page, etc. to finish processing... most others cannot do that... that means that the servlet that processes your form, could pass the request to another servlet, and another and antoher, etc. prior to passing it off to the jsp page.... the jsp page, of course, shows the output....

This makes it easier to work in larger projects because it encapulates the code segments into logically related pieces and they are "pluggable" meaning they don't care what the other pieces do, or how, they just do what they do... you can modify the jsp page to chnage the display, without any effect on the servlet, or bean....

Oh, the bean, I forgot to mention... the data that was saved int he bean, because the bean was saved in a scope that persisted, canbe read from the jsp page so it know exactly what the results of the servlet processing were... at least the part it cares about...

jsp's key items are useBean, getProperty and setProperty... for accessing those beans...

Servlets are a bit more trickly but basically they are Java Classes that extend the HttpServlet class and implement the "action" methods of that parent class, but only the ones you need... so you can only worry about what you need... frequestly these are doPost and doGet...

Beans are just Java classes which usually store properties as private variables, and use methods to set or get the values of these properties... as I said, they can do much more too, but they don't have to...

it can be as simple as

private String name = "";

public void setName(String name){
this.name = name; // this.name keyword indicates the bean's name variable as opposed to the local name variable
}

public String getName(){
return this.name;
}


database access from a jsp, servlet or bean is a simple matter... I created a class file in which I place my connection code so I can obfuscate the passwords and usernames for db access, something that is hard to do in ASP, php, etc...

The rest of building you high end applications is the creative use of JSP, Java, Javascript, CSS, HTML, XML, databses and etc. most of which you already know...

thanks rgtaylor for your reply. It is pretty much appreciated:)
I am very much involved with microsoft ASP.Net. Do you have any knowledge of this environment. If the answer is yes, can you highlight the asp.net counterpart or parallels of the features you just itemized in jsp. This would aid my "birdseye view" understanding of the subject matter. Thanks alot man!(I presume)

Now, for some programming advice...

using Java & JSP is not so hard...
You can put all the code into the JSP pages, you can separate some or all of your logic into servlets (small independant routines that run on the server) and leave you presentation logic in jsp files... you can use beans to store data between for passingbetween the logic and jsp, or jsp to jsp, and you can create custom tags to do specific logic that is unique to your site...

in the begining jsp did NOT have any way to loop through a code sequence repeatedly... this was a great weakness of JSP and so developers were forced to either
a) limit their output to fixed number of itterations... troublesome at best

b) create custom tags that would cause a loop.... common in professional applications where they wanted to hide the code...

c) use embedded Java (scriptlets) inthe code to control the loop...

This is just one example of why scriptlets were frequently needed.

Beans can also do more than just store information, you can program any logic into the bean code and trigger it either by the bean constructor or by a call into the bean from the jsp page... this use of beans removes the need, almost entirely, for servlets...

Then there is the MVC which stands for Model View Controller, a fancy way of saying separate logic, data storage "state", and presentation... in the MVC architecture model jsp "shows" the content to the user, and collects data via forms from the user... the forms are sent to the servlets on the server... the servlets handle the logic of processing the data and determine the results... the servlets place any output data, results, etc. into beans objects and save those into a scope that will persist, request, session or application... depending upon the need... the servlet then "forwards" the request to a jsp page, logic can choose between jsp pages if you like, to determine which one to show... this is a unique feature of Java over most other web coding languages... Java can pass the request off to another page, etc. to finish processing... most others cannot do that... that means that the servlet that processes your form, could pass the request to another servlet, and another and antoher, etc. prior to passing it off to the jsp page.... the jsp page, of course, shows the output....

This makes it easier to work in larger projects because it encapulates the code segments into logically related pieces and they are "pluggable" meaning they don't care what the other pieces do, or how, they just do what they do... you can modify the jsp page to chnage the display, without any effect on the servlet, or bean....

Oh, the bean, I forgot to mention... the data that was saved int he bean, because the bean was saved in a scope that persisted, canbe read from the jsp page so it know exactly what the results of the servlet processing were... at least the part it cares about...

jsp's key items are useBean, getProperty and setProperty... for accessing those beans...

Servlets are a bit more trickly but basically they are Java Classes that extend the HttpServlet class and implement the "action" methods of that parent class, but only the ones you need... so you can only worry about what you need... frequestly these are doPost and doGet...

Beans are just Java classes which usually store properties as private variables, and use methods to set or get the values of these properties... as I said, they can do much more too, but they don't have to...

it can be as simple as

private String name = "";

public void setName(String name){
this.name = name; // this.name keyword indicates the bean's name variable as opposed to the local name variable
}

public String getName(){
return this.name;
}


database access from a jsp, servlet or bean is a simple matter... I created a class file in which I place my connection code so I can obfuscate the passwords and usernames for db access, something that is hard to do in ASP, php, etc...

The rest of building you high end applications is the creative use of JSP, Java, Javascript, CSS, HTML, XML, databses and etc. most of which you already know...

I use ASP/ASP.Net and VBA at work from time to time... more often than I would like to be honest... What you have to realize is that VB (Visual Basic) was Microsoft's way of reviving the BASIC lanuage and making it available to use for manipulating the visual components on the screen... it was a cheap and easy way for them to add a scripting langauge to Windows which didn't really exist prior.

Prior to that, most scripting in Windows was done with DOS .bat files... but the limitations in the design of DOS and the fact it usually required a DOS window was an issue. Meanwhile Unix and Linux had robust shell scripting which didn't actually require shell windows at all...
Later they adapted VB for a server side scripting langauge creating VBS as a subset of VB... to help differeniate as people became confused by the differences, they relabeled VB into VBA...
Visual Basic for Applications
Visual Basic for Scripting

They released the .Net framework following in the wake of the STL from C/C++ and even the JSTL in Java... thegeneral concept was to create a single function call that would require more parameters at once, but could do the functionality that previously required several function calls... Also by providing this library to be able to interact with various programming langugaes they could "lock" people into MS...
Unfortunately, this also removes your control on the performance, etc. of the applications that use .Net... However, for beginners it made things easier, as you don't have to go through 6 steps to connect to a database.... 1 call is enough... BUT gehind the scenes it is still take the same steps... MS labeled this "Chunky" programing.... the use of many parameters in 1 function call over making several function calls with a few parameters each...

So in Java you might have to declare a set of strings with the DB connection information, including driver class, etc... Then you have call the class loader to load the driver for the JDBC... then you have create a DB connection using the driver and the connection parameters... this is 1 step in .Net...

In Java you have to create a SQL statement object or a PreparedStatement object... Java recommedns ALWAYS using the prepared statement for security reasons...
The you set the parameters of the prepared statement and then you execut the query and store the results in ResultSet object.... Again, in .Net that is all 1 step.... BUT .Net doesn't really handle the prepared statement method... see the prepared statement allows JAVA to plug in the values you requires for SQL... it will escape, quote etc. as is appropriate for each data type, it checks the data types carefully, etc.. so you can't try to hack iy by typical DB embeded selects etc. methods... I don't want to give hacking tips here, so I won't go into detail... but Java will catch that and escape it... so it will be harmless text by the time it reaches your DB.... this is why Java recommends the use of the prepared statement ALWAYS... In fact, in newer JDBC it is ALWAYS and prepared statement internally anyway... so there is no real performance difference etc. in not using a prepared statement... so err on the security side...
.Net doesn't do that, as far as I know...

In .Net you can build objects and store them on the server and use these objects much like beans, but they are much more complex to use and actually significantly slower...

Also, MS IIS is the worst web server in the world... My son could code a better performing server... in production environments, and I know this because I worked for many years in a leading Enterprise Solutions Company which used MS Servers almost exclusively... IIS performance begins to drop significantly after about 200 concurrent users... between 300 to 400 the drop is exponential and IIS pretty much falls over around 400 concurrent users... So when customers used one of our Java based solutions, they could have many more users, several times as many, users active with each server in the cluster, but if they used one of our MS IIS based solutions they woudl have to buy a great deal more hardward, cluster several times as many servers just to do the same job....
And .Net works primarily with ODBC, it is notimpossible to use other systems, but it is tricky at best, and it works best with MS SQL Server.... the industry experts, of which I AM one, will tell you that SQL Server is NOT an Enterprise class Database... If we use SQL Server we had to use several machines where using Oracle, etc. we could use just 1...
Case in Point, SQL server suffers from deadlocks in their DB frequently while the same DB schema will not have any trouble on most other systems... deadlock will cause seriously slowing of the SQL server if they happen only intermittently, and will crash the server, without any sign, if they happen frequently... I say without any sign, because the server application is still running, but it will "freeze" it will be completely non-responsive...

As far as I know there is NO way in VB.Net to forward a request to another page without the user getting a forward notice... Also, Java/JSP can query other sites in the background, including POST and GET data in the query and return the results, process them if needed and include the results as-is or after processing into the output from the page... I built a special library of functions in PHP several years ago to simulate this, but it is native to Java... But forwarding the Java way is only in Java as far as I know...

Now as far as I know VB scope in an IIS server is limited to transaction and session... anything more and you must build it yourself, typically using some kind of database or in-memory work around... which is just really using session scope with extra parameters to simulate page or request scope.... though I think for application scope you have to rely on a DB workaround... a lot of work for something Java does Naturally...

Now, I may be wrong about some of these comments regarding .Net's most recent capabilities... I have pushed my people to avoid using VB and VB.Net as much as possible, but we do have some projects where .Net was the only choice... simply because we were adapting code already written in .Net...
But we all really hate workingin .Net...
Remember, one-size-fits-all solutions are not really realistic... I think we all know that... so why would we agree to use a .Net framework where the same code is then used with VB, C++, etc.... one-size-fits-all code is crap... Borlund did that with their "Builder" applications... ALL of the builder applications used the Borland Delphi library of objects... SO C++ Builder would pass function calls from you C++ code to Delphi objects and pass the return values to you C++ code... the limitation in the Delphi language caused issues with how/what you code using this architecture... because one-size-DOES-NOT-fit-all.... The .Net framework is exactly the same...

Long but helpful, I hope ;-)
Peace,
For the record I am Co-Founder, CEO and President of an IT Consulting and Services company... My background is in System design and architecture and business process consulting and design. I spent many years working for some of the largest Enterprise Solutions companies in the world and when the biggests named companies in the IT industry had problems, questions or concerns, they came to me for answers... I am not flawless, but I do know what I am talking about ;-)

Comments
Wonderful

WOW! WOW!! WOW!!!
rgTaylor, That was something else:-/ . Thanks a great deal and that was a lot to think about.

What is

I use ASP/ASP.Net and VBA at work from time to time... more often than I would like to be honest... What you have to realize is that VB (Visual Basic) was Microsoft's way of reviving the BASIC lanuage and making it available to use for manipulating the visual components on the screen... it was a cheap and easy way for them to add a scripting langauge to Windows which didn't really exist prior.

Prior to that, most scripting in Windows was done with DOS .bat files... but the limitations in the design of DOS and the fact it usually required a DOS window was an issue. Meanwhile Unix and Linux had robust shell scripting which didn't actually require shell windows at all...
Later they adapted VB for a server side scripting langauge creating VBS as a subset of VB... to help differeniate as people became confused by the differences, they relabeled VB into VBA...
Visual Basic for Applications
Visual Basic for Scripting

They released the .Net framework following in the wake of the STL from C/C++ and even the JSTL in Java... thegeneral concept was to create a single function call that would require more parameters at once, but could do the functionality that previously required several function calls... Also by providing this library to be able to interact with various programming langugaes they could "lock" people into MS...
Unfortunately, this also removes your control on the performance, etc. of the applications that use .Net... However, for beginners it made things easier, as you don't have to go through 6 steps to connect to a database.... 1 call is enough... BUT gehind the scenes it is still take the same steps... MS labeled this "Chunky" programing.... the use of many parameters in 1 function call over making several function calls with a few parameters each...

So in Java you might have to declare a set of strings with the DB connection information, including driver class, etc... Then you have call the class loader to load the driver for the JDBC... then you have create a DB connection using the driver and the connection parameters... this is 1 step in .Net...

In Java you have to create a SQL statement object or a PreparedStatement object... Java recommedns ALWAYS using the prepared statement for security reasons...
The you set the parameters of the prepared statement and then you execut the query and store the results in ResultSet object.... Again, in .Net that is all 1 step.... BUT .Net doesn't really handle the prepared statement method... see the prepared statement allows JAVA to plug in the values you requires for SQL... it will escape, quote etc. as is appropriate for each data type, it checks the data types carefully, etc.. so you can't try to hack iy by typical DB embeded selects etc. methods... I don't want to give hacking tips here, so I won't go into detail... but Java will catch that and escape it... so it will be harmless text by the time it reaches your DB.... this is why Java recommends the use of the prepared statement ALWAYS... In fact, in newer JDBC it is ALWAYS and prepared statement internally anyway... so there is no real performance difference etc. in not using a prepared statement... so err on the security side...
.Net doesn't do that, as far as I know...

In .Net you can build objects and store them on the server and use these objects much like beans, but they are much more complex to use and actually significantly slower...

Also, MS IIS is the worst web server in the world... My son could code a better performing server... in production environments, and I know this because I worked for many years in a leading Enterprise Solutions Company which used MS Servers almost exclusively... IIS performance begins to drop significantly after about 200 concurrent users... between 300 to 400 the drop is exponential and IIS pretty much falls over around 400 concurrent users... So when customers used one of our Java based solutions, they could have many more users, several times as many, users active with each server in the cluster, but if they used one of our MS IIS based solutions they woudl have to buy a great deal more hardward, cluster several times as many servers just to do the same job....
And .Net works primarily with ODBC, it is notimpossible to use other systems, but it is tricky at best, and it works best with MS SQL Server.... the industry experts, of which I AM one, will tell you that SQL Server is NOT an Enterprise class Database... If we use SQL Server we had to use several machines where using Oracle, etc. we could use just 1...
Case in Point, SQL server suffers from deadlocks in their DB frequently while the same DB schema will not have any trouble on most other systems... deadlock will cause seriously slowing of the SQL server if they happen only intermittently, and will crash the server, without any sign, if they happen frequently... I say without any sign, because the server application is still running, but it will "freeze" it will be completely non-responsive...

As far as I know there is NO way in VB.Net to forward a request to another page without the user getting a forward notice... Also, Java/JSP can query other sites in the background, including POST and GET data in the query and return the results, process them if needed and include the results as-is or after processing into the output from the page... I built a special library of functions in PHP several years ago to simulate this, but it is native to Java... But forwarding the Java way is only in Java as far as I know...

Now as far as I know VB scope in an IIS server is limited to transaction and session... anything more and you must build it yourself, typically using some kind of database or in-memory work around... which is just really using session scope with extra parameters to simulate page or request scope.... though I think for application scope you have to rely on a DB workaround... a lot of work for something Java does Naturally...

Now, I may be wrong about some of these comments regarding .Net's most recent capabilities... I have pushed my people to avoid using VB and VB.Net as much as possible, but we do have some projects where .Net was the only choice... simply because we were adapting code already written in .Net...
But we all really hate workingin .Net...
Remember, one-size-fits-all solutions are not really realistic... I think we all know that... so why would we agree to use a .Net framework where the same code is then used with VB, C++, etc.... one-size-fits-all code is crap... Borlund did that with their "Builder" applications... ALL of the builder applications used the Borland Delphi library of objects... SO C++ Builder would pass function calls from you C++ code to Delphi objects and pass the return values to you C++ code... the limitation in the Delphi language caused issues with how/what you code using this architecture... because one-size-DOES-NOT-fit-all.... The .Net framework is exactly the same...

Long but helpful, I hope ;-)
Peace,
For the record I am Co-Founder, CEO and President of an IT Consulting and Services company... My background is in System design and architecture and business process consulting and design. I spent many years working for some of the largest Enterprise Solutions companies in the world and when the biggests named companies in the IT industry had problems, questions or concerns, they came to me for answers... I am not flawless, but I do know what I am talking about ;-)

sorry rgTaylor! The last sentence wasn't captured by my computer. I guess I was just typing away and eventually hit the post button:(
What I was about to ask was this: I was wondering what the J2eee meant in the light of your explanations. Thanks once again. You have indeed been most helpful.

WOW! WOW!! WOW!!!
rgTaylor, That was something else:-/ . Thanks a great deal and that was a lot to think about.

What is

Originally J2EE was a short acronym for a Java platform variant for each version....

Thus Java 1.2 (Called Java 2) had J2SE and J2EE (Standard Edition and Enterprise Edition) respectively. The EE variant had some additonal tools that were thought to by unique to requirements of an enterprise system (large scale business oriented system)...

Later the J2EE took on a life of its own, developing into more of a framework, and even becoming a standard of "how things worked"... The general idea is that if you are developing a system to meet a small scale need, a small business, a one-off system etc. then you can build it any way you like and typically have total control over the entire envornment; HOWEVER, in an enterprise environment the systems are typically standardized for reuse, resale and/or compatibility with various hardward/OS/Network etc. environments... The promise of Java's write once run anywhere is a key of the J2EE world... If an application is built to follow these standards it should be 99% sure to run on any architecture that is J2EE certified... I say 99% because the ideal has never been truely reached and there is a difference between "compatible" and "compliant"... while compliant means follows the rules 100%, compatible simple means it will work... symantically small difference, actually a large difference... as we see in browsers every day...

Since takingon this nature of a standard many extensions to the J2EE have developed, including Enterprise Bean as opposed to regualr Java Beans...
Java Beans make upto 10 cups
Enterprise Beans make 1000s of cups...
small joke... but fairly accurate ;-)

Ok, no one every said I was funny, except that girl at the mall (and put looking after it)...

So if you want to create enterprise solutions which will likely be able to run on numerous systems and resell these you will want to learn the ins and outs of the J2EE also...

ALSO, J2EE incorporates interation between systems, so if you need to integrate with other systems, J2EE is the best way to start...

Now, the biggest enterprise software vendors in the world are NOT J2EE compliant, they may in SOME aspects be J2EE compatible, but that is even stretching it...

ONE major problem with stanardization is that you loose any advantage you may have with prorietary design... some people say the benefits outweight the risks, but those benefits are typically theoretical and usually end user/ customer focused, Unless the corporate giants see stronger REAL benefits they won't willing walk the path, as it requires significant real costs to even find the path...

The theoretical benefits may or may not materialize, but they will never find out because they choose to take the easiest path...

It will come eventually, because more and more customers want the assurance that they system will work correctly with their other systems, the J2EE battle cry gives them a false sense of security, but unless you are crying this with them, many of them won't talk to you these days... It is not yet reached critical mass though...Still too many customers put their pocket books before their brains... compliance has a cost up front, and the promise of lower TCO (Total Cost of Ownership)... but they all too often look only the the up front impact on their wallets...

Whenever I do any project, PHP, JSP, etc. I provide 5 and 10 year costs break downs... It requires knowledge of "true" consulting, to analyze the costs related with "doing nothing", which is always an option, or taking other available options, or doing it the way I suggest...

When done well, you will seldom loose to the cheaper option if your solution is truely superior...

I showed a 200% ROI (Return On Investment) in 6 months and a 5 year NPV (Net Present Value) of a solution versus the 2 main options (do nothing & verdor Bs solutions)... Both other options were VERY cheap up front, while my options freed a large number of workers to do other things reducing the effective manpower costs required to do the same work... meanwhile showing long term growth and maintenance plans that cost very little while the other options did little to effectivly reduce workload and had higher maintenance and growth costs...

Do nothing was ruled out within the first year's ROI, and vendor B's solution was rules out after the second year's ROI...

If this customer had been only looking at up front costs, as so many do, he would never have paid my price which was 4 times that of vendor B... But presenting it in the way I did forced them to look at the TCO...

J2EE can help you with this, but it also introduces a level of complexity...

That was pretty good as usual;) Thanks for the insight:cool:

Originally J2EE was a short acronym for a Java platform variant for each version....

Thus Java 1.2 (Called Java 2) had J2SE and J2EE (Standard Edition and Enterprise Edition) respectively. The EE variant had some additonal tools that were thought to by unique to requirements of an enterprise system (large scale business oriented system)...

Later the J2EE took on a life of its own, developing into more of a framework, and even becoming a standard of "how things worked"... The general idea is that if you are developing a system to meet a small scale need, a small business, a one-off system etc. then you can build it any way you like and typically have total control over the entire envornment; HOWEVER, in an enterprise environment the systems are typically standardized for reuse, resale and/or compatibility with various hardward/OS/Network etc. environments... The promise of Java's write once run anywhere is a key of the J2EE world... If an application is built to follow these standards it should be 99% sure to run on any architecture that is J2EE certified... I say 99% because the ideal has never been truely reached and there is a difference between "compatible" and "compliant"... while compliant means follows the rules 100%, compatible simple means it will work... symantically small difference, actually a large difference... as we see in browsers every day...

Since takingon this nature of a standard many extensions to the J2EE have developed, including Enterprise Bean as opposed to regualr Java Beans...
Java Beans make upto 10 cups
Enterprise Beans make 1000s of cups...
small joke... but fairly accurate ;-)

Ok, no one every said I was funny, except that girl at the mall (and put looking after it)...

So if you want to create enterprise solutions which will likely be able to run on numerous systems and resell these you will want to learn the ins and outs of the J2EE also...

ALSO, J2EE incorporates interation between systems, so if you need to integrate with other systems, J2EE is the best way to start...

Now, the biggest enterprise software vendors in the world are NOT J2EE compliant, they may in SOME aspects be J2EE compatible, but that is even stretching it...

ONE major problem with stanardization is that you loose any advantage you may have with prorietary design... some people say the benefits outweight the risks, but those benefits are typically theoretical and usually end user/ customer focused, Unless the corporate giants see stronger REAL benefits they won't willing walk the path, as it requires significant real costs to even find the path...

The theoretical benefits may or may not materialize, but they will never find out because they choose to take the easiest path...

It will come eventually, because more and more customers want the assurance that they system will work correctly with their other systems, the J2EE battle cry gives them a false sense of security, but unless you are crying this with them, many of them won't talk to you these days... It is not yet reached critical mass though...Still too many customers put their pocket books before their brains... compliance has a cost up front, and the promise of lower TCO (Total Cost of Ownership)... but they all too often look only the the up front impact on their wallets...

Whenever I do any project, PHP, JSP, etc. I provide 5 and 10 year costs break downs... It requires knowledge of "true" consulting, to analyze the costs related with "doing nothing", which is always an option, or taking other available options, or doing it the way I suggest...

When done well, you will seldom loose to the cheaper option if your solution is truely superior...

I showed a 200% ROI (Return On Investment) in 6 months and a 5 year NPV (Net Present Value) of a solution versus the 2 main options (do nothing & verdor Bs solutions)... Both other options were VERY cheap up front, while my options freed a large number of workers to do other things reducing the effective manpower costs required to do the same work... meanwhile showing long term growth and maintenance plans that cost very little while the other options did little to effectivly reduce workload and had higher maintenance and growth costs...

Do nothing was ruled out within the first year's ROI, and vendor B's solution was rules out after the second year's ROI...

If this customer had been only looking at up front costs, as so many do, he would never have paid my price which was 4 times that of vendor B... But presenting it in the way I did forced them to look at the TCO...

J2EE can help you with this, but it also introduces a level of complexity...

hi,everyone:
I want to study jsp,but what am I do,where begin from.I can write java program,Can you help me?:)

Java is a powerful tool. Not as powerful as a C/C++ tool could be, but MUCH easier to use and faster to develop with. Easier to troubleshoot, etc..

I learned programming long before Java was an option. When Java first became available I was less than interested because of how slow it was. Over the years they have done a good job at improving its performance. PC speeds have largely made the differences in many cases miniscule, and a little known fact is that for some operations Java has actually exceeded the performance of C... I know many people out there will try to argue but scientific tests and evaluation have been done with each new version available and in some areas, as of Java 1.5, Java surpassed C... This is very positive news...

In any case, I learned Java, grudgingly, because even then I could see some of the benefits it could potentially yield. Since I knew C/C++ it was an easy thing to learn Java, but I had to "unlearn" a few things which are habit for C programmers but which don't apply to Java.

I honestly believe that it is the competition between the programming languages that has led all of them, C vs C++ vs Java vs PHP vs ETC. to improve not just their performance but also their usability. Arrays that grow dynamically, etc. were always a problem for C/C++ and Java too, but in the drive to be better, they created Vectors, Lists, etc. in standard libraries, which were often very similar across languages... The real winner becomes the programer who no longer has to custom code as many storage classes, etc. as he used to...

Java was built to use UTF-8, which I love because I develop system for international use and C/C++ were never quite so easy. However, to maintain compatibility with C/C++ based systems the I/O routines in Java were defaulted to ASCII (Latin-1), thus they are read as Latin-1 streams but then converted to UTF-8 for storage and converted back on output... SO, people like me have to specifically indicate when we want the I/O to be read as UTF-8, which means no translation is needed... I wish Java had not done that, they should have forced others to justify NOT using internationalizable code instead.

Anyway, Java still lacks some of the fine control and poower of C/C++ but for most people's requirements it is more than sufficient.

In fact, I have spent many years working in the enterprise software industry and the trend globally is moving to "thin client" interfaces. Corporations don't want the expense of installing and maintaining software on thousands of PC enterprise wide... They want to use the tools already available on the PC's, i.e. the browser, MS Office, Outlook, etc. to do the job...

A thin client is basically a network based application that uses a browser or some integration technology to avoid installing any client software in each machine. Web Deployment is a half-way measure some will accept, but most want IE/FF available applications.

This means that Java has become the platform of demand... Java, Javascript, CSS and XML are the skills you need to become a high valued, high paid asset...

Due the development costs in the West, many companies are moving to "off-shore" developers. Myself included. I manage a team of off-shre developers, NOT from India, with great skill in PHP and Java. My local assets design the systems with the customers and assist in the key development processes, but the off-shore developers do much of the work. This requires technically skilled managers. Failure to manage correctly has caused many issues for companies trying to do this and makes the difference between success and failure for them.

I won't tell you what country my developers are in... lets just say they are even cheaper than India, better quality and I don't want any competition as long as the rest of the world is focused on India I will have the advantage... ;)

Indian developers are NOT known for quality though, they are also NOT known for speed, so you save on hourly rates, but may take longer to code. I have had similar experience with Japanese developers... The Japanese deveopers are not as cheap, but they are better quality, in general, then the Indian developers, but Japanese developers have typically takes 3 times as long to develop as Indian developers who typically take longer than Western developers...

I have gone off subject a bit, but the point is, if you are looking for a stable career, high pay, etc. in the development world, learn to do the system designs and management of the off-shore resources... Make sure your technical abilities include Java, Javascript, CSS and XML. Make sure you study BUSINESS... After all the people you will need to tallk to in order to design the systems will speak in business terms, not technical ones, your job then will be to translate those terms into technical designs specific enough for the developers, who usually don't know crap about business, to build the solution right....

Peace,
:cool:

RgTaylor, If I may ask, you made a side comment about off-shore programmers. Do you have any of those in Afica?:-/

Java is a powerful tool. Not as powerful as a C/C++ tool could be, but MUCH easier to use and faster to develop with. Easier to troubleshoot, etc..

I learned programming long before Java was an option. When Java first became available I was less than interested because of how slow it was. Over the years they have done a good job at improving its performance. PC speeds have largely made the differences in many cases miniscule, and a little known fact is that for some operations Java has actually exceeded the performance of C... I know many people out there will try to argue but scientific tests and evaluation have been done with each new version available and in some areas, as of Java 1.5, Java surpassed C... This is very positive news...

In any case, I learned Java, grudgingly, because even then I could see some of the benefits it could potentially yield. Since I knew C/C++ it was an easy thing to learn Java, but I had to "unlearn" a few things which are habit for C programmers but which don't apply to Java.

I honestly believe that it is the competition between the programming languages that has led all of them, C vs C++ vs Java vs PHP vs ETC. to improve not just their performance but also their usability. Arrays that grow dynamically, etc. were always a problem for C/C++ and Java too, but in the drive to be better, they created Vectors, Lists, etc. in standard libraries, which were often very similar across languages... The real winner becomes the programer who no longer has to custom code as many storage classes, etc. as he used to...

Java was built to use UTF-8, which I love because I develop system for international use and C/C++ were never quite so easy. However, to maintain compatibility with C/C++ based systems the I/O routines in Java were defaulted to ASCII (Latin-1), thus they are read as Latin-1 streams but then converted to UTF-8 for storage and converted back on output... SO, people like me have to specifically indicate when we want the I/O to be read as UTF-8, which means no translation is needed... I wish Java had not done that, they should have forced others to justify NOT using internationalizable code instead.

Anyway, Java still lacks some of the fine control and poower of C/C++ but for most people's requirements it is more than sufficient.

In fact, I have spent many years working in the enterprise software industry and the trend globally is moving to "thin client" interfaces. Corporations don't want the expense of installing and maintaining software on thousands of PC enterprise wide... They want to use the tools already available on the PC's, i.e. the browser, MS Office, Outlook, etc. to do the job...

A thin client is basically a network based application that uses a browser or some integration technology to avoid installing any client software in each machine. Web Deployment is a half-way measure some will accept, but most want IE/FF available applications.

This means that Java has become the platform of demand... Java, Javascript, CSS and XML are the skills you need to become a high valued, high paid asset...

Due the development costs in the West, many companies are moving to "off-shore" developers. Myself included. I manage a team of off-shre developers, NOT from India, with great skill in PHP and Java. My local assets design the systems with the customers and assist in the key development processes, but the off-shore developers do much of the work. This requires technically skilled managers. Failure to manage correctly has caused many issues for companies trying to do this and makes the difference between success and failure for them.

I won't tell you what country my developers are in... lets just say they are even cheaper than India, better quality and I don't want any competition as long as the rest of the world is focused on India I will have the advantage... ;)

Indian developers are NOT known for quality though, they are also NOT known for speed, so you save on hourly rates, but may take longer to code. I have had similar experience with Japanese developers... The Japanese deveopers are not as cheap, but they are better quality, in general, then the Indian developers, but Japanese developers have typically takes 3 times as long to develop as Indian developers who typically take longer than Western developers...

I have gone off subject a bit, but the point is, if you are looking for a stable career, high pay, etc. in the development world, learn to do the system designs and management of the off-shore resources... Make sure your technical abilities include Java, Javascript, CSS and XML. Make sure you study BUSINESS... After all the people you will need to tallk to in order to design the systems will speak in business terms, not technical ones, your job then will be to translate those terms into technical designs specific enough for the developers, who usually don't know crap about business, to build the solution right....

Peace,
:cool:

RgTaylor, If I may ask, you made a side comment about off-shore programmers. Do you have any of those in Afica?:-/

I think this is rather silly question.

_____________________
montažne kuće

there are islands in Africa. I'm sure there are programmers on those islands. That makes them offshore programmers :)

hi to all

well i know html, css javascrpit php apache and mysql. but now i am learning jsp and I DONT HAVE ANY JAVA PROGRAMMING EXPERIENCE!!!:sad:


uptill now i just cant figure out whats java and jsp all about well i know its a serverside scripting for web development in java but to start validating forms creating shopping carts and ecommerce online transactions wowow that gonna be very veyr tough please help


thanks

mainly java server page is a container with supports the web browsers to see the web pages. you have to know about the tomcat server and servlets basics with jsp programming its simply tagging , but the jscript or any scripting language will help you more.
by
raja baba

hi ans,
Three types of learning session you have to follow during learing the java server programming
1.
Page regerer
2.
sesssion connection
3.
User reqest
apart from this you have to learn easy tagging called snippets . Well
during the coordination of the server and the client, interfacing is another part
These ideas first of all you have to remember.
Then start tagging according to the user requirement or server based programming abstraction.
try this.
But the tags and all you can learn easily in internet itself.
Remind that the above points to be aknowledged and proceed according to the position of request. still you have to thorough the knowledge in jscripting it is very important.
by this you read this thread again and again keep it in your mind . Final result automatically you will program that means problem solving position in jsp.
contact by next weak.
Tell me the resultant which you had done by next weak end.

by
raja baba

mainly java server page is a container with supports the web browsers to see the web pages. you have to know about the tomcat server and servlets basics with jsp programming its simply tagging , but the jscript or any scripting language will help you more.
by
raja baba

hi anastica,
Just take it eay css rss or all just for making only as html tags style sheets.
but java is an independent language it supports both interpretor and compiler.
Study the inheritance in core java then go to jsp this is the best way to format your self study it can be through internet .
Best solution to find only through sun.java.com.
There the jsp tags are available but the you are forgetting about the knowledge of database , so database is the most important in out software field. according to the dbase only you can attach the jsp tags with the server ex. tomcat. or apache. or any other open source connectivity it is a huge one but remember for your secure you have to improve the thorough knowledge of core jave then go to jsp.
or any j2ee platforms.
because j2ee is the solution for all the problem solving in most enterprise in the world.
kept in mind read this thread again and again think it is not creativity it is a learning process . communication is the important tag for jsp it only through html. So study healthy in html also ex. <% ... %> jsp tag started ...
If you study and practice the above mentioned website you can reach your destination.
if any other questions. ask me by next weak with some progress report which individually you had done.
Have good health.
by
raja baba m.com., m.c.a.,(ignou).
salem tn. india.
(shss.co.in)
design. Sr. Software Project developer.

This article has been dead for over six months. Start a new discussion instead.