|
|
![]() |
|
Btrieve developers now have a fast, easy, and robust method of accessing Btrieve data directly from a web page without the use of scripting languages.
When you filled out the survey at the beginning of the guided tour, you put the I*net Data Server Java Client to work. The form you completed (hopefully) was actually a Java applet created with the Java class library included in the IDS Developer's Kit. This applet saved the data you entered directly to a Btrieve file on Smithware's I*net Data Server located in Nashville, TN and it did this with calls directly from the web page without using any kind of scripting language or any multi-layered data access method.
(Note: If you had problems viewing the survey applet, then you've either hit a firewall or you are experiencing browser incompatibility. To test this, visit another site that uses Java applets -- www.sun.com would be a good site. If you can download that applet, odds are it's a firewall problem (the IDS can be configured around firewalls, by the way); otherwise, your browser is probably not completely Java enabled yet.)
Unlike HTML scripting, Java provides a full-featured language for web applications. Now with the IDS Java class library its easy to access Btrieve data directly from a web page! The Java class libraries for the IDS take advantage of Java's tight code to provide complete Btrieve support that weighs in anywhere from a svelte 12K to a complete package size of 36K.
The java class library includes four primary classes that build on each other to provide four levels of support. These are:
1) Basic Btrieve connectivity, data compression, security
2) Buffer management, ease of use (the Btrieve call has one parameter) basic type conversion, and per-call optimization
3) Advanced type conversion - support for all Btrieve key type, including the COBOL types.
4) Extended operations support - make an extended operations call by calling a function named "GetNextExtended()"
Below is a brief Description of the relative strengths and weaknesses of the Java Client with IDS and suggestions when you might choose the Java Client to build and deploy I*net database applications.
| Client | Strengths | Weaknesses | Ideal For... |
| Java Class | Very small footprint; ideal for downloading. | Does not provide the ease-of-use associated with the ActiveX. | Writing a browser-based web application. |
| Resulting code is platform independent. | Requires knowledge of Java language. | Writing a platform independent application. | |
| Runs somewhat slower than the other clients because it is interpreted by the Java VM. |
IDS Java Demo Applets
There are a total of four Java applets on this site, one of which you've already seen (the survey applet). Of the remaining three, two are very similar to each other and fully display the strengths of the IDS Java client; the third can be used to demonstrate the advantages of the multi-client approach, as it interacts with the same data used by the IDS ActiveX Client demo.
The first two applets are discussion group applets. These are very similar to newsgroups, with the convenience of the web; they do not require a news server, and the messages go straight into Btrieve data files on our server.
The two discussion applets utilize Java's potential as a true application language by liberally applying multi-threading and client-side caching. The message headers are cached on the client side -- any re-sorting takes place exclusively at the client. If the client wants a longer message history, the applet gets only the messages needed to fulfill the request. Likewise, if the user requests fewer messages, the applet displays fewer messages, but maintains the cache. In addition, the applet retrieves all message headers with extended operations calls, so that retrieval is fast and efficient. What makes this really neat is that it all takes place directly from a web page without any scripting languages!
Web pages have been used to simulate discussion groups before, but they have a number of drawbacks inherent in the medium. For instance, assume that you view a list of headers and select a message to read. When you want to return to the header list, the page must request the same data from the server all over again. Add this to a complete lack of multi-threading and you have a very inefficient -- and difficult to write -- application.
IDS Discussion Group Applet
This applet is for questions and discussions regarding the Smithware IDS and the current state of the internet.
The discussion group applet is included as a sample in the IDS Developer's Kit. The story that chronicles the day to day process of building the applet is available in the Summer '97 issue of the Btrieve Developer's Journal.
Smithware User Group Discussion Forum Applet
This applet is a general user group forum for all Smithware users. Please feel free to ask questions or make comments -- we're lurking and happy to answer any questions that arise.
The final applet demonstrating the IDS Java Client is a simple applet that allows browsing and updating of the same customer file used by the ActiveX demo program. You could have both of these running at the same time and update a customer with this applet and see the changes immediately in the ActiveX demo program.
Press "Onward" to try out the live Customer Browser Demo!
|
Onward! |
|
Retreat! |
Copyright © 1988, 1998 by Smithware, Inc. All rights reserved.
Smithware, Controls for Btrieve, I*net Data Server, DDF Builder, DDF Sniffer, Btrieve Developer's Journal, and Software Solutions for the Real World are trademarks of Smithware, Inc. Btrieve is a registered trademark of Pervasive Software, Inc. ActiveX, Windows, Windows NT, and Internet Explorer are trademarks of Microsoft Corp. All other product or brand names are trademarks or registered trademarks of their respective owners.
Smithware does not and cannot warrant the information, documentation, or software (including any fixes and updates) included in this distribution service or the performance or results obtained by using this information, documentation, or software. This information, documentation, and software is provided "as is". Smithware, Inc. makes no warranties of any kind, either express or implied, including but not limited to, noninfringement of third party rights, merchantability, or fitness for a particular purpose with respect to the product and the accompanying written materials. To the extent you use or implement this information, documentation, or software in your own setting, you do so at your own risk. In no event will Smithware, Inc. be liable to you for any damages arising from your use or, your inability to use this information, documentation, or software, including any lost profits, lost savings, or other incidental or consequential damages, even if Smithware, Inc. has been advised of the possibility of such damages, or for any claim by another party.