Web Images Videos Maps News Shopping Gmail more »
Settings | Sign in

Server-side control objects for processing client-side user interface elements

 Gary S. Burd et al
A server-side control object processes and generates a client-side user interface element for display on a web page. Multiple server-side control objects may be combined into a hierarchy of server-side control objects that cooperate to generate the resulting authoring language code, such as HTML,...
Inventors: Gary S. Burd, Kenneth B. Cooper, Scott D. Guthrie, David S. Ebbo, Mark T. Anders, Ted A. Peters, Stephen J. Millet
Assignee: Microsoft Corp.
Primary Examiner: Wen-Tai Lin
Attorney: Microsoft Corporation

U.S. Classification
709/203; 709/219; 715/513

International Classification
G06F015/16

View patent at USPTO

Citations

Patent NumberTitleIssue date
5517655Method for monitoring transactions in an object-oriented environmentMay 14, 1996
5706505Method and system for binding data in a computer systemJan 6, 1998
5748890Method and system for authenticating and auditing access by a user to non-natively secured applications May 5, 1998
5774670Persistent client state in a hypertext transfer protocol based client-server system Jun 30, 1998
5812996Database system with methods for optimizing query performance with a buffer manager Sep 22, 1998
5835724System and method for communication information using the internet that receives and maintains information concerning the client and generates and conveys the session data to the client Nov 10, 1998
5897622Electronic shopping and merchandising systemApr 27, 1999
5911068Container independent control architectureJun 8, 1999
5940075Method for extending the hypertext markup language (HTML) to support enterprise application data bindingAug 17, 1999
5953524Development system with methods for runtime binding of user-defined classesSep 14, 1999
5961601Preserving state information in a continuing conversation between a client and server networked via a stateless protocolOct 5, 1999
5983227Dynamic page generatorNov 9, 1999
5991802Method and system for invoking methods of objects over the internetNov 23, 1999
6006230Database application development system with improved methods for distributing and executing objects across multiple tiersDec 21, 1999
6014666Declarative and programmatic access control of component-based server applications using rolesJan 11, 2000
6032207Search mechanism for a queue systemFeb 29, 2000
6067578Container independent control architectureMay 23, 2000
6076108System and method for maintaining a state for a user session using a web system having a global session serverJun 13, 2000
6108717Control system using plural objects, a programming method therefor, and a peripheral devices control systemAug 22, 2000
6115744Client object API and gateway to enable OLTP via the internetSep 5, 2000
6178461Cache-based compaction technique for internet browsing using similar objects in client cache as reference objectsJan 23, 2001
6185608Caching dynamic web pagesFeb 6, 2001
6205480System and method for web server user authenticationMar 20, 2001
6212192Method and apparatus for synchronizing information browsing among multiple systemsApr 3, 2001
6230160Creating proxies for distributed beans and event objectsMay 8, 2001
6247044Apparatus and method for processing servletsJun 12, 2001
6253228Method and apparatus for updating and synchronizing information between a client and a serverJun 26, 2001
6351767Method and system for automatically caching dynamic content based on a cacheability determinationFeb 26, 2002
6370561Method and system for invoking methods of objects over the internetApr 9, 2002
6373841Integrated LAN controller and web server chipApr 16, 2002
6397253Method and system for providing high performance Web browser and server communicationsMay 28, 2002
6401099Asynchronous binding of named objectsJun 4, 2002
6405241Dynamic generation of information using servlet objectJun 11, 2002
6460071System and method for managing client application state in a stateless web browser environmentOct 1, 2002
6460141Security and access management system for web-enabled and non-web-enabled applications and content on a computer networkOct 1, 2002
6463442Container independent data binding systemOct 8, 2002
6480894System and method for maintaining a state for a user session using a web systemNov 12, 2002
6487665Object security boundariesNov 26, 2002
6557038Method and apparatus for maintaining session statesApr 29, 2003
6591272Method and apparatus to make and transmit objects from a database on a server computer to a client computerJul 8, 2003
6622168Dynamic page generation acceleration using component-level cachingSep 16, 2003
6651108Method and apparatus for generating object-oriented world wide web pagesNov 18, 2003

Referenced by

