Menu
Your Cart

WebApp

WebApp

Need more information on this product?

Please contact us on +44 (0)20 8733 7100 or via our online form.

Contact Us

If you are not currently a customer, you can apply for an account.

Register here


  • SKU: WEBAPP


Web Application development environment and server for MS IIS.
WebApp Studio

WebApp Studio is an easy-to-use visual development environment that includes several tools and wizards that generate HTML and server-side scripts automatically. It is a complete suite of visual tools for building web applications and provides a high degree of flexibility. It also contains an open interface for wizards for adding custom-developed wizards to fit the specific needs of an application. WebApp Studio is for development and testing and is licensed per developer.

WebApp Server

WebApp Server is a powerful application server that provides Microsoft IIS/ASP developers with capabilities for controlled, intelligent database integration, and centralised business rules. WebApp Server includes an integrated unlimited-user database and has open database connectivity to support all major database formats. WebApp Server is for deployment and is licensed per server.

WebApp - Features

WebApp Studio WebApp Server

WebApp Studio

WebApp Studio provides an easy-to-use visual development environment that includes several tools and wizards that automatically generate HTML and server side scripts. Fast transaction-oriented applications that run across the Internet can be created with WebApp Studio's rapid applications development facilities. WebApp Studio will reduce development time for the creation of complex web systems. It is an easy-to-use RAD tool which provides a high degree of flexibility and contains an open interface for wizards for adding custom-developed wizards to fit the specific needs of an application. WebApp applications are compiled programs that are easy and secure to deploy. There is no need to disclose or deploy source code. WebApp applications use advanced object-oriented programming (OOP) technology enabling fast, efficient maintenance. WebApp applications work with ASP and HTML pages. Change the applications interface without changing the underlying application. WebApp Server is based on Microsofts Distributed InterNetworking Application Architecture (DNA) and completely open to other technologies. All commercially available Internet components, including payment systems, are integrable. WebApp Server includes an integrated unlimited-user database, greatly reducing the cost of deployed systems. WebApp Server has open database connectivity to support all major database formats.

NEW Features in version 3.0:

  • Support for WAP/WML Applications: WebApp's Web Business Object (WBO) interface has been enhanced to support WML (Wireless Markup Language). Two new wizards enable the creation of WAP (Wireless Application Protocol) display and entry applications. Samples are included for building and deploying wireless applications using WAP/WML standards
  • WebApp Integrator: the WebApp Integrator is integrated into the Studio's development framework for adding the interface calls in ASP pages
  • More Powerful WebApp Studio IDE: new features include:
    • enhanced WBO modeling
    • improved code editor
    • improved ASP file management and editing support
    • new Print File operation
    • exposed WebApp Wizard source code
    • automatic migration from WebApp 2 to WebApp 3 applications.
  • Enhanced WebApp Sample Application: demonstrates how one WebApp application can be used to support three different web clients: dynamic HTML pages for standard Web Browsers, WML pages to WAP Wireless devices (mobile telephones) and web services via XML data exchange. Use the Sample application code to build and deploy WebApp for delivery to rich and/or thin clients.

WebApp Server

WebApp Server extends Microsoft's dynamic internetworking architecture (DNA) by providing a place to store business logic in DNA's middle tier. WebApp Server provides clean separation between the application interface and the application logic. The WebApp Server is designed for developing database applications on the World Wide Web with the combination of a three-tier architecture, open database integration, robust business rules and rapid development tools for high performance browser applications. It uses existing Internet standards when available and it's own technology when there are no current standards, or where the current standards are weak.

