`
`11111
`
`III
`
`111111
`
`1111111111
`
`11111
`
`11111
`
`iII
`
`11111111111111
`
`US005754772A
`
`11111
`
`Patent Number
`
`Date of Patent
`
`5754772
`May 19 1998
`
`OTHER PUBLICATIONS
`
`Francis Heylighen WorldWide Web
`distributed hyper
`media paradigm for global networking Apr 18 1994
`IEEIJNSPEC Database Updates and Additions 196095
`doc
`1374618 Proceedings Share Europe Spring Confer
`ence pp 355368 1994
`
`Primary ExaminerLance Leonard Barry Esq
`Attorney Agent or FinnCharles
`Johnson Mark
`Starr
`
`ABSTRACT
`
`system which makes prior art On-Line Transaction Pro
`cessing OLTP systems and their associated databases
`Transport Protocol HTFP
`using HyperText
`accessible
`interfaces The response time for an on-line user seeking
`HTFP access
`to the transaction processing system is mini
`transaction gateway client hav
`mized by pre-establishing
`static connection to the transaction processing
`system
`In addition the HTP access
`to the transaction processing
`system is available for multiple concurrant users The sys
`tem further provides
`gateway that
`is independent of the
`underlying service provided by the transaction processor
`whereby the same gateway client is capable of usage with
`thereon
`different databases and operations
`
`ing
`
`36 Claims 12 Drawing Sheets
`
`United States Patent
`
`Leaf
`
`SERVICE INDEPENDENT
`TRANSACTION
`HTTP SERVER-TO-TRANSACTION
`GATEWAY
`
`75 Inventor
`
`Shawn
`
`Leaf St Paul Minn
`
`Assignee Unisys Corporation Blue Bell Pa
`
`Appl No 622099
`Mar 26 1996
`
`Filed
`
`bit CL6
`U.S Cl
`
`395/610
`610
`Field of Search
`395/604
`395/762 335 200.03 200.09 200.12 200.33
`200.31 200.47 200.97
`
`395/200.33
`
`G06F 15/16
`
`References Cited
`
`U.S PATENT DOCUMENTS
`
`4774655
`4881166
`5129082
`5428776
`5530852
`5572643
`5596744
`5623656
`5634053
`
`9/1988
`
`Kollin et al
`
`11/1989
`
`Thompson et al
`
`7/1992
`
`6/1995
`6/1 996
`
`Tirfing et al
`
`Rothfiled
`Meske Jr et al
`
`11/1996
`
`1/1997
`
`Judson
`Dao et al
`
`4/1997
`
`5/1997
`
`Lyons
`Noble et al
`
`3951604
`
`395/608
`
`395/600
`
`395/600
`
`395/610
`
`395/793
`
`395/610
`
`395/610
`
`395/604
`
`tITML-r..rn.ai
`
`.unn.wr LANUASE
`-TRANSACIION
`UNIFORM RESOURCE LOCATOR
`
`TXN
`hAL
`
`Petitioner IBM – Ex. 1060, p. 1
`
`
`
`U.S Patent
`
`May 19 1998
`
`Sheet
`
`of 12
`
`5754772
`
`Iz
`
`Petitioner IBM – Ex. 1060, p. 2
`
`
`
`U.S Patent
`
`May 19 1998
`
`Sheet
`
`of 12
`
`5754772
`
`tim
`
`Petitioner IBM – Ex. 1060, p. 3
`
`
`
`Ui
`
`Ui
`
`Figure
`
`UNIFORMRESOURCELOCATOR
`
`-TRANSACTION
`
`TXN
`
`URL
`
`HYPERTEXTMARKUPLANGUAGE
`
`HTML
`
`VIEWBUFFER
`
`76
`
`VIEWBUFFER
`
`7\
`
`HTMLDOCUMENT
`
`CHARACTERSTRING
`
`URL
`
`PROCESSING
`TRANSACTION
`DISTRIBUTED
`
`SYSTEM
`
`TRANSACTION
`
`INSTANCES
`CLIENT
`GATEWAY
`
`SERVER
`
`SYSTEM
`
`WEB
`
`--
`
`86r
`
`SERVER
`
`WEB
`
`82
`
`16
`
`14
`
`Petitioner IBM – Ex. 1060, p. 4
`
`
`
`U.S Patent
`
`May 19 1998
`
`Sheet
`
`of 12
`
`5754772
`
`10
`
`HTML
`DOCUMENT
`
`HTML
`DOCUMENT
`WfXN DATA
`
`HTML
`DOCUMENT
`WfXN DATA
`
`40
`
`SERVICE
`REQUEST WI
`
`VIEW BUFFER
`WITH TXN
`DATA
`
`TXN
`URL
`
`TRANSACTION
`UNIFORM RESOURCE LOCATOR
`
`Figure
`
`Petitioner IBM – Ex. 1060, p. 5
`
`
`
`U.S Patent
`
`May 19 1998
`
`Sheet
`
`of 12
`
`5754772
`
`WEB SERVER
`SYSTEM
`INITIAUZATION
`PROCESSING
`
`ESTABLISH VIEW FILE
`ON WEB SERVER
`
`302
`
`WEB-VIEW FILE ON
`ESTABLISH
`THE WEB SERVER TO CREATE
`NAMED MAPPING BETWEEN THE
`NAMED FIELDS OF THE VIEW
`DEFINITION AND THE VIEW BUFFER
`
`304
`
`ESTABLISH AN HTML TEMPLATE
`FOR THE SERVICE DEFINED BY THE
`VIEW DEFINITION
`
`START
`PREDETERMINED NUMBER OF
`TRANSACTION GATEWAY CLIENT
`INSTANCES
`
`_332
`
`START THE WEB SERVER
`
`334
`
`sT0PD
`
`Figure
`
`Petitioner IBM – Ex. 1060, p. 6
`
`
`
`Ui
`
`Ui
`
`Figure
`
`312
`
`VIEWBUFFER
`
`310
`
`WEB-VIEWFILE
`
`VIEWSIZE
`
`VIEWNAME
`
`VIEWFILE
`
`308
`
`Petitioner IBM – Ex. 1060, p. 7
`
`
`
`US Patent
`
`May 19 1998
`
`Sheet
`
`of 12
`
`5754772
`
`HTML TEMPLATE
`
`314
`
`FORM METHODGET ACTION1RT68/EMPDBSVC.tx
`INPUT TYPEHIDDEN NAMEView VALUEEMP_BUF
`TABLE
`TR
`
`ID ROWSPAN1O
`1MG SRC/Images/WebTx5.gif WIDTTH67 HEIGHT31
`VSPACEO HSPACE15
`TD
`
`Employee
`ID COLSPAN2
`INPUT SIZE5 MAXLENGTH4 NAMENUMBER VALUE
`ID AUGNRIGHT COLSPAN2
`INPUT TYPEreset VALUEClear Form
`
`ID COLSPAN5
`HR SIZEz2
`
`ID COLSPAN5 ALIGNCENTER
`BEmployee InformationJB
`TD Name
`TDINPUT SIZE11 MAXLENGTH1O NAMENAME VALUE
`TD WIDTH25
`TD.Job
`TDcINPUT SIZE1O MAXLENGTH9 NAME40B VALUE
`TD
`ID
`
`Operation
`
`TR
`
`TR
`
`TR
`
`IR
`
`SELECT NAMECOMMANDOPTION
`SELECTEDSeIectOPTIoNupdateopTIoNInsetjopTIoNDeIeeJs
`ELECT
`TR
`ID
`
`IStatusII
`TD COLSPAN3
`INPUT SIZE27 MAXLENGTH1 NAMESTATUS VALUE
`ID ALIGNRIGHT
`INPUT TYPESUBMIT VALUETransmjt
`
`ITABLE
`FORM
`
`Figure
`
`Petitioner IBM – Ex. 1060, p. 8
`
`
`
`U.S Patent
`
`May 19 1998
`
`Sheet
`
`of 12
`
`5754772
`
`VIEW DEFiNITION
`
`316
`
`VIEW EMPBUF
`type
`
`cname
`
`fbname
`
`count
`
`flag
`
`size
`
`null
`
`carray
`
`carray
`
`carray
`
`carray
`
`carray
`
`carray
`
`carray
`
`carray
`
`carray
`
`carray
`END
`
`status
`command
`Number
`Name
`Job
`
`Mgr
`HireDate
`
`Salary
`Comm
`
`Dept
`
`STATUS
`COMMAND
`NUMBER
`NAME
`JOB
`MGR
`HIREDATE
`SALARY
`COMM
`DEPT
`
`40
`
`11
`
`10
`
`10
`
`Figure
`
`Petitioner IBM – Ex. 1060, p. 9
`
`
`
`Figure
`
`DocumentDone
`
`demopage
`
`the
`
`Backt
`
`o
`
`ITansmitI
`
`100000k
`
`Status
`
`SelectJ
`
`Y
`
`Operation
`
`17-DEC-80
`
`HireDate
`
`Commission
`
`800
`
`Salary
`
`20
`
`Department
`
`7902
`
`Manager
`
`CLERK
`
`Job
`
`Smith
`
`Name
`
`EmployeeInformation
`
`UndoChanges
`
`7369
`
`Employee
`
`VIewEMpBUFNUMBEf17369NAMEJOB.MGR.4DEpT_SALARy-COMM-HIHEDATE_COMMANDseIectSyAT
`
`htl//wIyrneIRT68EMPDBSVC
`
`Location
`
`Software
`
`Directory
`
`Net
`
`Search
`
`Net
`
`Handback
`
`WhatsNewlWhatsCool
`
`Open
`
`Find
`
`
`Open
`
`Images
`
`Reload
`
`ForwardHome
`
`Back
`
`Help
`
`irectoryWindow
`
`ptions
`
`ookmarks
`
`Liew
`
`dit
`
`EiIe
`
`I_DIXI
`
`Petitioner IBM – Ex. 1060, p. 10
`
`
`
`U.S Patent
`
`May 19 1998
`
`Sheet
`
`10 of 12
`
`5754772
`
`WEB SERVii\
`FCESSING
`
`WAIT FOR CONNECTION
`FROM WEB BROWSER
`
`402
`
`404
`
`INITIATE AS
`AThREAD
`
`ACCEPT CONNECTION AND
`READ THE URL
`
`406
`
`410
`
`MIME TYPE OR
`\PATHPR/
`
`412
`
`TYPE
`TRANSACTION
`
`416
`
`TEXT/HTML TEXT/PLAIN
`IMAGEJGIF IMAGE/JPEG
`AND OTHER USER DEFINED TYPES
`
`418 WEB SERVER SEND FILE PROCESSING
`OR
`CUSTOMIZED GATEWAY PROCESSING
`
`420
`
`CLOSE
`CONNECTION
`
`END OF
`THREAD
`
`Figure 10
`
`Petitioner IBM – Ex. 1060, p. 11
`
`
`
`U.S Patent
`
`May 19 1998
`
`Sheet 11 of 12
`
`5754772
`
`GATEWAY
`LINK
`
`PROCESSING_J
`
`GET THE IDENTIFICATION
`OFTHENAMED
`PIPEAND OTHER
`CONFIGURABLE INFORMATION
`
`____________________________
`DETERMINE WHETHER INPUT
`IS GET OR POST
`
`IF POST LOCATE
`POST DATA
`
`456
`
`REQUEST CONNECTION
`WITH NAMED PIPE
`
`460
`
`52
`
`SEND REQUEST ON
`NAMED PIPE
`_______________________
`
`454
`
`458
`
`462
`
`464
`
`466
`
`READ RESPONSE FROM
`NAMED PIPE
`
`_________________________
`DETERMINE CONTENT
`TYPE OF RESPONSE
`
`____________________________
`PACKAGE RESPONSE ACCORDING
`TO CONTENT TYPE AND SEND TO
`WEB BROWSER
`
`RETURN --
`
`468
`
`Figure 11
`
`Petitioner IBM – Ex. 1060, p. 12
`
`
`
`U.S Patent
`
`May 19 1998
`
`Sheet
`
`12 of 12
`
`5754772
`
`inscifl
`
`\LIENT PROCESSINGJ
`
`__________________________
`CREATE INSTANCE OF
`NAMED PIPE
`
`ESTABLISH CONNECTION
`WITH TRANSACTION
`PROCESSOR
`
`WAIT FOR CONNECTION
`ON INSTANCE OF
`NAMED PIPE
`
`_____________________
`READ MESSAGE FROM
`INSTANCE OF
`NAMED PIPE
`
`________________________
`EXTRACT THE NAMED VIEW
`FROM THE URL
`
`_______________________
`OPEN THE WEB-ViEW
`FILE NAMED IN THE URL
`
`__________________
`OPEN THE VIEW FILE
`NAMED IN THE LJRL
`
`502
`
`504
`
`506
`
`508
`
`510
`
`512
`
`514
`
`ALLOCATE MEMORY FOR
`VIEW BUFFER
`
`_____________________
`EXTRACT FIELD NAMES
`AND VALUES FROM
`THE IIRL
`
`520
`
`522
`
`___________________________
`WRITE THE VALUES TO POSITIONS
`IN THE VIEW BUFFER AS
`INDICATED BYTHE
`WEB-VIEW FILE
`
`____________________________
`CALL DISTRIBUTED TRANSACTION
`PROCESSING SYSTEM WITH
`SERVICE NAMED IN URL
`
`OPEN THE HTML TEMPLATE
`FOR THE NAMED VIEW
`
`_______________________
`EXTRACT VALUES FROM THE
`VIEW BUFFER USING THE
`WEB-VIEW FILE
`
`516
`
`518
`
`524
`
`526
`
`_________________________________
`WRITE VALUES EXTRACTED FROM THE
`VIEW BUFFER TO AN HTML DOCUMENT
`AS INDICATED BY ThE HTML TEMPLATE
`
`SEND THE HTML DOCUMENT
`ON THE INSTANCE OF THE
`NAMED PIPE
`
`530
`
`Figure 12
`
`Petitioner IBM – Ex. 1060, p. 13
`
`
`
`5754772
`
`SERVICE INDEPENDENT
`TRANSACTION
`HTTP SERVER-TO-TRANSACTION
`GATEWAY
`
`BACKGROUND
`
`Field of the Invention
`
`This invention generally relates to gateway processors for
`to database management
`providing access
`systems by
`browser programs and more particularly to
`gateway processor
`for making various transaction databases
`accessible by browser programs
`Description of the Related Art
`
`generalized
`
`disadvantage with the CGlprogram approach described
`above is that
`developer must be acquainted
`the application
`with the HTML the CGI and the database
`engine In
`different CGI program may be required for each
`addition
`different database thus adding to the cost of creating and
`for the Web Browser
`maintaining the database access
`Businesses are faced with the challenge of adapting their
`to new opportuni
`present usage of yesterdays technology
`ties that are made available with the World Wide Web Most
`software and underlying databases are
`10 business application
`not equipped to handle interaction with Web Browsers It
`would therefore be desirable to have
`flexible and efficient
`means for allowing interoperability between business appli
`cation software and the World Wide Web
`
`SUMMARY OF THE INVENTION
`
`for
`
`20
`
`conduct business with
`The methods by which companies
`their customers are undergoing
`fundamental changes due in 15
`to World Wide Web technology In addition the
`large part
`that makes
`same technology
`company accessible to the
`world may be used on internal company
`networks
`and administrative tasks
`conducting
`operational
`One of the technologies underlying the World Wide Web
`is the Web Browser Web Browsers are quickly becoming
`standard because of their ability to
`de facto user interface
`interpret and display information having
`standard formats
`e.g. HyperText Markup Language HTML standard text
`GIF etc. Client software programs popularly referred to as
`Web Browsers e.g. Mosaic Lynx etc execute on client
`systems and issue requests to server systems The server
`systems
`typically execute HyperText Transport Protocol
`HTFP server programs which process requests from the
`Web Browsers
`and deliver data to them The system that
`executes HflP server program and returns data to the Web
`be referred to as Web Server
`Browser will hereinafter
`System An HTTP server program itself will be referred to
`as Web Server
`Web Server System has access
`to on-line documents
`that contain data written in HyperText Markup Language
`HTML The HTML documents
`contain
`display
`parameters capable of interpretation by Web Browser and
`to other HTML documents
`and Web Servers
`references
`Source World Wide Web Beneath
`from UCL
`the Surf
`Press by Mark Handiey
`and Jon Crowcroft
`on-line at
`http//www.cs.ucLac.uk/staff/jonfbook/book.html
`As Web Browsers are making their mark as
`standard
`user interface many businesses have wealth of information
`is managed by prior art database management
`that
`systems
`such as DMS RDMS DB2 Oracle Ingres Sybase
`Informix and many others In addition many of the data
`base management
`systems are available
`as resources
`in
`larger transaction processing
`system
`One key to the future success of
`business may lie in its
`of Web
`on the growing prevalence
`ability to capitalize
`Browsers in combination with selectively providing access
`is stored in its databases Common Gateway
`to the data that
`Interface programs are used to provide Web Browser access
`to such databases
`The Common Gateway Interface CG1 is
`standard for
`interfacing external applications such as Web Browsers to
`obtain information from information servers such as Web
`Servers The CGI allows programs CGI programs to be
`referenced by Web Browser and executed on the Web
`UNIX database
`Server system For example to make
`via the World Wide Web
`CGI program is
`accessible
`executed on the Web Server system to transmit information
`to the database engine receive the results from the database
`engine and format the data in an HTML document which is
`returned to the Web Browser
`
`invention makes prior art on-line transaction
`The present
`processing OLTP systems and their associated databases
`Protocol HTTP
`accessible
`using HypefIext
`Transport
`interfaces The response time for an on-line user seeking
`HTIP access
`system is mini
`to the transaction processing
`transaction gateway client hav
`mized by pre-establishing
`static connection to the transaction processing system
`ing
`In addition the HflP access
`to the transaction processing
`system is available for multiple concurrent users The inven
`tion further provides
`gateway that
`is independent of the
`underlying service provided by the transaction processing
`system whereby the same gateway client
`is capable of usage
`with different databases and operations thereon
`An on-line transaction processing system is made acces
`sible to Web Browsers by establishing
`predetermined
`to receive HTFP
`plurality of
`gateway
`transaction
`clients
`by Web Server
`from the Web
`requests that are received
`Browsers Concurrent
`of multiple transaction
`processing
`requests from the Web Browsers is performed by the plu
`rality of transaction gateway clients Each transaction gate
`way client pre-establishes
`connection with the
`static
`system The pre-established
`on-line transaction processing
`connection allows requests from the Web Browsers
`to be
`quickly routed to the transaction processing system Time is
`saved by elimination of the traditional steps of connecting
`with and then disconnecting
`from the transaction processing
`from browser program The
`system for each
`request
`gateway client translates between HTIP formatted requests
`from the Web Browsers and the request
`format expected by
`the on-line transaction processing
`system
`The invention handies multiple concurrent
`requests from
`the Web Browsers and makes the requests available
`for
`50 concurrent processing by the on-line transaction processing
`system predetermined number of instances of the trans
`action gateway client are established to be available
`for
`performing the necessary translations Each of the instances
`of the transaction
`gateway client establishes
`static con-
`nection with the on-line transaction
`system as
`processing
`described above As requests are received by the Web Server
`from the Web Browsers the requests
`to an
`are routed
`one of the instances of the transaction
`available
`gateway
`client Each instance of the transaction
`gateway client
`time
`one request at
`capable of processing
`The transaction gateway client of the present
`independent
`of
`the underlying service
`initiated by the
`system For example the
`on-line transaction
`processing
`gateway client may be utilized with different
`65 database.managers the database manager being the service
`so long as the on-line transaction
`system is
`processing
`capable of utilizing the services provided by the different
`
`25
`
`30
`
`40
`
`is
`
`invention is
`
`transaction
`
`Petitioner IBM – Ex. 1060, p. 14
`
`
`
`5754772
`
`files
`
`is
`
`database managers Multiple styles of transaction
`gateway
`clients may be established however to interface with dif
`ferent styles of on-line transaction processing systems and to
`accommodate
`in data format requirements
`differences
`The independence
`of the transaction gateway client from
`is accomplished with each HTIP
`the underlying service
`from Web Browser program specifying
`requested
`request
`service and
`respective predetermined mapping file for each
`predetermined HyperText Markup Lan
`available service
`guage HTML template file is also established
`for each
`desired service Each of the predetermined mapping
`sets forth the format and content of the data buffer that
`used for communicating between the transaction
`gateway
`client and the on-line transaction processing
`system for the
`particular service
`mapping file directs
`the transaction
`gateway client where to write data to and read data from the
`the database The
`data buffer for predetermined fields of
`HTML template file is used in creating an HTML document
`is returned to Web Browset The transaction gateway
`that
`client reads data values from data buffer returned from the
`system as specified by the mapping
`transaction processing
`file the data values are written to appropriate locations
`in
`the HTML document
`as directed by information contained in
`the HTML template file
`Still other objects and advantages of the present
`will become readily apparent
`to those skilled in the art from
`the following detailed description wherein oaly the pre
`ferred embodiment of the invention is shown simply by way
`of illustration of the best mode contemplated
`for carrying
`the invention As will
`be realized the invention is
`out
`capable of other and different embodiments and its several
`obvious
`details are capable of modifications in various
`from the invention
`all without departing
`respects
`Accordingly the drawings and description are to be regarded
`as illustrative in nature and not as restrictive
`
`invention
`
`is
`
`interoperate
`
`BRIEF DESCRIPTION OF THE DRAWiNGS
`HG
`functional block diagram of
`computing
`environment in which transaction system and Web Server
`single system
`in
`HG is
`functional block diagram of an exemplary
`in which
`computing environment
`invention
`the present
`could be used
`HG
`
`is
`
`the software
`
`DETAILED DESCRIPTION
`
`HGS and
`are functional block diagrams of exemplary
`environments
`in which
`invention
`the present
`computing
`could be used to make
`transaction
`system
`interoperable with the World Wide Web HG is
`func
`tional block diagram of an environment in which the trans
`action system and the Web Server operate in single system
`and HG shows an environment in which the Web Server
`
`processing
`
`System acts as
`
`HG is
`
`front-end for the Enterprise Server System
`functional block diagram of
`computing
`transaction system and Web Server
`environment in which
`of micro
`single system
`in
`interoperate
`plurality
`computers designated as Web Browser 10 12 14 and 16
`18 yin Network 20 The
`Web Server
`are coupled
`to
`Network may be an internal
`local area network or the
`Intemet
`Each of the Web Browsers 1016 is comprised of soft
`ware for browsing the World Wide Web such as Mosaic
`Netscape Navigator etc and
`suitable micro-computer or
`computer workstation along with operating system software
`The Web Server may be off-the-shelf software such as the
`Information Server and Netscape Com
`Microsoft
`Internet
`
`10
`
`20
`
`30
`
`25
`
`merce Server
`The typical operating mode for the Web Server 18 is to
`receive requests from the Web Browsers 1016 and return
`the requested data from the Pre-formatted Data element 22
`The Pre-formatted Data consists of HTML documents
`The Server System 24 may be any data processing system
`is suitable for transaction processing applications such
`that
`as the 2200 Series A-Series and UNIX based data process
`ing systems from Unisys Corporation The exemplary Trans
`action Processing System 26 is intended
`to encompass
`transaction manager software such as OpenOLTP Transac
`from Unisys user
`tion Manager
`implemented
`software
`OpenOLTP services application programs and Open
`OLTP resource managers such as
`database management
`system The OpenOLTP transaction model is described in
`the XIOpen Guide Distributed Transaction Processing Ref
`40 erence Model as published by the XOpen Company Ltd
`U.K The present
`invention would be applicable
`to other
`non-standard
`based systems as
`or proprietary transaction
`
`50
`
`well as to other data servers in general
`The Transaction Processing System 26 serves data from
`the Database 28 to the Transaction Clients 30 32 34 and
`36 The Transaction Clients 3036 are coupled to the Trans
`action Processing System via Line 38 of which the under
`of the Trans
`lying technology
`is driven by the application
`action Processing System 26
`Gateway Client 40 allows the Web
`The Transaction
`Server 18 to interoperate with the Transaction
`Processing
`System 26 Specifically
`predetermined OpenOLTP
`service as defined by an application programmer
`is refer
`enced in an HTML document
`in the Pre-formatted Data
`55 element 22 When Web Browser 10 12 14 or 16 selects
`is routed to the Web Server 18 which
`the service the request
`to the Transaction Gateway Client
`in turn routes the request
`The Transaction Gateway Client determines
`the requested
`service and forwards the necessary information to the Trans
`60 action Processing System 26 The Transaction
`Processing
`the Database
`28
`System processes
`the request
`against
`request e.g select update
`to the specified
`according
`delete The Transaction
`Processing System returns data
`andor status information to the Transaction Gateway Client
`65 which in turn formats the data into an HTML document
`that
`is forwarded to the Web Server The Web Server
`HTML document
`to the requesting Web Browser
`
`sends the
`
`functional block diagram of
`that make
`transaction database accessible to
`components
`one or more Web Browsers
`HG is
`dataflow diagram showing the flow of data
`between the components of the exemplary system
`HG
`an
`flowchart of
`for
`the steps
`initializing
`Web Server System to provide Web
`database
`transaction
`
`is
`
`environment on
`Browser access
`
`to
`
`HG shows the relationship between the Web-View File
`and the View Buffer
`HG illustrates
`portion of the HTML Template created
`for the View Definition of HG
`HG illustrates
`sample View Definition
`HG is
`sample screen display of the image produced
`by Web Browser from an HTML document based on the
`HTML Template
`HG 10 is
`flowchart of the general processing of the
`Web Server
`HG 11 is
`flowchart of the processing performed by
`Gateway Link thread and
`HG 12 is
`flowchart of the processing performed by
`each of the instances of the Transaction Gateway Client
`
`Petitioner IBM – Ex. 1060, p. 15
`
`
`
`5754772
`
`HG is
`
`it
`
`interface
`
`functional block diagram of an exemplary
`environment
`in which
`computing
`invention
`the present
`could be used The environment of FIG differs from that
`of HG in that
`the Web Server 18 and the Database 28
`reside on separate data processing systems The Web Server
`18 resides on Web Server System 50 and the Database 28
`resides on an Enterprise Server System 52
`The Web Server System SO may be any class machine that
`is capable of running Web Server 18 along with Dis
`tributed Transaction Processor 54 In the exemplary Web
`Server System the Distributed Transaction Processing Sys
`tem 54 is similar to the Transaction Processing System 26 of
`FIG in that both are Open/OLTP compatible The Trans
`action Processing System 54 of HG is designated as
`Distributed to make clear
`transaction is formatted on
`that
`the Web Server System 50 and forwarded to the Enterprise
`suitable Distributed Trans
`Server System for processing
`action Processing System 54 for the Web Server System is
`from Unisys
`the Transactional Desktop
`software product
`The Transactional Desktop
`software is Open/OLTP
`compliant but does not have the required components
`for
`requests However
`service
`the Transactional
`processing
`Desktop software is capable of initiating service requests
`The exemplary Enterprise Server System is
`2200 Series
`and also includes
`system from Unisys
`data processing
`Distributed Transaction Processing System 56 The Distrib
`Processing System 56 is intended
`uted Transaction
`to
`encompass the same functionality as the Transaction Pro
`cessing System 26 However
`is designated as Distributed
`to be compatible with the Distributed Transaction Process
`ing System 54 The Distributed Transaction
`Processing
`System 54 and the Distributed Transaction Processing Sys
`tem 56 are coupled via Network 58 Preferably the network
`for Network 58 is separate from the network
`interface
`for Network 20
`The environment of HG may be preferable
`to the
`environment of HG in that
`the Web Server System 50
`request from the Web Browsers 1016
`maybe used prevent
`NT operating
`from entering Network 58 The Windows
`system is configurable
`routing of data packets
`to prevent
`between two network
`interfaces In this fashion the only
`is allowed on Network 58 in response to requests
`traffic that
`on Network 20 is in the form of Open/OLTP
`service calls
`which are referenced by HTML documents
`HG is
`functional block diagram of the software
`that make
`transaction
`database accessible to
`components
`one or more Web Browsers Before discussing the various
`software components it may be useful to illustrate
`high
`level data flow between the components
`The data flow is illustrated by the labeled directional
`arrows 72 74 76 and 78 The Web Server 18 receives
`Uniform Resource Locator UIRL character strings from the
`Web Browsers 10 12 14 and 16 UIRL character strings are
`instances 40
`passed to the Transaction Gateway Client
`which in turn translate the URL character strings into View
`Buffers View Buffers are passed to the Distributed Trans
`action Processing System 54 as shown by Line 74 and in
`turn passed on to the Distributed Transaction
`Processing
`System 56 Note that View Bobfer is
`data structure that
`is understood by the OpenJOLTP style Distributed Transac
`tion Processing Systems 54 and 56 The invention would be
`and/or database systems
`to transaction
`equally applicable
`which expect different data structures The Distributed
`Transaction Processing System 56 returns View Buffers to
`the Distributed Transaction Processing System 54 which in
`turn returns View Buffers to the Transaction Gateway Client
`
`trans
`
`instances 40 The Transaction Gateway Client
`instances
`transform the View Buffers into Hypeflext Markup Lan
`guage documents which are returned to the Web Server 18
`returns the HTML
`as shown by Line 78 The Web Server
`to the respective Web Browsers
`documents
`that make
`In terms of the software components
`database Web Browser efficiently accessible
`two
`action
`main components provide the accessibility The first com
`is the Gateway Link Thread 82 and the second is the
`ponent
`tO Transaction Gateway Client 40
`Web Servers such as the Netscape Commerce Server
`single Web Server
`support multiple threads That
`is
`process is multiplexed between the threads In the exem
`the Web Server software i.e Netscape
`plary embodiment
`Commerce Server
`is configured with
`Dynamic Link
`the Gateway Link Each of
`Library function designated as
`the Gateway Link threads 82 84 and 86 correspond
`to
`URL received from respective
`one of the Web Browsers
`1016 The basic function of Gateway Link is to establish
`connection with an available Transaction Gateway Client
`instance 40 forward
`URL to the Transaction Gateway
`Client instance receive an HTML document
`from the Trans
`instance and return the Hfl4L
`action Gateway Client
`to the respective Web Browser The Gateway Link
`document
`threads are designated with dashed lines to indicate that their
`
`20
`
`25
`
`30
`
`40
`
`existence is dynamic
`is the Transaction
`The second main software component
`Gateway Client 40 The main function of the Transaction
`Gateway Client is to transform request which is in the form
`UIRL from Web Browser 1016 into
`format which
`of
`is understandable by the Distributed Transaction Processing
`Systems 54 and 56 and transform the data returned from the
`Distributed Transaction Processing Systems 54 and 56 into
`HTML document
`Gateway Link
`that
`is returned to
`In the exemplary embodiment
`predetermined number
`are started and
`of Transaction Gateway Client
`instances
`available to process requests from the Web Browsers 1016
`Each of the Transaction Gateway Client instances processes
`time An equally suitable approach would be
`one request at
`to have one Transaction Gateway Process instance with
`multi-thread capability
`Each of the Transaction Gateway Client instances creates
`Named Pipe The instances of the Named
`an instance of
`Pipe are collectively referenced as 102 An instance of the
`Named Pipe is used for communicating between one of the
`Gateway Link threads 8286 and an available
`one of
`the
`Transaction Gateway Client
`In addition to instances of the Named Pipe 102
`each
`50 instance of the Transaction Gateway Client 40 establishes
`connection with the Distributed Transaction Processing Sys
`tem 54 This connection is established prior to
`Transaction
`request from Web Browser and
`Gateway Client receiving
`maintained for the life of the processor
`time
`instance so that
`and disconnecting
`ss is not wasted in connecting
`every time
`request appears In the exemplary system the connection
`made with the tpinit program call
`to the Distributed Trans
`action Processing System 54 In this manner each of the
`Transaction Gateway Client instances has
`preestablished
`connection with the Distributed Transaction
`60 and continuous
`Processing System 54 The connections between the Trans
`instances and the Dis
`action Processing System Gateway
`tributed Transaction Processing System are collectively ref
`erenced as 104
`
`instances
`
`is
`
`65
`
`between the Distributed Transaction Pro
`Connections
`cessing Systems 54 and 56 are established as requests are
`forwarded from the Transaction Gateway Client
`instances
`
`Petitioner IBM – Ex. 1060, p. 16
`
`
`
`5754772
`
`are collectively referenced as Lines 106
`The connections
`The connections are designated with dashed lines to indicate
`that the connections are dynamicaily established and undone
`as compared to the static connections
`between the Trans
`instances 40 and the Distributed
`action Gateway Client
`Transaction Processor 54
`HG is
`dataflow diagram showing the flow of data
`between the components of the exemplary system Initially
`for an HTML docu
`the Web Browser 10 makes
`request
`to the Web Server 18 in the form URL character
`ment
`The Web Server
`string as shown by Line
`then returns
`predetermined HTML document
`to the Web Browser as
`The data flow of Lines
`shown by Line
`and
`is intended
`to ifiustrate the initial
`Web Browser
`shows the URL forwarded from the Web Browser
`Line
`10 to the Web Server 18 in response to an action initiated by
`the Web Browser The Web Server
`in turn
`the user of
`the URL and passes it along to the Transaction
`receives
`The Transaction
`Gateway Client 40 as shown by Line
`Gateway Client 40 transforms the input URL into
`View
`Buffer which at Line
`is passed to the Distributed Trans
`action Processing System 54
`The Distributed Transaction
`Processing System 54 for
`wards the View Buffer to the appropriate resource manager
`not shown and receives
`the
`the results of processing
`View Buffer The View Buffer with the
`transaction
`in
`transaction results is returned
`to the Transaction Gateway
`The Transaction Gateway
`Client 40 as shown by Line
`Client extracts the transaction results from the View Buffer
`and inserts the transaction results into an HTML document
`the HTML document with the transaction results
`At Line
`is forwarded to the Web Server 18 The Web Server
`transmits the HTML document with the transaction results to
`the Web Browser 10
`HG
`
`steps for initiating
`
`transaction from
`
`then
`
`is
`
`initializing an
`for
`flowchart of the steps
`on Web Server System 50 to provide Web
`Browser access
`transaction database
`to
`View File Web-View File and an HTML Template
`are established on the Web Server System 50 at Steps 302
`304 and 306 respectively HG ifiustrates the content of
`View File 308 Web-View File 310 and View Buffer 312
`HG illustrates
`portion of an HTML Template 314
`The View File 308 is used by the Distributed Transaction
`View
`Processing System 54 in allocating memory for
`Buffer 312 the contents of which is used in communicating
`with the Distributed Transaction Processing System 56 The
`View Buffer is an area of Web Server System memory that
`is used to store
`data structure that contains data to be sent
`Processing System or that
`contains data received therefrom
`View File contains
`description of the fields that make
`data structure which is used by the transaction process
`up
`ing system service
`Processing Sys
`The exemplary Distributed Transaction
`referred to as the View
`tem 54 includes
`tool
`software
`View File 308 based on an input
`Compiler for establishing
`View Definition
`
`environment
`
`to the Distributed Transaction
`
`HG illustrates
`View
`sample View Definition 316
`Definition describes the data that may be input to or output
`from the Distributed Transaction Processing System 54 The
`sample View Definition contains
`fields of an
`selected
`employee database named EMP_BUF The lines that begin
`are comment
`lines and are not part of
`with
`definition The designation carray describes
`data type of an
`array of characters
`
`the
`
`The second column of the View Definition 316 is headed
`line The names
`by the identifier cname in the comment
`listed in this column are the corresponding names as they are
`referenced within
`data structure in
`language or Visual
`Basic language program
`The third column of the View Definition is headed by the
`identifier fbname in the comment
`line The names listed in
`this column are used in mapping fields named in the HTML
`Template 314
`The fourth column of the View Definition is headed by the
`in the comment line The count
`identifier count
`is number of
`occurrences of the associated field
`The fifth column of the View Definition is headed by the
`flag in the comment line This field is not utilized
`identifier
`invention
`in the present
`The sixth column of the View Definition is headed by the
`identifier size in the comment line The size designates the
`number of bytes required in the View Buffer 312 for storage
`field when the size of the data type is
`of the respective
`variable
`The seventh column of the View Definition is headed by
`in the comment
`line The null values are
`the identifier null
`the values that are stored in the View Buffer 312 if
`the field
`is not utilized in an HTML form
`At Step 304 of H