Patent NumberTitleIssue date
7032036Wireless browserApr 18, 2006
7107543Single applet to communicate with multiple HTML elements contained inside of multiple categories on a pageSep 12, 2006
7152018System and method for monitoring usage patternsDec 19, 2006
7200615Viewing tabular data on small handheld displays and mobile phonesApr 3, 2007
7376659System, method, and computer program product for generating a web application with dynamic contentMay 20, 2008
7383531Extensible productivity tool for exposing common classes in application buildingJun 3, 2008

Claims

What is claimed is:

1. A hierarchy of server-side control objects, executable by a computer and embodied in one or more computer-readable media, for processing one or more client-side user interface elements incorporated in a web page displayed on a client, the hierarchy of server-side control objects comprising:

one or more server-side child objects corresponding to the one or more client-side user interface elements, at least one of the server-side child objects handling postback input received from the client and generating authoring language data for display of the client-side user interface element on the client;

at least one hierarchical identifier received from the client in association with the postback input specifying one of the server-side child objects; and

a server-side page object hierarchically related to the one or more server-side child objects and receiving the postback input for distribution to the one of the server-side child objects based on the hierarchical identifier.

2. The hierarchy of server-side control objects of claim 1 wherein the page object hierarchically contains the one or more server-side child objects.

3. The hierarchy of server-side control objects of claim 1 wherein each server-side child object is created responsive to an access to the server-side control object specified by the hierarchical identifier and remains in existence until after generation of the authoring language data for a corresponding client-side user interface element on the client.

4. The hierarchy of server-side control objects of claim 1 wherein each server-side child object is created responsive to an access to the server-side control object specified by the hierarchical identifier and remains in existence until after generation of the authoring language data for a corresponding client-side user interface element on the client.

5. A computer program storage medium readable by a computing system and encoding a computer program for executing a computer process that processes one or more client-side user interface elements incorporated in a web page on a client, the computer process comprising:

inputting one or more declarations from a server-side declaration datastore;

generating a hierarchy of server-side control objects programmed based on the declarations to provide functionality of the client-side user interface elements;

receiving a unique hierarchical identifier referencing one or more of the server-side control objects in the hierarchy of server-side control objects;

receiving postback input information associated with the unique hierarchical identifier;
resolving the unique hierarchical identifier to identify a referenced server-side control object;
passing the postback input information to the referenced server-side control object;
processing the postback input information using the referenced server-side control object; and
generating authoring language data from the hierarchy of server-side control objects for incorporating the client-side user interface elements in the web gage.

6. A method for processing at least one client-side user interface element incorporated in a web page displayed on a client, the method comprising:

reading a declaration from a resource;

generating a first server-side control object that corresponds to a first client-side user interface element;

generating a second server-side control object that corresponds to the first client-side user interface element, such that the first and the second server-side control objects exist concurrently;

processing the client-side user interface element using the concurrently existing server-side control objects; and
generating authoring language data from the concurrently existing server-side control objects for incorporating the client-side user interface element in the web page subsequent to the processing operation.

7. A method for processing at least one client-side user interface element incorporated in a web page displayed on a client, the method comprising:

reading a declaration from a resource;

generating a plurality of concurrently existing server-side control objects that logically correspond to the client-side user interface element, based on the declaration;

raising a server-side event associated with a first server-side control object;

handling the server-side event using a second server-side control object; ad
generating authoring language data from the concurrently existing server-side control objects for incorporating the client-side user interface element in the web page, subsequent to the processing operation.

8. A method for processing at least one client-side user interface element incorporated in a web page displayed on a client, the method comprising:

reading a declaration from a resource;

generating a plurality of concurrently existing server-side control objects that logically correspond to the client-side user interface element, based on the declaration;

raising a server-side event associated with a first server-side control object;

handling the server-side event using a non-user-interface component; and
generating authoring language data from the concurrently existing server-side control objects for incorporating the client-side user interface element in the web page, subsequent to the processing operation.

9. A method for processing at least one client-side user interface element incorporated in a web page displayed on a client, the method comprising:

reading a declaration from a resource:

generating a first server-side control object that corresponds to a client-side user interface element;

generating a second server-side control object that corresponds to the client-side user interface element, such that the first and the second server-side control objects exist concurrently;

processing the client-side user interface element using the first and second sever-side control objects; and
generating authoring language data from the concurrently existing server-side control objects for incorporating the client-side user interface element in the web page, subsequent to the processing operation.