advertisement
javaboutique
Search Tips
Articles  |   Tutorials  |   Reviews  |   Tools  |   by Category  |   by Date  |   by Name  |   Submit  |   Source  |   Forums  |  
javaboutique
Browse DevX


Partners & Affiliates











advertisement

JavaBoutique : Articles : Open Source Shopping Cart:

Contents
Introduction
Persistence: Method 1
Functionality
Persistence: Method 2
Illustration: Example 1: Applets
Illustration: Example 2: Active X
Illustration: Example 3: Pseudo-Constructor
The Code
Extended Examples
Shopping Cart and Database
Checkout
Multiple Merchants
Conclusion
Addendum: Mac Version and Back End Progress

Mac Version and Back End Progress

One site webmaster wrote to me, "I tried the JAVA shopcart on a Mac, and it won't work. Netscape 4.75 or IE 5.0 both don't work. I am assuming this is a problem with the jvm on the Mac versions, since the Windows versions work great. Any ideas, or any luck with another version of Mac jvm?"

Yup, we wrestled with this one for a while, and found out the following:

1. Mac IE has an excellent JAVA VM, but has not currently implemented LiveConnect. Thus, the HTML on Mac IE cannot communicate with the applet. This is an essential part of cart operation, and therefore the cart will not presently work on IE on the Mac. Microsoft has been asked repeatedly to implement LiveConnect on Mac IE, but is concentrating its resources on IE for the new Mac OS X operating system.

2. Mac Netscape *has* implemented LiveConnect. However, Netscape on the Mac does not handle the new event model. The cart in its current version uses the newer JAVA 1.1 event model, and it therefore does not work on Mac Netscape either. One would imagine that this problem could be solved by porting back to the old event model. I did this. However, I was also warned that the Netscape JAVA VM is very buggy. The shopping cart port to old JAVA worked fine on every PC browser - all of which still support old JAVA - but it *still* doesn't work on Mac Netscape. Presumably, it's colliding against Mac Netscape JAVA VM bugs.

3. It is my understanding that Mac OS X, which has just been released in beta and is scheduled for full release in the new year, will have a version of IE that has implemented LiveConnect. The shopping cart code, in its current JAVA 1.1 form, should therefore work with IE on the new Mac OS X. One could therefore wait for the new OS, and allow the problem to solve itself as Mac users shifted to IE.

4. One advantage of using the old JAVA port is that it works for older PC Netscape 4.0x versions, which also have not implemented the new JAVA event model. There are still a few people using these older browsers.

I am therefore including the port to old JAVA for download. If some Mac reader has the tools for a line by line trace, and can debug the code with workarounds to get around the Netscape JAVA VM, then I will make the repaired code available on this site. This revised code should then work universally - on both current PC browsers, on the current Mac Netscape, on PC Netscape down to versions 4.0x, and for Mac IE with LiveConnect for OS X - for as long as PC and Mac browsers continue to support the old event model. By the time that browsers stop supporting the old code, making an update back to the new event model necessary, Mac users presumably will have upgraded to Mac OS X, or its successor, PC Netscape versions 4.0x will no longer be used, Netscape will have a Mac browser that can handle the new event model, and the Mac workaround to the old event model will no longer be necessary.

Click here to view the fourth .java code example

Now, as far as back end progress is concerned, I have been contacted by several companies. One in particular has finalized a back end which could soon be commercially available. This company has added new features to the cart which make it a genuinely attractive product. They have solved communication problems, and demonstrated that a back end, with this front end, is completely workable.

Originally, this company was willing to develop a back end only if they were given exclusive control over all back end processing. They were afraid that if they developed a back end for an open source shopping cart front end, and it was successful, then a larger company would immediately take over back end processing and cut them out of the market. This was a reasonable fear. We explored this option.

Thus far, I have managed to maintain my position that the code is open source. Any company is allowed to use it, charge for it, modify the code, protect their modifications, and even copyright and patent modifications - as long as they are working *only* with a shopping cart, and an *associated* database cache. I hope to make money from related products, and I think it would be wonderful for users to have low cost access to a high quality cart, using novel techniques.

I have recently filed for a United States utility patent on the techniques, based on the previous provisional patents. When this is granted, there will be 20 years of shopping cart bandwidth protection.

My continuing stand on open source, however, puts the company with which I am working in a very difficult position. I have encouraged them to patent and copyright their cart improvements, in order to carve out for themselves a niche market, and attempt to protect their investment. I don't know if they can do that. Their marketing plans at present are not clear, and it is possible that they might not be willing to release their adapted product in this forum, and thus openly admit its foundation in open source code. The back end they have developed may be available for the adapted product, and not for the open source code.

There is still a need and opportunity for some company to provide quality back end services. I will be glad to feature them here, and provide readers with a version of the cart that contains the address of this company's central order-processing server.


How to Add Java Applets to Your Site

New on the Java Boutique:

New Review:

Time Management Made Easy with the Quartz Enterprise Job Scheduler
Why not just use the Java timer API? This open source scheduling API boasts simplicity, ease-of-integration, a well-rounded feature set, and it's free!

New Applet:

Reverse Complement
Reverse Complement is a simple applet that converts DNA or RNA sequences into three useful formats.

Elsewhere on internet.com:

WebDeveloper Java
Lots of Java information on webdeveloper.com

WDVL Java
Thorough Java resource at the Web Developer's Virtual Library.

ScriptSearch Java
Hundreds of free Java code files to download.

jGuru: Your View of the Java Universe
Customizable portal with online training, FAQs, regular news updates, and tutorials.

 Avaya Developer Showcase
 MSDN Spotlight
 PHP for Windows Showcase
XML error: undefined entity at line 34
advertisement
Receive Articles via our XML/RSS feed
Receive Articles via our XML/RSS feed

JavaBytes
Internet Cyclone
This powerful, easy-to-use, internet optimizer is for Windows 95, 98, ME, NT, 2000 and XP. It's designed to automatically optimize your Windows settings, boosting your Internet connection up to 200%.

IBM Brings Developers Into the Cloud
Apache at 10: You Can't Buy Us
Microsoft's CodePlex Foundation Moving Forward
Apple Claims 100,000 Apps, Google Analyzes Them
Nokia Latest to Play Opera Mobile 10 Browser
PayPal Opens Up Payment Platform to Devs
Ubuntu Linux 9.10 'Karmic Koala' Starts Its Climb
IBM Links Rational Developer Tools, Tivoli Apps
Libraries Give Vista Apps a Windows 7 Look
Ubuntu: The 'Default Alternative' to Windows?

Delivering Web-based Embedded Fonts in CSS 3
Adobe Helps PHP Developers Create Rich Internet Applications
Java Developers Finding a Home at Adobe Flex
Virtualization Delivers a Dynamic Infrastructure
Consuming XML Web Services in iPhone Applications
Build a More Agile Business with IBM
POJO-Based Solutions for LDAP Access: One Good, One Better
IBM Offers Enhanced Measurement and Management for Energy Usage
IBM Helps Transformation to an Information-Based Enterprise
Top Five Touch UI-Related Design Guidelines

Advertising Info  |   Member Services  |   Contact Us  |   Help  |   Feedback  |   Site Map  |   Network Map  |   About

internet.commediabistro.comJusttechjobs.comGraphics.com

Search:

WebMediaBrands Corporate Info

Legal Notices, Licensing, Reprints, Permissions, Privacy Policy.
Advertise | Newsletters | Shopping | E-mail Offers | Freelance Jobs