Current web sites contain mostly static information stored in web pages (HTML pages) on the server. The Internet Server (HTTP server) distributes this page on request from a client. Besides Java, there is only one approach to creating an Internet application; an application server must run with the Internet server and the client must request a program instead of an html page. These programs deliver their results as a temporary html page (created per special request) and send this page via the HTTP server to the client. HTML provides forms where the client can enter data or choose between different functions (buttons) to get interaction between the client and server. There are four different technologies available to develop this kind of application:

  • Common Gateway Interface (CGI): CGI is the oldest standard in the Internet and is probably supported by all Internet servers. CGI is a special subdirectory where the developer can store applications. The server supports this directory with all the necessary information and data as environment variables. CGI based programs can be written in nearly every programming language. Very often developers use script languages like Pearl or common languages such as C. CGI has two disadvantages: Firstly, every request from a client starts a separate program thread, so the server needs a lot of resources to offer acceptable performance to each client. Secondly, an Internet application using CGI must create a complete html page with every line, so every small change in the HTML design requires that the low-level program be changed
  • Software Architecture of a CGI or ISAPI Internet Application:ISAPI, NSAPI, etc. These are standards that come directly from different vendors of Internet servers. ISAPI (Internet Server Application Programming Interface) was defined by Microsoft and NSAPI (Netscape Application Programming Interface) came from Netscape. These standards are very similar to CGI since they are based on the same concept. The only difference is that the APIs support the development of libraries in the operating system (DLLs for Windows). This results in lower resources for the Internet server but doesn't change the complexity of developing the Internet application
  • Proprietary script languages: Some vendors released dedicated Internet application servers (for example Cold Fusion from Allaire and Tango from Pervasive Software) based on the standards previously described. They implemented their own script languages or extended mark-up languages, which can be used within standard HTML pages. These products provided advantages because software developers were able to use HTML design tools and just add the dynamic functionality by using the proprietary language. However, the big disadvantage of having the applications complete business logic residing in HTML pages continues with these products making the development and maintenance of Internet applications difficult
  • Active Server Pages (ASP): Microsoft introduced a new technology called Active Server Pages together with the Internet Information Server. This technology is based on the same idea of proprietary script languages, the use of an additional language for application logic inside of HTML pages. But in contrast to other vendors they implemented this technology independent of a specific language by providing the flexibility of using common script languages such as VBScript or JavaScript. This architecture supports any language by adding a DLL to the server and DLLs from third party companies are available. This solution has still the same disadvantage as proprietary script languages but the common script languages supported are very well known and reduce the learning curve of application developers. Additionally, in the case of proprietary script languages you have to purchase the Internet application server. The server technology comes free as part of every Windows NT operating system using ASP.

Developing Internet Applications with Java is a completely different approach to the other four technologies. Java is a programming language, invented by Sun Microsystems, that enables the creation of applications that are independent of the operating system. This is possible because Java is only pre-compiled and executed with a Java virtual machine, which is an interface between the pre-compiled Java code and the operating system. Real world Internet applications are mostly done as a Java Applet. This is a small program, which runs inside of an Internet browser. Java Applets can be used to access a database server; in this case the Applet uses a TCP/IP connection between the client and the server to access the data independent of the HTTP protocol. But in reality, this is nothing more than a typical client/server application available for just about any platform. So whenever a person uses the application, the Applet needs to be downloaded first (which also includes the complete business logic of the application). This can be avoided by using a Java Internet Application Server. In this case, you can develop additional Java Servlets which run on the server and the applets can't communicate with the database server; instead they interface with Servlets which have access to the database. This approach is much better but requires the acquisition of a Java Internet Application Server, a very expensive piece of software. So Java is a good technology but has numerous disadvantages. Java Developers are highly skilled people who are difficult and expensive to hire. Java Applets have the tendency to become very large quickly producing poor performance. The high cost of Java Servers limits potential prospects for Internet Applications and Java always expects a virtual Java machine on the client machine, so it really does not support thin clients.

The architecture of WebApp Server is a complete new approach for the development of Internet applications. WebApp Server is based on Microsoft's Internet architecture. But the WebApp Server empowers this architecture via the middle tier by providing a place for the application business logic. Instead of accessing databases directly from ASP (HTML) pages, the pages can only call functions in the middle tier where WebApp Server resides. WebApp Server is an application server that contains the ability to access the databases, in addition to powerful business objects. A WebApp is based on a combination of Web Business Objects (WBOs). Every WBO has access to the database via a structure of Data Dictionary Objects (DDOs) and an unlimited number of methods which can be called from any ASP (HTML) page.

Software Architecture of the WebApp Server and MS IIS provides all of the benefits of object oriented applications. Re-usable encapsulated objects store the functionality of an application and remove all of the programming from within HTML pages. The complete code of the HTML page includes only a few function calls to the WebApp Server. In contrast, when using strictly ASP, the developer has to use hundreds of pages with repeated code fragments every time the same functionality has to be repeated. A web business object contains all of the code only once. But the WebApp Server has many more advantages. It includes open access to all major databases and includes a robust, web-optimised unlimited user database directly out of the box.

Building and maintaining Internet applications is easier said than done. While many of todays "application servers" utilise the latest technology buzzwords, they use conventional designs and implementation techniques that make speed of delivery and speed of change unacceptable. Fortunately for developers creating applications on Microsofts IIS, Data Access Worldwide's new WebApp Server provides an advanced architecture upon which companies can confidently build, deploy, manage and change high performance, distributed Internet applications.

WebApp Server is a business logic engine, a powerful application server that provides Microsoft IIS/ASP developers with enormous capabilities for controlled, intelligent database integration, and centralised business rule and business process execution. The server itself is a COM object operating in the middle tier of Microsofts Distributed InterNet Application Architecture (DNA) where business logic, transaction processing and database access are segregated from visual components such as HTML pages, ASP pages, and VBScript that run in IIS. Every WebApp includes one or more Web Business Objects (WBOs). Every WBO includes one or more Data Dictionary Objects (DDOs) and optional further objects for example for a report, a Web Report Object (WRO). Only a DDO has access to the database and for every table of the database has a designated DDO. Access to different databases is based on the database connectivity technology that uses drivers for different types of databases and database servers. Every object is based on the WebApp class library that is available as source code and open to be changed or extended by application developer.

Data Dictionaries provide a centralised definition and application of a set of rules for a database. Developers do not have to repeat business rules code in every page or environment in which the data is used. Applications access and manipulate data only through the Data Dictionary Objects. DDOs contain the database table definitions plus all rules affecting operations on that database including referential integrity, validations, insert, update and delete rules and procedures, related file procedures and the default display properties for the data.

DDOs provide a central depository for all database functionality. Ten years ago it was necessary to define a field property like 'value required' in every software module which used this field. Today this property is defined once in the DDO and, because no software module has direct access to the database, the DDO makes sure that no record without a value in this field can be saved.

DDOs support multiple data field properties from 'value required' to 'display only'. Other typical properties of database fields are validation rules. WebApp Server DDOs support many different possibilities, from simple "Yes/No" validations to external validation files that are mapped to a database field. In this case the software developer not only takes advantage of field validations, but uses automatic fields. The  DDOs move standard data entry fields to 'combobox' controls, taking care of all allowed functionality for the field.

Event-based methods are available for all typical events related to a database such as 'clear,' 'find,' 'delete' and 'save.' Every method may also include pre-defined code, which can be overwritten or augmented in DDOs. This can be used for simple functions such as moving today's date into a date field in the event of a 'save', but the real power comes from linked DDOs. For example, only two lines of code are needed to synchronise the calculation of the field order total to the price calculation of the order items. There's no need to worry about the typical business logic for an order entry system in all additional WBOs or user interface components (in this case ASP pages). Stock management and statistical data contained within each record is executed automatically whenever a record is accessed.DDOs defined in the customer file handle this type of functionality.

The applications created with DDOs manage multi-user concurrency without the need for any special coding and when using one of the many client/server options available for hosting WebApps, unmodified applications will trigger the transaction capabilities of the host environment.

Developing a WebApp means developing one or a combination of WBOs. A WBO is an encapsulated and re-usable object delivering a wide range of functionality, already defined in the class. Part of this functionality is access to database tables through DDOs (with methods like Save, Clear, Find, Delete etc.). While a DDO is the definition of access to the data, the WBO is responsible for access and navigation through the database and interactivity with ASP pages.

To define business entities, it is necessary to map one or more DDOs to a WBO. If you define a WBO which includes everything for a shopping cart from a Web Shop, you need access to the order header file, detail file, inventory file, customer file etc. In these cases, you set a property for a main DDO (in this example the order header file) and access all other data through the order header file. More functionality can be added by extending a WBO with more methods. This can be done inside WebApp Studio by hand or using powerful wizards.

Our software architecture has a dramatically different approach than other competitive tools. The business logic is completely encapsulated in WBOs, and independent of ASP or HTML pages. A WBO doesn't expect any special page structure. Every method of a WBO can be called from any ASP page via script functions (ObjectName.MethodName). A typical web report can be done with just one ASP page or with multiple ASP pages for the selection criteria, for the details of the report, for subtotals and/or totals etc. There are no rules that one WBO is needed for a special ASP page or vice versa.

Because of this approach, the design and the business logic of an application is completely separate. One tier contains the design or interface of the application (ASP and HTML pages) and the second tier includes the WBOs for the application's functionality. This concept supports team programming such as no order technology or product in the industry.

Web Report Objects (WROs) can be added to a WBO by hand or with one of the wizards. WROs support the typical functions of reporting on the Internet. Reports can include access to an unlimited number of database tables. Selection criteria can be defined in the code or as a parameter. The WRO supports several report sections such as Page Top, Sub header, Body etc. A lot of different properties define the number of records per page, the sort order etc. And of course every property can be changed dynamically from an HTML page. The Web Report Object also supports drill down reports where every record has a link to the data on which its output is based.

Every DDO has access to a database table. DDOs work with an alias name and real physical access is based on a configuration file. It is only a matter of changing the configuration without having to modify or recompile source code to change the database type. The configuration is completed with Database Builder which is part of the WebApp Server. Direct access to the DataFlex database is included. Access to other databases is available through high performance drivers available from Data Access Corporation or third parties.

An unlimited user RDBMS called DataFlexRight is provided in the box of WebApp Server and WebApp Studio. DataFlex is a robust and fast database and also part of other software packages.

NEW Features in version 3.0:

  • Advanced Scalability: including load balancing and clustering technologies for enterprise-level and other large-scale Web sites as well as process pooling technology for sites requiring high volumes of concurrent sessions
  • Support for XML: WBOs support XML processing. XML documents of any size can be passed in and out of WBO objects. Samples are provided that show how WebApp 3.0 can be used to receive, generate and send XML documents.