KR20230036670A - Web Application Development System - Google Patents

Web Application Development System Download PDF

Info

Publication number
KR20230036670A
KR20230036670A KR1020210119477A KR20210119477A KR20230036670A KR 20230036670 A KR20230036670 A KR 20230036670A KR 1020210119477 A KR1020210119477 A KR 1020210119477A KR 20210119477 A KR20210119477 A KR 20210119477A KR 20230036670 A KR20230036670 A KR 20230036670A
Authority
KR
South Korea
Prior art keywords
web
handler
screen
data
server
Prior art date
Application number
KR1020210119477A
Other languages
Korean (ko)
Inventor
최성민
Original Assignee
주식회사 아이테크
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 아이테크 filed Critical 주식회사 아이테크
Priority to KR1020210119477A priority Critical patent/KR20230036670A/en
Publication of KR20230036670A publication Critical patent/KR20230036670A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/117Tagging; Marking up; Designating a block; Setting of attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/149Adaptation of the text data for streaming purposes, e.g. Efficient XML Interchange [EXI] format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces

Abstract

The present invention relates to a solution interface technology for developing web applications. Disclosed are a presentation method for web applications and a system for developing web applications using the same. The present invention relates to a solution interface method for developing web applications in a web environment consisting of a client including a web browser and a web server implemented by various types of server platforms, in which the solution interface method comprises: dividing a web page constituting the web applications into a screen corresponding to a design of the web page and a handler corresponding to a programming source to implement the same as a separate file; and loading the handler according to a request of the web browser by a web plus engine executed on a client side, loading a screen corresponding to the handler, creating an html tag through mapping between the handler and the screen, and assigning an attribute to the created html tag, thereby providing the attribute to the web browser. Accordingly, since a start-up of design and programming is possible, a development period can be shortened, maintenance and repair can be easily performed, and development can be performed independently regardless of platforms of various web servers.

Description

웹 응용 개발 시스템{Web Application Development System}Web Application Development System {Web Application Development System}

본 발명은 웹 애플리케이션(Web Application)을 개발하기 위한 솔루션으로 웹 인터페이스(Web interface)기술에 관한 것으로, 특히 월드 와이드 웹(World-Wide-Web: WWW)을 통해 웹 애플리케이션에 접속하는 일반 사용자에게 웹페이지를 어떻게 표현해줄 것인가를 명세화 시켜주는 솔루션으로 견고하게 구성된 비즈니스 로직과의 연결을 통해 웹 애플리케이션을 데스크탑 애플리케이션 수준으로 표현 가능한 프리젠테이션 방법 및 이를 이용한 웹 애 플리케이션 개발 시스템에 관한 기술이다The present invention relates to a web interface technology as a solution for developing web applications, and in particular, to general users who access web applications through the World-Wide-Web (WWW). It is a solution that specifies how to express a page. It is a presentation method that can express a web application at the level of a desktop application through connection with a solid business logic, and a technology related to a web application development system using the same.

일반적으로, 인터넷은 컴퓨터 및 네트워크가 확산됨에 따라 최근에 급격히 성장하였으며, " 월드 와이드 웹(또 는 WWW)" 을 집합적으로 구성하는 웹 페이지에 의해 함께 연결된 컴퓨터 시스템으로 이루어진 세계적인 정교한 네트워크로 발전해 왔다. WWW에 액세스하고자 하는 개별 PC에서 사용자는 통상 '웹 브라우저'라고 알려진 소프 트웨어를 사용한다. 웹 브라우저는 WWW 상의 웹 서버라고 알려진 다른 컴퓨터에 대한 접속을 만들고, 웹 서버로 부터 정보를 수신하고, 이것을 사용자의 컴퓨터상에 표시한다. 사용자에게 표시되는 정보는 통상 하이퍼텍스트 마크업 랭귀지(Hypertext Markup Language: HTML)라고 하는 전용의 언어를 사용하여 구현된 페이지로 구성되어 있다. HTML을 사용하는 웹 브라우저는 시장에 소개되어 있는 거의 모든 컴퓨터 시스템에 대하여 이용가능하게 되어, 컴퓨터 및 모뎀에 액세스(Access) 가능한 거의 모든 사람이 WWW에 액세스할 수 있게 되었다. WWW에 액세 스하는 컴퓨터 사용자의 급속한 신장 및 확산은 필연적으로 컴퓨터 하드웨어와 소프트웨어의 눈부신 발전을 이 끄는 원동력이 되었다.In general, the Internet has grown rapidly in recent years with the proliferation of computers and networks, and has developed into a worldwide sophisticated network of computer systems linked together by web pages that collectively constitute the "World Wide Web (or WWW)". . On individual PCs that wish to access the WWW, users use software commonly known as 'web browsers'. A web browser makes a connection to another computer known as a web server on the WWW, receives information from the web server, and displays it on the user's computer. The information presented to the user consists of pages implemented using a proprietary language, usually referred to as Hypertext Markup Language (HTML). Web browsers using HTML have become available for almost every computer system on the market, allowing almost anyone with access to a computer and modem to access the WWW. The rapid growth and spread of computer users accessing the WWW inevitably became the driving force leading to the remarkable development of computer hardware and software.

도 1은 종래의 웹 응용을 위한 프리젠테이션 개념을 도시한 개략도로서, 클라이언트(10)인 웹 브라우저(11)와 웹 서버(20) 및 데이터베이스(30)가 도시되어 있다.1 is a schematic diagram showing a presentation concept for a conventional web application, in which a web browser 11 as a client 10, a web server 20, and a database 30 are shown.

도 1을 참조하면, 웹 서버(20)는 적어도 프리젠테이션 계층(21)과 비지니스 로직 계층(22)을 포함하고 있는데, 종래의 웹 모델에서 프리젠테이션 계층(21)은 화면의 디자인과 프로그램 소스가 분리되지 않은 채 동일한 파일 에 구현되어 있다. 이러한 종래의 웹 모델에서 브라우저(11)가 HTTP 프로토콜에 따라 웹 문서를 요청하면, 웹 서버의 프리젠테이션 계층(21)은 필요에 따라 비지니스 로직(22)에 처리를 요구한 후 데이터를 전달받아 HTML과 CSS로 구성된 웹 표준 문서를 생성하여 브라우저(11)로 응답하였고, 이에 따라 브라우저(11)가 화면에 출력하였 다.Referring to FIG. 1, the web server 20 includes at least a presentation layer 21 and a business logic layer 22. In the conventional web model, the presentation layer 21 has a screen design and a program source. It is implemented in the same file without being separated. In this conventional web model, when the browser 11 requests a web document according to the HTTP protocol, the presentation layer 21 of the web server requests the business logic 22 to process as needed, and then receives the data and HTML A web standard document composed of and CSS was created and responded to by the browser 11, and the browser 11 outputs it to the screen accordingly.

그런데 이와 같이 WWW의 인기는 상승하고 그에 따른 기술도 급속히 발전하고 있지만 이에 따른 여러 가지 부수 적인 문제점 또한 같이 커져 가고 있는 것이 현실이다. 현재의 웹 애플리케이션에 있어서의 문제점을 사용자측 면과, 웹 애플리케이션 운영자 측면, 웹 개발자 측면에서 각각 살펴보면 다음과 같다.In this way, although the popularity of the WWW is rising and the technology is rapidly developing accordingly, the reality is that various incidental problems are also growing together. The problems in the current web application are examined from the user's side, the web application operator's side, and the web developer's side, respectively.

본 발명은 상기와 같은 문제점들을 해결하기 위해 제안된 것으로, 디자인과 소스를 상기 발명에 따라 스크린과 핸들러의 완전히 독립된 파일로 관리하며, 상기 발명에 의해 이미 개발된 컴포넌트(Components)와 그에 속한 속 성(Attribute)의 선언을 통해 개발자의 직접 프로그래밍 작업 없이 해당 기능의 구현이 완성되는 특징 등을 이 용하여 개발 및 유지보수가 용이하고 화면이 로드된 후에는 필요한 특정 부분의 데이터만 다시 호출 및 표현이 가능하여 화면의 리로드(Reload)를 최소화하고 반응속도를 개선할 수 있는 웹 응용을 위한 프리젠테이션 방법 및 이를 이용한 웹 응용 개발 시스템을 제공하는데 그 목적이 있다The present invention has been proposed to solve the above problems, and manages design and source as completely independent files of screen and handler according to the above invention, and components already developed by the above invention and their properties It is easy to develop and maintain by using the characteristic that the implementation of the corresponding function is completed without the developer's direct programming work through the declaration of (Attribute), and after the screen is loaded, only the necessary data of the specific part can be called and expressed again. The purpose is to provide a presentation method for web applications that can minimize screen reload and improve reaction speed and a web application development system using the same.

현재까지의 웹 애플리케이션의 구조는 사용자가 WWW상의 특정 웹 애플리케이션에 접속하여 사용자가 웹페이지에 서의 특정 작업을 요청하면 웹서버의 프리젠테이션 계층(21)이 필요에 따라 비지니스 로직(22)에 처리를 요청하 여 해당 작업을 완료하고 데이터를 전달받아 사용자의 웹브라우저에 보내줄 출력 데이타(해당 페이지의 내용이 변하지 않는 정적 HTML 페이지를 포함하거나 또는 동적으로 결정되어 출력 데이터 내로 삽입되어야 하는 데이터 를 포함할 수 있다)를 작성하고, 이를 사용자 웹 브라우저로 전송하게 되면 웹 브라우저가 이것을 해석하여 사 용자의 모니터 화면에 출력하게 된다. 다시 말해 사용자의 요청이 오면 웹서버에서 모든 처리를 완료하여 사용자 웹 브라우저에 출력 데이터가 전송될 때 까지 사용자는 대기해야만 했다.The structure of web applications so far is that when a user accesses a specific web application on the WWW and the user requests a specific task on the web page, the presentation layer 21 of the web server processes the business logic 22 as needed. to complete the task, receive the data, and output data to be sent to the user's web browser (including static HTML pages in which the content of the page does not change, or data that must be dynamically determined and inserted into the output data) can be done) and transmits it to the user's web browser, the web browser interprets it and displays it on the user's monitor screen. In other words, when a user's request arrives, the user has to wait until the web server completes all processing and output data is transmitted to the user's web browser.

따라서 사용자가 기다리는 동안에 네트워크의 속도 또는 웹서버의 프로세스 등의 가변적인 환경에 따라 갑작스 럽게 접속이 끊기거나 또는 일정한 시간 이상 사용자가 대기하는 상황이 종종 발생하였다.Therefore, while the user was waiting, the connection was suddenly disconnected or the user waited for a certain amount of time, depending on the variable environment such as the speed of the network or the process of the web server.

또한 사용자의 요청에 따라 현재 접속된 웹페이지에서 특정 부분의 데이터 변경이 발생할 때, 이를 웹 브라우저 에 반영하기 위해서 종래에는 변경되는 부분의 정보만 받아오지 못하고 화면에 표시할 HTML 등의 데이터 전체를 다시 웹 서버로부터 전송을 받게 되므로 웹서버와 네트워크에 부하를 초래하고, 이후 웹 브라우저가 받아온 출 력 데이터를 재구성하여 사용자의 모니터상에서 보여주게 되므로 모니터상의 화면이 깜빡거리는 등의 둔탁하고 유려하지 못한 웹 애플리케이션을 만날 수 밖에 없었다.In addition, when a data change occurs in a specific part of the currently accessed webpage according to the user's request, in order to reflect it to the web browser, conventionally, only the information of the changed part cannot be received, and the entire data such as HTML to be displayed on the screen is rediscovered. Since the transmission is received from the web server, it causes load on the web server and the network, and then the web browser reconstructs the output data received and displays it on the user's monitor, causing the screen on the monitor to flicker. had no choice but to meet

위와 같은 여러 한계로 인해 좀 더 다양하고 복잡한 업무를 처리하기 위해서 때로는 해당 사용자 컴퓨터에 새로 운 설치과정을 거치는 번거로운 작업을 통해서 데스크탑 애플리케이션 프로그램을 설치하여 이를 이용할 수 밖 에 없었다. 하지만 이것은 해당 데스크탑 애플리케이션 프로그램이 설치되지 않은 컴퓨터에서는 접속 자체가 불 가능한 근본적인 문제점을 안고 있다.Due to the above limitations, in order to handle more diverse and complex tasks, it was sometimes necessary to install and use desktop application programs through the cumbersome process of new installation on the user's computer. However, this has a fundamental problem in that access itself is not possible on a computer where the corresponding desktop application program is not installed.

웹 애플리케이션 운영자/회사 측면Web Application Operator/Company Side

위에서도 언급했듯이 WWW을 통해 수많은 사용자의 요청을 받아 해당 요청을 웹 서버에서 모두 처리하여 그에 대 한 출력 데이터를 만들어 각각의 사용자에게 응답을 해야하는 현재까지의 웹 애플리케이션의 구조는 해당 웹 애 플리케이션 시스템의 대량화와 방대함을 이루게 되었다. 그러나 더욱더 많은 사용자의 접속에 따라서 웹서버의 부하라는 문제가 또다시 초래되었다. 이를 해결하기 위해서 또 다른 시스템의 새로운 개발과 확장에 대한 노력 으로 여러 개발 방법론과 보다 나은 컴퓨터 시스템의 개념들이 도출되고, 이에 따른 하드웨어와 소프트웨어의 발전이 이루어졌다. 하지만 이것은 하드웨어, 소프트웨어, 컴퓨터, 플랫폼별로의 상이하게 발전하는 형태로 진 행되었다. 이들 본질적으로 다른 하드웨어 시스템은 통상 완전히 다른 운영 시스템을 사용한다. 이들 여러 가지 다른 하드웨어 및 소프트웨어 시스템이 존재하므로, 주어진 웹 애플리케이션에 대해 각각의 상이한 하드웨어 플 랫폼으로 포팅(porting)하기 위해 보통은 완전히 새로운 시스템 개발 노력을 필요로 한다. 이로 인해 동일한 컨 텐츠를 가진 웹 애플리케이션을 서로 다른 하드웨어 및 소프트웨어 플랫폼별로 각각 개발하고 운영하게 되므로 상당한 시간과 높은 비용을 가져오는 비생산적인 상황이 발생하게 된다.As mentioned above, the structure of the web application to date, which has to receive requests from numerous users through the WWW, process all the requests in the web server, create output data for them, and respond to each user. and achieved greatness. However, as more and more users access, the problem of load on the web server has been brought about again. In order to solve this problem, various development methodologies and concepts of better computer systems were derived through efforts for new development and expansion of other systems, and hardware and software developments were made accordingly. However, this has progressed in different ways by hardware, software, computer, and platform. These essentially different hardware systems typically use completely different operating systems. Since these different hardware and software systems exist, porting to each different hardware platform for a given web application usually requires an entirely new system development effort. As a result, web applications with the same content are developed and operated for each different hardware and software platform, resulting in an unproductive situation that takes considerable time and high costs.

그리고 그동안 기업의 복잡한 업무들을 웹으로 구현하기에는 전통적인 웹 애플리케이션 구조의 한계로 인해 데 스크탑 애플리케이션을 별도로 개발하여 관리하여 왔다. 이 때문에 업무에 따라 웹 애플리케이션과 데스크탑 애 플리케이션으로 나누어진 두 가지 형태의 애플리케이션을 보유하여야 하므로 유지보수의 어려움과 비용증가 등 의 여러 어려움을 겪을 수 밖에 없었다.In the meantime, desktop applications have been developed and managed separately due to the limitations of the traditional web application structure in order to implement complex corporate tasks through the web. Because of this, it was necessary to have two types of applications, which were divided into web applications and desktop applications, depending on the task, and thus suffered various difficulties such as difficulty in maintenance and increased costs.

그리고 또한 데스크탑 애플리케이션은 해당 사용자의 컴퓨터에 별도의 설치 과정을 거쳐야만 이용이 가능했으므 로 해당 데스크탑 애플리케이션 프로그램이 설치된 컴퓨터가 아니면 접속 자체가 불가능하였다. 그래서 이를 해 결하기 위해서 데스크탑 애플리케이션을 웹 애플리케이션으로 전환하기 위한 노력이 계속되었지만 현재까지의 노력으로는 데스크탑 애플리케이션의 복잡하고 다양한 기능을 모두 웹 애플리케이션으로 전환하기에는 부족한 것이 현실이다. 따라서 데스크탑 애플리케이션의 일부 기능을 제거하여 웹 애플리케이션으로 전환 가능한 부분 만을 엄선하여 해당 웹 애플리케이션을 개발하는, 충족되지 못한 형태의 전환 작업이 이루어지고 있다.In addition, since the desktop application could only be used through a separate installation process on the user's computer, access itself was impossible unless the computer had the desktop application program installed. So, in order to solve this problem, efforts have been made to convert desktop applications into web applications, but the reality is that the efforts so far are not enough to convert all the complex and diverse functions of desktop applications into web applications. Therefore, an unsatisfied conversion work is being made in which a web application is developed by carefully selecting only the parts that can be converted into a web application by removing some functions of the desktop application.

웹 애플리케이션 개발자(프로그래머, 웹디자이너) 측면Web application developer (programmer, web designer) aspect

서로 다른 새로운 웹 애플리케이션마다 새로운 인터페이스를 구성하게 되는 현재의 시스템 환경에서는 개발자들 은 새로운 프로그래밍 방법에 대해 재학습하여야만하고, 이를 운영하기 위해 또 다른 노력과 비용을 지불하게 된다. 따라서, 비록 오늘날 많은 웹 애플리케이션이 WWW을 통해 액세스할 수 있지만, 이들 다양한 웹 애플리케 이션 플랫폼의 상이함으로 인해 웹 애플리케이션 개발자는 새로운 플랫폼 환경과 운영 방법을 학습하기 위해 시간을 소비해야 하므로, 개발 의욕을 저하시키고 새로운 응용의 도입을 꺼려하게 되는 문제점이 있다.In the current system environment in which new interfaces are configured for each new web application, developers have to relearn new programming methods and pay additional efforts and costs to operate them. Therefore, even though many web applications today are accessible through the WWW, the differences between these various web application platforms discourage web application developers from spending time learning new platform environments and how to operate them. However, there is a problem that makes them reluctant to introduce new applications.

그런데 HTML은 현재 출시된 대부분의 컴퓨터 시스템에 의해 사용될 수 있는 잘 알려진 언어이다. 또한, HTML은 상당히 잘 제어되고 표준화된 언어이므로, 새로운 소프트웨어 애플리케이션의 기능들이 개발되어 HTML에 의해 지원될 경우, 그러한 기능들이 추가될 수 있다. 그러나 WWW상의 수많은 웹 애플리케이션 프로그램들은 동적인 데이터 정보의 빈번한 요청으로 인한 비즈니스 로직의 호출과 데이터베이스와의 연결 등으로 인해 단순 HTML을 사용하여 웹페이지를 구성하는 곳은 드물 것이다.By the way, HTML is a well-known language that can be used by most computer systems currently on the market. Also, because HTML is a fairly well-controlled and standardized language, as functions of new software applications are developed and supported by HTML, those functions may be added. However, it is rare that many web application programs on the WWW construct web pages using simple HTML due to business logic calls and database connections due to frequent requests for dynamic data information.

그래서 대부분의 웹 애플리케이션은 각각의 시스템 플랫폼에 적합한 서버 스크립트 언어를 사용하여 웹 애플리케이션 프로그램을 개발하는 것이 현실이다. 예를 들어, JSP(Java Sever Page), ASP(Active Server Page), PHP(PHP: Hypertext Preprocessor) 등이 있다.Therefore, in reality, web application programs are developed using a server scripting language suitable for each system platform for most web applications. For example, there are JSP (Java Server Page), ASP (Active Server Page), PHP (PHP: Hypertext Preprocessor), and the like.

위와 같은 서버 스크립트 언어는 정적인 데이터를 나타내는 HTML위에 비즈니스 로직과 연동하여 데이터베이스의 동적인 데이터를 표현하기 위해 각각의 서버 스크립트의 문법에 따른 프로그래밍을 더하게 되는 작업 구조를 가 진다.The above server script language has a work structure that adds programming according to the syntax of each server script to express dynamic data of the database in conjunction with business logic on top of HTML representing static data.

다시 말해 일반적으로 웹 디자이너가 HTML로 웹 페이지의 구성 및 내용을 만들면 이를 다시 프로그래머가 넘겨 받아 각각의 서버 스크립트 방식으로 해당 파일에 소스(Source)를 추가로 입력하여 비즈니스 로직과의 연결을 구성하게 된다. 이로써 동적인 웹페이지의 변화와 다양한 컨텐츠로 유려한 UI(User Interface)를 구현할 수 있 게 되었지만, 동일한 하나의 파일을 가지고 웹디자이너가 작업을 하고 프로그래머가 이를 받아서 다시 작업하게 되므로 디자인과 소스의 구현을 동시에 수행할 수 없어 개발에 시간이 많이 소요되는 문제점이 있다. 또한 일 차적인 웹 애플리케이션 프로그램의 개발이 끝나고 다시금 새로운 사용자의 요구사항에 따라 해당 웹페이지의 구성을 달리하게 될 때, 디자이너가 이미 서버스크립트 언어로 구현된 파일을 받아 새로운 HTML을 추가 또는 삭 제하게 되는데 웹디자이너에게는 익숙하지 않은 서버 스크립트 언어의 문법으로 인해 해당 서버 스크립트 언어 의 문법에 어긋나는 웹디자인이 이루어지면 이를 다시 프로그래머가 넘겨받아 서버 스크립트 언어를 수정해야 하므로 전체적으로 시간과 비용을 낭비하는 비효율적인 문제점이 발생하기도 한다.In other words, in general, when a web designer creates the composition and contents of a web page in HTML, the programmer takes over this again, and additionally inputs the source into the corresponding file in each server script method to configure the connection with the business logic. . This made it possible to implement a dynamic web page change and a sleek UI (User Interface) with various contents. However, since the web designer works with the same file and the programmer receives it and works again, the implementation of design and source cannot be performed at the same time, so it takes a lot of time for development. In addition, when the development of the primary web application program is completed and the configuration of the web page is changed according to the requirements of the new user, the designer receives the file already implemented in the server script language and adds or deletes new HTML. However, due to the grammar of the server script language that web designers are not familiar with, if a web design that does not conform to the grammar of the server script language is made, the programmer must take over and modify the server script language, so it is an inefficient problem wasting time and money as a whole. this may happen

또한 프로그래머 입장에서는 웹 페이지 내에서 일어나는 사용자의 이벤트(event) 또는 액션(action)과 같은 특 정한 요청에 따른 응답을 웹 브라우저에 나타내기 위한 프로그래밍을, 여러 종류의 스크립트(VB Script, JScript) 또는 서버 스크립트 언어로 구현해야 했다. 이로 인해 각각의 요청에 따른 응답을 위한 소스를 구현하 기 위해 오랜 프로그래밍 시간이 요구되고, 해당 요청사항의 변화가 발생할 때는 그에 맞는 또 다른 응답을 위 한 소스를 구현해야 하므로 유지보수가 어려운 문제점이 있다.In addition, from the programmer's point of view, programming to display the response to a specific request such as a user's event or action within a web page to the web browser, various types of scripts (VB Script, JScript) or server It had to be implemented in a scripting language. As a result, a long programming time is required to implement a source for a response according to each request, and when a change in the request occurs, a source for another response must be implemented, making maintenance difficult. there is.

이와 같이 종래의 웹 모델에서는 프리젠테이션 계층의 웹 문서가 디자인과 소스로 구분되어 있지 않으므로 코드 의 재사용이나 유지보수가 어렵고, 새로운 웹 응용을 개발하는데 시간이 많이 소요되는 문제점이 있다.As such, in the conventional web model, web documents in the presentation layer are not divided into design and source, so code reuse or maintenance is difficult, and it takes a lot of time to develop new web applications.

이상에서 설명한 바와 같이, 본 발명에 따르면 화면을 구성하는 웹 애플리케이션의 프로그램 소스에 해당하는 핸들러와 화면의 디자인에 해당하는 스크린으로 구분하여 관리함으로써 새로운 웹 응용의 개발을 용이하게 함과 아울러 유지보수를 편리하게 하고, 사용자 인터페이스(UI)를 담당하는 기능을 클라이언트측에서 처리하여 서버 의 부하를 줄일 수 있음과 아울러 애이잭스(AJAX)와 같은 최신의 웹 표준을 적용하여 화면의 리로드(Reload)를 최소화하여 유려한 화면구성과 로드 시간을 줄일 수 있는 효과를 제공한다.As described above, according to the present invention, the handler corresponding to the program source of the web application constituting the screen and the screen corresponding to the design of the screen are divided and managed, thereby facilitating the development of new web applications and reducing maintenance. It is convenient, and the load of the server can be reduced by processing the function responsible for the user interface (UI) on the client side, and minimizing screen reload by applying the latest web standards such as AJAX It provides an effect that can reduce the elegant screen composition and load time.

또한 WWW 상의 소프트웨어 애플리케이션에 액세스하는 기존 웹 애플리케이션 모델에 추가적인 기능을 부가하여 일반 사용자에게는 쉽고 유려한 웹페이지의 구성과 빠른 응답속도를 제공하고, 소프트웨어 개발자(프로그래머, 디자이너)에게는 기존 개발방식의 획기적인 변화를 통해 웹 애플리케이션 프로그램을 개발하기 위한 서로 다른 개발언어에 종속되지 않고, 디자인과 소스파일의 완전한 분리를 이루어 프로그래머와 디자이너에게 독립된 작업 환경을 제공하여 개발 생산성의 향상과 유지보수의 용이성을 제공한다.In addition, by adding additional functions to the existing web application model that accesses software applications on the WWW, it provides easy and elegant web page configuration and fast response speed to general users, and a groundbreaking change in the existing development method for software developers (programmers and designers). It is not dependent on different development languages for web application program development, and provides programmers and designers with an independent working environment through complete separation of design and source files to improve development productivity and provide ease of maintenance.

또한 소프트웨어 개발자가 표준 액세스 프로토콜을 채택하는 것을 허용하여, 개발자들로 하여금 HTML 인식 브라 우저를 사용할 수 있는 모든 컴퓨터 시스템에 대한 지원을 제공할 수 있도록 해준다.It also allows software developers to adopt standard access protocols, allowing developers to provide support for any computer system capable of using an HTML-aware browser.

그리고 본 발명은 해당 웹 애플리케이션의 운영자 및 운영조직에게 해당 웹 애플리케이션을 개발하기 위해 서 로 다른 플랫폼에 종속되지 않는 독립적인 환경을 제공하여 각각의 상이한 플랫폼 개수만큼이나 동일한 컨텐츠 를 가진 웹 애플리케이션 프로그램을 서로 다른 플랫폼 별로 만들 필요 없이 상기 발명에 따라 하나의 웹 애플 리케이션으로 각각의 플랫폼에 활용 가능하므로 비용과 개발 기간 단축효과를 통해 소규모의 운영자 및 운영 조직이라 하더라도 커다란 시장에 접근할 수 있는 공개적 경로를 제공할 수 있다.In addition, the present invention provides an independent environment that is not dependent on different platforms to develop the corresponding web application to the operator and operating organization of the corresponding web application, so that web application programs having the same contents as the number of different platforms can be developed in different ways. Since it can be used for each platform as a single web application according to the invention without the need to make it for each platform, even small operators and operating organizations can provide an open path to access a large market through the effect of reducing cost and development period. can

본 발명은 상기한 실시예에 한정되지 않으며, 본 발명이 속한 기술적 사상 내에서 당 분야의 통상의 지식을 가 진 자에 의해 많은 변형이 가능함은 명백하다.The present invention is not limited to the above embodiments, and it is obvious that many modifications are possible by those skilled in the art within the technical idea to which the present invention belongs.

상기와 같은 목적을 달성하기 위하여 본 발명의 방법은, 클라이언트- 웹 서버 구조에서 웹 응용(Application)을 제공하기 위한 방법에 있어서, 상기 클라이언트에서 실행되는 웹 플러스 엔진이 웹 브라우저의 요청에 따라 공 통 도큐먼트를 생성하는 제1 단계; 상기 웹 플러스 엔진이 해당 화면의 핸들러를 요청하면 상기 웹 서버가 핸들 러를 제공하는 제2 단계; 상기 웹 플러스 엔진이 해당 핸들러에 사용할 스크린을 요청하면 상기 웹 서버가 해당 스크린을 제공하는 제3 단계; 상기 웹 플러스 엔진이 상기 핸들러와 상기 스크린을 이용하여 웹 브라우저에 응 답하는 제4 단계; 이벤트가 발생되어 데이터가 요구되면, 상기 웹 플러스 엔진이 상기 웹 서버에 데이터를 요청 하고, 상기 웹 서버는 소정의 비지니스 로직을 실행하여 그 결과 데이터를 xml 파일로 응답하는 제5 단계; 및 상기 웹 플러스 엔진이 상기 xml 파일을 파싱하여 갱신된 데이터를 포함하는 html 파일을 상기 웹 브라우저에 제공하는 제6 단계를 구비한 것을 특징으로 한다.In order to achieve the above object, the method of the present invention is a method for providing a web application in a client-web server structure, wherein the web plus engine running on the client communicates with the web plus engine according to the request of the web browser. A first step of creating a document; a second step of the web server providing a handler when the web plus engine requests a handler for the corresponding screen; a third step of providing, by the web server, a corresponding screen when the web plus engine requests a screen to be used for a corresponding handler; a fourth step in which the web plus engine responds to the web browser using the handler and the screen; a fifth step of, when an event occurs and data is requested, the web plus engine requests data from the web server, and the web server executes a predetermined business logic and returns the resulting data as an xml file; and a sixth step of the web plus engine parsing the xml file and providing an html file including updated data to the web browser.

또한, 상기와 같은 목적을 달성하기 위하여 본 발명의 시스템은, 클라이언트-서버 구조로 된 웹 환경에 있어서, 상기 클라이언트에서 실행되는 웹 브라우저; 초기 접속시 상기 서버로부터 상기 클라이언트측으로 로드(load)되 고, 상기 웹 브라우저의 요청에 따라 상기 서버로 해당 화면의 핸들러와 스크린을 요청한 후 xml로 구성된 핸들 러를 파싱(Parsing)하고 스크린과의 매핑(Mapping) 정보를 해석하여 웹브라우저에 출력할 기본 html 문서을 생 성하여 상기 웹 브라우저로 출력하고, 이벤트에 따라 새로운 데이터가 필요하면 상기 서버로 동기/비동기방식으 로 통신하여 xml 데이터를 전달받아 웹브라우저에 출력된 html 정보를 갱신하여 상기 웹 브라우저로 출력하는 웹 플러스 엔진; 상기 서버에서 실행되고 문서를 핸들러와 스크린으로 구분하여 관리하면서 상기 웹 플러스 엔진의 요구에 따라 핸들러와 스크린을 제공하는 프리젠테이션부; 및 상기 서버에서 실행되고 상기 프리젠테이션 부의 요청에 따라 특정의 서비스를 처리하여 결과를 제공하는 비지니스 로직과의 연결을 제공하는 데이터 컨트 롤러(Data Controller)를 구비한 것을 특징으로 한다.In addition, in order to achieve the above object, the system of the present invention, in a web environment having a client-server structure, includes a web browser running on the client; Upon initial access, it is loaded from the server to the client side, and after requesting a handler and a screen of the corresponding screen to the server according to the request of the web browser, the handler configured in xml is parsed and mapped with the screen (Mapping) Interprets the information to generate a basic html document to be output to the web browser and outputs it to the web browser, and if new data is needed according to the event, it communicates with the server in a synchronous/asynchronous manner to receive xml data and send it to the web. a web plus engine that updates html information output to the browser and outputs the updated html information to the web browser; a presentation unit that is executed in the server and manages documents by classifying them into handlers and screens and provides handlers and screens according to a request of the web plus engine; and a data controller that is executed in the server and provides a connection with business logic that processes a specific service according to a request of the presentation unit and provides a result.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 자세히 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명에 따른 웹 응용을 위한 프리젠테이션 개념을 도시한 개략도이고, 도 3은 도 2에 도시된 프리젠 테이션 계층의 세부 구성도이며, 도 4는 도 2에 도시된 웹플러스 엔진의 동작 절차를 도시한 순서도이다.Figure 2 is a schematic diagram showing a presentation concept for a web application according to the present invention, Figure 3 is a detailed configuration diagram of the presentation layer shown in Figure 2, Figure 4 is the operation of the web plus engine shown in Figure 2 It is a flow chart showing the procedure.

본 발명에 따른 웹 응용을 구현하기 위한 환경은 도 2에 도시된 바와 같이, 클라이언트(100)와 웹 서버(200) 구조로 이루어진다. 클라이언트(100)는 통상의 웹 브라우저(110)와 본 발명에 따른 웹 플러스 엔진(120)으로 이 루어지고, 웹 서버(200)는 본 발명에 따라 웹 문서를 프로그램 소스에 해당하는 핸들러(213)와 화면의 디자인에 해당하는 스크린(214)으로 구분하여 제공하는 프리젠테이션 계층(210)과 통상의 비지니스 로직(220)(비지니스 로직은 상기 발명에 따른 결과물이 아니고 기존에 이미 구현되어 있는 통상의 비즈니스 로직을 의미한다.)으로 구성된다. 비지니스 로직(220)은 응용의 성격에 따라 데이터베이스관리시스템(DBMS)(300)이나CRM/ERP, LDAP 같 은 다른 자원(300)에 연결되어 응용이 요구하는 서비스를 처리한 후, 그 결과를 프리젠테이션 계층(210)에 제공 한다. 웹 플러스 엔진(120)은 클라이언트(100)가 본 발명이 적용된 웹 서버(200)에 접속할 경우 초기에 자동으 로 로드되어 클라이언트측에서 실행된다.As shown in FIG. 2, an environment for implementing a web application according to the present invention consists of a client 100 and a web server 200 structure. The client 100 is composed of a normal web browser 110 and the web plus engine 120 according to the present invention, and the web server 200 sends a web document to a handler 213 corresponding to a program source according to the present invention. The presentation layer 210 and the normal business logic 220 provided by dividing into the screen 214 corresponding to the screen design and the screen design It means logic). The business logic 220 is connected to the database management system (DBMS) 300 or other resources 300 such as CRM/ERP and LDAP according to the nature of the application, processes the service required by the application, and presents the result It is provided to the presentation layer 210. When the client 100 accesses the web server 200 to which the present invention is applied, the web plus engine 120 is initially automatically loaded and executed on the client side.

또한 본 발명에 따른 프리젠테이션 계층(210)은 도 3에 도시된 바와 같이, 웹 플러스 뷰어 매니저(211)와, 웹플 러스 데이터 콘트롤러(212), 툴부(215)로 이루어지고, 웹 플러스 뷰어 매니저(211)는 웹 응용의 화면을 이루는 요소인 스크린(214)과, 웹 응용의 로직을 이루는 요소로서 데이터를 연결해주며 스크린을 제어하는 핸들러(21In addition, as shown in FIG. 3, the presentation layer 210 according to the present invention is composed of a web plus viewer manager 211, a web plus data controller 212, and a tool unit 215, and a web plus viewer manager ( 211) connects the screen 214, which is an element of the screen of the web application, and the element of the logic of the web application, and the handler 21 that controls the screen by connecting data.

3)로 구성된다. 그리고 핸들러(213)는 데이터셋(213-1)과 트랜스퍼(213-2), 컨피그(213-3), 내장기능함수(213-3) consists of The handler 213 includes the data set 213-1, the transfer 213-2, the config 213-3, and the built-in function 213-2.

4), 에이잭스(Ajax)기반 콤퍼넌트 라이브러리(213-5)를 포함하고 있고, 웹플러스 데이터 콘트롤러(WebPlus Data Controller)(212)는 비즈니스 로직(220)과 연결되어 해당 웹페이지에 출력할 데이터를 중계하는 역할을 하는 XML Manager(212-1)와 데이터 맵핑(Data Mapping)(212-2)으로 나누어진다. 보조적인 기능을 수행하는 툴부 (215)는 핸들러 자동 완성(Handler Automatic Completion) 및 로깅(Logging) 등을 처리한다.4), Ajax-based component library (213-5) is included, and the WebPlus Data Controller (212) is connected to the business logic (220) to relay data to be displayed on the corresponding web page It is divided into an XML Manager (212-1) and a Data Mapping (212-2) that play a role. The tool unit 215 performing auxiliary functions processes handler automatic completion and logging.

도 3을 참조하면, 스크린(214)은 UI 표현을 위해 HTML 태그(Tag)를 삽입하고, 핸들러와 매핑(Mapping)되는 정보 를 가진 ID를 정의하며, 해당 스크린을 다른 핸들러에서 재사용할 수 있게 한다. 이러한 스크린은 html, jsp, asp, php 등의 모든 서버스크립트 언어 형식의 파일을 수용할 수 있다.Referring to FIG. 3, a screen 214 inserts an HTML tag for UI expression, defines an ID having information mapped to a handler, and allows the screen to be reused in other handlers. . These screens can accommodate files in any serverscript language format such as html, jsp, asp, php, etc.

핸들러(213)는 XML로 구현되어 스크린 UI 컴포넌트를 XML의 엘리먼트(Element)로 정의하고, 스크린과의 매핑 (Mapping)과 데이터 바인딩을 위한 ID와 XPATH를 정의하며, 자동화된 기능 구현을 위한 엘리먼트의 속성 및 내 장기능함수(213-4)를 사용하며, 상속과 포함관계를 이용하여 해당 핸들러와 스크린을 재사용할 수 있다. 이러한 핸들러(213)는 Dataset(213-1)과 Transfer(213-2), Config(213-3), 내장기능함수(213-4), 애이잭스(Ajax)기반 콤퍼넌트 라이브러리(213-5)로 이루어지는 웹 응용의 로직으로서, 스크린(214)과 데이터를 연결해주며 스크린 (214)이 실질적인 기능을 할 수 있도록 콘트롤한다. 콤포넌트 라이브러리(213-4)는 UI CONTROLS, UI COMPONENT, DATA MANAGE, BEHAVIORS, TOOLS 등이 있으며, UI CONTROLS는 UI콤포넌트 간의 유기적인 제어 속성 들을 제공하고, UI COMPONENT는 풍부한 화면 인터페이스를 제공하며, DATA MANAGE는 효율적인 데이터 동기화 관 리와 비동화 및 데이터 전송을 제공한다. BEHAVIORS는 최적화된 리로드(Reload)와 간단한 URL 이동 등을 제공한 다.The handler 213 is implemented in XML and defines screen UI components as XML elements, defines ID and XPATH for mapping with screens and data binding, and defines elements for automated function implementation. Attributes and built-in functions (213-4) are used, and corresponding handlers and screens can be reused using inheritance and inclusion relationships. This handler (213) consists of Dataset (213-1), Transfer (213-2), Config (213-3), built-in function function (213-4), and Ajax-based component library (213-5). As the logic of the web application being formed, it connects the screen 214 and data and controls the screen 214 to perform practical functions. The component library (213-4) includes UI CONTROLS, UI COMPONENT, DATA MANAGE, BEHAVIORS, TOOLS, etc. UI CONTROLS provides organic control properties between UI components, UI COMPONENT provides a rich screen interface, and DATA MANAGE provides efficient data synchronization management and desynchronization and data transmission. BEHAVIORS provides optimized reload and simple URL movement.

예컨대, 다음 표1과 같이 디자인과 프로그램이 분리되지 않은 종래의 웹 페이지를 본 발명에 따라 디자인과 핸 들러로 구분할 경우에, 핸들러는 다음의 표2와 같고, 스크린은 다음의 표3과 같다.For example, when a conventional web page in which design and program are not separated as shown in Table 1 below is divided into design and handler according to the present invention, the handler is shown in Table 2 below and the screen is shown in Table 3 below.

다음 표 1은 디자인과 프로그램이 분리되지 않은 웹 페이지의 예이다.Table 1 below is an example of a web page in which design and program are not separated.

XML Manager(212-1)는 클라이언트(100)로부터 xml 형태로 구성된 데이터를 전달받아 해당 xml을 파싱(parsin g)하여 데이터 맵핑부(Data Mapping)(212-2)에 전달하고 데이터 맵핑부(Data Mapping)(212-2)에서 받은 데이터 를 클라이언트에게 xml형태의 데이터를 생성하여 전달하는 역할을 수행한다.The XML Manager 212-1 receives data configured in xml form from the client 100, parses the corresponding xml, delivers it to the Data Mapping unit 212-2, and Mapping) (212-2) plays a role in generating and delivering XML-type data to the client.

데이터 맵핑부(Data Mapping)(212-2)는 비즈니스 로직(220)과 연결하여 전달받은 데이터를 XML Manager(212- 1)에 전달하는 비즈니스 로직(220)과의 데이터 인터페이스(data interface) 역할을 수행한다.The data mapping unit 212-2 connects with the business logic 220 and serves as a data interface with the business logic 220 to transfer the received data to the XML manager 212-1. carry out

그리고 웹 플러스 엔진(120)은 자바스크립트(Javascript)로 구현되어 도 4에 도시된 바와 같은 절차를 수행하여 브라우저(110)의 요구에 따라 핸들러(213)와 스크린(214)을 호출하고 핸들러(213)를 파싱(Parsing)하고 스크린 (214)과 ID정보로 매핑(Mapping)된 해당 개체의 html 파일을 생성하여 제공하며, 웹 서버(200)과 연결통신은 HTTP 및 xmlHttpRequest로 통신한다. 즉, 웹플러스 엔진(120)은 웹 브라우저(110)의 요청에 따라 웹플러스 엔진 을 적재하고 있는 하나의 윈도우를 구성하는 기능과, 하나의 윈도우는 웹플러스 엔진을 재 적재할 필요 없이 팝 업을 포함한 모든 화면에서 사용 가능하도록 해주는 기능, 화면과 기능 구현을 위한 공통 요소를 정의하고 있는 환경 설정 파일을 로드하고 파싱하여 전역 변수 및 세션 등과 같은 정보를 설정하는 기능, 화면과 기능을 구현 하기 위해 환경 설정 파일 또는 URL을 통해 직접 정의하는 핸들러를 호출하는 기능, 핸들러에 정의된 스크린 파 일들을 호출하여 설정된 윈도우 각각의 위치에 그리는 기능, 호출된 핸들러에 기술된 컨트롤러를 데이터 정보 (XPATH) 및 화면 분류(ID)별로 나누고 엘리먼트(Element) 및 속성 정보를 파싱하는 기능, 핸들러의 컨트롤러 태 그와 스크린 컨트롤러 태그의 아이디를 맵핑하여 해당 스크린 개체와 연결 기본 정보를 생성하는 기능, 핸들러 의 컨트롤러 태그 속성을 통해 기존에 개발자가 직접 기능을 구현하던 것을 선언된 속성 정보만으로 다양한 화 면 기능을 자동으로 구현하게 하는 기능, 핸들러의 스크립트 태그를 통해 이벤트 핸들러를 사용하며 이벤트가 발생시 내장함수 및 사용자 정의 스크립트를 통해 데이터 호출, 화면 전환, 팝업, 메시지 알림 등의 제공 기능 과 다양한 사용자 추가 기능 구현을 가능하게 하는 기능, 핸들러와 스크린이 완전 분리됨에 따라 각각 중복 사 용되는 화면과 기능을 핸들러에서 임포트하여 재사용하는 기능, 및 핸들러의 컨트롤러 태그 분류에 따라 원하 는 데이터만 리로드(Reload)하는 기능을 처리한다.And the web plus engine 120 is implemented in JavaScript and performs the procedure shown in FIG. 4 to call the handler 213 and the screen 214 according to the request of the browser 110 and the handler 213 ) is parsed, and an html file of the corresponding object mapped to the screen 214 and ID information is generated and provided, and connection communication with the web server 200 communicates with HTTP and xmlHttpRequest. That is, the webplus engine 120 has a function of configuring one window in which the webplus engine is loaded according to the request of the web browser 110, and one window performs a pop-up without the need to reload the webplus engine A function to enable use in all screens, including functions to load and parse an environment setting file that defines common elements for implementing screens and functions to set information such as global variables and sessions, and an environment to implement screens and functions. A function to call a handler that is defined directly through a setting file or URL, a function to call screen files defined in the handler and draw them in each location of the set window, and a controller described in the called handler to display data information (XPATH) and screen classification A function that divides by (ID) and parses element and property information, a function that maps handler controller tag and screen controller tag ID to create basic information for connection with the screen object, and controller tag property of handler A function that automatically implements various screen functions with only the declared property information, which was previously implemented by developers directly. Event handlers are used through handler script tags, and data are provided through built-in functions and user-defined scripts when events occur. Provide functions such as call, screen transition, pop-up, and message notification, function that enables implementation of various user-added functions, function that imports and reuses duplicated screens and functions from handler as handler and screen are completely separated, And it handles the function of reloading only the desired data according to the handler's controller tag classification.

도 4를 참조하면, 클라이언트(100)가 본 발명이 적용된 웹 서버(200)의 해당 웹 애플리케이션에 초기 접속을 시 도할 때, 웹 서버(200)로부터 웹플러스 엔진(120)이 클라이언트(100)의 브라우저(110)에 로드된다(S401,S402). 이후 웹플러스 엔진(120)은 브라우저(110)의 요청(HTTP request)이 있으면 공통 도큐먼트를 생성한다(S403). 공 통 도큐먼트는 도 6에 도시된 바와 같이 톱(top)과 바디(body), 보텀(bottom)으로 이루어진 공통으로 사용할 기 본화면 구성으로서, 톱은 전체 화면에서 헤드부분에 해당하고, 바디는 메인부분으로 스크린의 내용을 보여주는 부분이며, 보텀은 전체화면에서 아래부분이다.Referring to FIG. 4 , when a client 100 attempts an initial access to a corresponding web application of a web server 200 to which the present invention is applied, the web plus engine 120 from the web server 200 sends the client 100 is loaded into the browser 110 of (S401, S402). Thereafter, the web plus engine 120 generates a common document when there is an HTTP request from the browser 110 (S403). As shown in FIG. 6, the common document is a basic screen composition to be commonly used consisting of a top, a body, and a bottom. The top corresponds to the head portion of the entire screen, and the body corresponds to the main screen. This is the part that shows the contents of the screen, and the bottom is the lower part of the entire screen.

이어 start-config.xml과 message.xml 파일 읽어서 웹 애플리케이션의 실행될 기본적인 환경을 설정하고 화면을 제어하는 핸들러(213)를 호출한다(S404). start-config.xml 파일은 해당 웹 애플리케이션의 기본적인 환경을 컨 트롤하고, message.xml 파일은 해당 웹페이지에서 클라이언트(100)가 특정 이벤트를 발생시에 클라이언트(100) 에게 보여줄 경고(alert)창 내용을 나타내는 안내문이 정의되어 있다.Next, the start-config.xml and message.xml files are read, the basic environment to be executed of the web application is set, and the handler 213 that controls the screen is called (S404). The start-config.xml file controls the basic environment of the corresponding web application, and the message.xml file contains the contents of an alert window to be shown to the client 100 when a specific event occurs in the corresponding web page. A guideline is defined.

이어서 혹은 초기접속이 아닌 경우에는 호출된 핸들러(213)에 기술된 정보를 파싱한다(S405). 이때 다른 핸들러 를 import하여 공용으로 재사용 가능하다. 이어 핸들러(213)에 정의된 스크린(214) 파일을 호출하여 공통 도큐 먼트의 바디 부분에 해당 스크린(214)을 인클루드(include)한다(S406). 이에 따라 스크린을 재사용할 수 있다. 이어 핸들러 태그와 스크린 태그의 동일한 아이디(ID)명을 가진 태그(Tag)를 매핑(Mapping)하여 해당 개체의 기Subsequently or in the case of non-initial access, the information described in the called handler 213 is parsed (S405). At this time, it can be reused in common by importing other handlers. Subsequently, the screen 214 file defined in the handler 213 is called and the corresponding screen 214 is included in the body of the common document (S406). Accordingly, the screen can be reused. Next, by mapping a tag with the same ID of the handler tag and screen tag,

본 html 태그를 생성한다(S407). 이를 좀더 자세히 살펴보면, 다음과 같다.This html tag is generated (S407). Looking at this in more detail, it is as follows.

a) 웹 플러스 엔진이 핸들러의 엘리먼트 태그의 id정보를 해석한다.a) The web plus engine analyzes the id information of the handler's element tag.

b) 웹 플러스 엔진이 a)단계에서 찾은 id정보로 스크린의 태그의 id에서 동일한 id를 찾는다.b) The web plus engine searches for the same id in the tag id of the screen with the id information found in step a).

c) 웹 플러스 엔진이 a), b)단계를 통해 찾은 매핑정보를 html의 기본 태그로 생성한다.c) The web plus engine creates the mapping information found through steps a) and b) as basic tags in html.

d) 다시 a)단계로 순환하여 해당 핸들러와 스크린의 매핑을 실시한다.d) Cycle back to step a) to map the corresponding handler and screen.

예컨대, 다음 표 3과 같이 id가 "sch_value"인경우 핸들러와 스크린의 매핑으로부터 다음 표 4와 같이 html 기 본 태그를 생성한다.For example, as shown in Table 3 below, if the id is "sch_value", the html basic tag is created from the mapping between the handler and the screen as shown in Table 4 below.

이어, 핸들러(213)에 xml의 엘리먼트의 정의된 속성과 이벤트, 액션을 해석하여 이전 단계에 생성된 기본 html 태그의 속성과 스크립트 등을 추가로 설정한다(S408). 이를 좀더 자세히 살펴보면, 다음과 같다.Subsequently, the handler 213 interprets the defined attributes, events, and actions of the xml elements, and additionally sets the attributes and scripts of the basic html tags generated in the previous step (S408). Looking at this in more detail, it is as follows.

1) 웹플러스 엔진이 handler의 Element Tag의 event와 action과 관련된 개체의 정보를 찾거나, 기술된 각각의 속성(Attribute) 정보를 해석한다.1) Webplus engine searches object information related to event and action of element tag of handler or interprets each described attribute information.

2) 웹플러스 엔진이 handler의 Element Tag에 기술된 속성 정보를 토대로 handler와 screen이 id가 같은 개체 의 html 속성을 추가하고, 1단계에서 찾은 정보를 토대로 event와 action과 관련된 스크립트를 추가로 작성 한 다.2) Based on the attribute information described in the element tag of the handler, the webplus engine adds the html attribute of the object with the same id as the handler and the screen, and additionally writes scripts related to events and actions based on the information found in step 1. all.

3) 다시 1)단계로 순환하여 재실행한다.3) Cycle back to step 1) and execute again.

예컨대, 상기 표4와 같이 html 태그가 생성된 경우, 핸들러와 스크린으로부터 다음 표 5와 같이 속성을 부여한다.For example, when an html tag is generated as shown in Table 4 above, attributes are assigned as shown in Table 5 below from the handler and screen.

그리고 공통 도큐먼트의 바디 부분을 브라우저에 출력하고, 톱과 보텀에 해당하는 스크린을 호출하여 브라우저 로 출력한다(S409,S410).Then, the body part of the common document is output to the browser, and screens corresponding to the top and bottom are called and output to the browser (S409 and S410).

이어서, 상기와 같이 구성되는 본 발명에 따른 웹 응용 시스템에서 웹 브라우저와 웹 서버간의 전체 동작 절차 를 도 5를 참조하여 설명하면 다음과 같다.Subsequently, the entire operating procedure between the web browser and the web server in the web application system according to the present invention configured as described above will be described with reference to FIG. 5.

도 5를 참조하면, 클라이언트측의 브라우저(110)가 요구하면 웹 플러스 엔진(120)이 공통 도큐먼트를 생성한다 (S1,S2). 공통 도큐먼트는 앞서 설명한 바와 같이 톱(top)과 바디(body), 보텀(bottom)으로 이루어진 공통으로 사용할 기본화면 구성이다.Referring to FIG. 5 , when the client-side browser 110 requests, the web plus engine 120 creates a common document (S1, S2). As described above, the common document is a configuration of a commonly used base screen consisting of a top, a body, and a bottom.

이어 웹 플러스 엔진(120)이 xmlHttpRequest로 웹 서버(200)에 해당 화면의 핸들러를 요청하면 웹 서버(200)가 핸들러(213)를 제공하고, 핸들러(213)에 사용할 스크린을 요청하면 스크린(214)을 전달한다(S3~S6). 이때 웹서 버의 프리젠테이션 계층(210)은 본 발명에 따라 이전 웹 애플리케이션 모델 형태에 따른 하나의 파일에 디자인 과 소스가 결합된 형태가 아닌 프로그램 소스에 해당하는 핸들러(213)와 디자인에 해당하는 스크린(214)으로 구 분된 독립된 파일로 관리하고 있다.Subsequently, when the web plus engine 120 requests the handler of the corresponding screen from the web server 200 through xmlHttpRequest, the web server 200 provides the handler 213, and when requesting the screen to be used for the handler 213, the screen 214 ) is delivered (S3 to S6). At this time, the presentation layer 210 of the web server is a handler 213 corresponding to the program source and a screen corresponding to the design, rather than a form in which the design and source are combined in one file according to the previous web application model form according to the present invention. It is managed as an independent file separated by (214).

이어 웹플러스 엔진(120)이 핸들러(213)와 스크린(214)을 파싱(Parsing) 및 매핑(Mapping) 정보를 토대로 HTML 출력데이터를 생성하여 웹 브라우저(110)에 응답한다(S7,S8).Subsequently, the web plus engine 120 generates HTML output data based on parsing and mapping information of the handler 213 and the screen 214 and responds to the web browser 110 (S7 and S8).

이벤트가 발생되어 데이터가 요구되면, 웹플러스 엔진(120)이 웹 서버의 XML Manager(212-1)로 xmlHttpRequest 를 이용하여 데이터를 요청하고, 웹 서버의 XML Manager(212-1)는 xml 파싱을 수행한 후 Data Mapping(212-When an event occurs and data is requested, the Webplus engine 120 requests data to the XML Manager 212-1 of the web server using xmlHttpRequest, and the XML Manager 212-1 of the web server performs xml parsing. After performing Data Mapping (212-

2)로 VO(Value Object), 모델(Model), 리스트(List) 형태의 데이터를 전달하고, 이에 따라 Data Mapping(212-2) VO (Value Object), model (Model), and list (List) form data are delivered, and accordingly Data Mapping (212-

2)는 비지니스 로직을 호출하여 해당 처리를 요청한다(S9~S12).2) calls the business logic and requests corresponding processing (S9 to S12).

비지니스 로직(220)은 요구되는 응용의 성격에 따라 데이터베이스관리시스템 등과 같은 자원(300)을 통해 요구 사항을 처리한 후, 그 결과 데이터를 Data Mapping(212-2)로 전달하고, Data Mapping(212-2)는 다시 XML Manager(212-1)로 해당 데이터 정보를 VO(Value Object), 모델(Model), 리스트(List) 형태로 전달한다 (S13~S15).The business logic 220 processes the requirements through the resource 300 such as a database management system according to the nature of the application required, then transfers the resulting data to the Data Mapping 212-2, and the Data Mapping 212 -2) delivers the data information in the form of VO (Value Object), Model, and List to the XML Manager (212-1) again (S13 to S15).

그리고 XML Manager(212-1)는 Data Mapping(212-2)가 제공하는 VO(Value Object), 모델(Model), 리스트(List) 형태의 데이터를 xml로 생성한 후 웹 플러스 엔진(120)으로 응답하고, 이에 따라 웹 플러스 엔진(120)은 수신된 xml정보를 파싱한 후 브라우저(110)를 갱신하기 위한 html 정보로 전환하여 브라우저(110) 화면의 일부를 갱신 한다(S16~S19).And XML Manager (212-1) generates VO (Value Object), Model, and List type data provided by Data Mapping (212-2) as XML, and then converts them to Web Plus Engine (120). In response, the web plus engine 120 parses the received xml information and converts it into html information for updating the browser 110 to update a part of the screen of the browser 110 (S16 to S19).

이와 같이 본 발명에 따른 웹 응용 모델은 브라우저의 요청을 웹 플러스 엔진이 받아 웹서버로 전달하고, 웹서 버로부터 받은 핸들러와 스크린을 이용하여 브라우저를 위한 html 파일을 생성한다. 즉, 본 발명은 웹 브라우저 를 통해 사용자에게 보여지는 화면을 만드는 모든 사용자 인터페이스(UI) 작업은 클라이언트의 웹 플러스엔진 에서 처리하고, 서버는 비지니스 로직과 데이터만을 처리하여 클라이언트와 서버 사이의 역할을 균형 있게 분배하여 자원을 효율적으로 사용할 수 있게 한다.As such, in the web application model according to the present invention, the web plus engine receives a request from a browser and forwards it to the web server, and generates an html file for the browser using the handler and screen received from the web server. That is, the present invention balances the roles between the client and the server by processing all user interface (UI) tasks that create a screen that is displayed to the user through a web browser in the client's web plus engine, and the server processes only business logic and data. Distributed in an efficient manner to ensure efficient use of resources.

Claims (8)

웹 브라우저가 구비된 클라이언트와 다양한 종류의 서버 플랫폼들로 구현된 웹 서버로 이루어진 웹 환경에서 웹 애플리케이션(Web Application)을 개발하기 위한 솔루션 인터페이스(interface) 방법에 있어서,
상기 웹 서버상에 웹 페이지들을 디자인에 해당하는 스크린과, 프로그램에 해당하는 핸들러로 구분하여 별개의 파일로 구현하고,
상기 클라이언트측에서 실행되는 웹플러스 엔진이 상기 웹브라우저의 요구에 따라 상기 핸들러를 불러오고, 상 기 핸들러에 대응하는 스크린을 불러오며, 상기 핸들러와 상기 스크린을 매핑하여 html 태그를 생성한 후 속성 을 부여하여 상기 웹브라우저에 제공함으로써
디자인과 프로그램을 동시에 개발하여 개발기간을 단축하고 유지보수를 용이하게 함과 아울러 상기 웹 서버의 플랫폼에 관계없이 독립적으로 개발할 수 있는 것을 특징으로 하는 웹 응용을 위한 프리젠테이션 방법.
In a solution interface method for developing a web application in a web environment consisting of a client equipped with a web browser and a web server implemented with various types of server platforms,
The web pages on the web server are divided into screens corresponding to designs and handlers corresponding to programs, and implemented as separate files;
The webplus engine running on the client side calls the handler according to the request of the web browser, calls a screen corresponding to the handler, maps the handler and the screen, generates an html tag, and then sets the attribute by giving it to the web browser
A presentation method for a web application, characterized in that design and program are simultaneously developed to shorten development period and facilitate maintenance, and to be developed independently regardless of the platform of the web server.
클라이언트- 웹 서버 구조에서 웹 응용(Application)을 제공하기 위한 방법에 있어서,
상기 클라이언트에서 실행되는 웹 플러스 엔진이 웹 브라우저의 요청에 따라 공통 도큐먼트를 생성하는 제1 단 계;
상기 웹 플러스 엔진이 해당 화면의 핸들러를 요청하면 상기 웹 서버가 핸들러를 제공하는 제2 단계;
상기 웹 플러스 엔진이 해당 핸들러에 사용할 스크린을 요청하면 상기 웹 서버가 해당 스크린을 제공하는 제3 단계;
상기 웹 플러스 엔진이 상기 핸들러를 파싱(parsing)하고 상기 스크린과의 매핑(mapping)을 이용하여 웹 브라우 저에 응답할 html을 만들어 웹브라우저에 출력하는 제4 단계;
이벤트가 발생되어 데이터가 요구되면, 상기 웹 플러스 엔진이 상기 웹 서버에 데이터를 요청하고, 상기 웹 서 버는 소정의 비지니스 로직을 실행하여 그 결과 데이터를 xml 파일로 응답하는 제5 단계; 및
상기 웹 플러스 엔진이 상기 xml 파일을 파싱하여 갱신된 데이터를 포함하는 html 파일을 상기 웹 브라우저에 제공하는 제6 단계를 구비한 것을 특징으로 하는 웹 응용을 위한 프리젠테이션 방법.
In the method for providing a web application in a client-web server structure,
A first step of generating a common document according to a request of a web browser by a web plus engine executed in the client;
a second step in which the web server provides a handler when the web plus engine requests a handler for a corresponding screen;
a third step of providing, by the web server, a corresponding screen when the web plus engine requests a screen to be used for a corresponding handler;
a fourth step of the web plus engine parsing the handler and using the mapping with the screen to create html to respond to the web browser and output it to the web browser;
a fifth step of, when an event occurs and data is requested, the web plus engine requests data from the web server, and the web server executes a predetermined business logic and returns the resulting data as an xml file; and
and a sixth step of the web plus engine parsing the xml file and providing an html file including updated data to the web browser.
제2항에 있어서, 상기 제5 단계는
상기 웹 플러스 엔진이 상기 웹 서버의 xml Manager에 데이터를 요청하면 상기 xml Manager가 xml 파싱 후 데이 터 맵핑(Data Mapping)을 통해 해당 데이터를 요구하고, 상기 Data Mapping는 비지니스 로직을 호출하여 결과 데이터를 xml Manager로 전달하며, 상기 xml Manager는 결과 데이터를 xml 파일로 생성하는 것을 특징으로 하 는 웹 응용을 위한 프리젠테이션 방법.
The method of claim 2, wherein the fifth step
When the web plus engine requests data from the xml manager of the web server, the xml manager requests the corresponding data through data mapping after parsing xml, and the data mapping calls business logic to provide the resulting data. A presentation method for web applications, characterized in that the data is transmitted to an xml manager, and the xml manager generates the resulting data as an xml file.
클라이언트와 웹 서버로 이루어진 웹 환경에 있어서,
상기 클라이언트의 접속이 초기접속이면 상기 웹 서버로부터 웹 플러스 엔진을 로드하는 단계; 상기 웹 플러스 엔진이 웹 브라우저의 요청에 따라 공통 도큐먼트를 생성하는 단계;
상기 웹 플러스 엔진이 구성 파일을 리드(Read)하여 첫화면을 제어하는 핸들러를 호출하는 단계; 상기 웹 플러스 엔진이 호출된 핸들러에 기술된 엘리먼트(Element) 정보를 파싱(Parsing)하는 단계; 상기 웹 플러스 엔진이 상기 핸들러에 정의된 스크린 파일을 호출하는 단계;
상기 웹 플러스 엔진이 핸들러를 파싱(parsing)하고 핸들러 태그(tag)와 스크린 태그(tag)의 아이디(id)를 맵핑 (mapping)하여 해당 개체의 기본 html태그를 생성하는 단계; 및 상기 웹 플러스 엔진이 핸들러의 엘리먼트(Element)에 정의된 속성(Attribute)를 해석하여 이전 단계에 생성된 기본 html에 속성을 설정하는 단계를 구비한 것을 특징으로 하는 웹 응용을 위한 프리젠테이션 방법.
In a web environment consisting of a client and a web server,
loading a web plus engine from the web server if the client's access is an initial access; generating, by the web plus engine, a common document according to a request of a web browser;
Calling a handler for controlling the first screen by reading a configuration file by the web plus engine; Parsing element information described in a handler called by the web plus engine; calling the screen file defined in the handler by the web plus engine;
generating a basic html tag of the object by the web plus engine parsing the handler and mapping the ID of the handler tag and the screen tag; and a step in which the web plus engine interprets an attribute defined in an element of the handler and sets the attribute in the basic html generated in the previous step.
클라이언트-서버 구조로 된 웹 환경에 있어서, 상기 클라이언트에서 실행되는 웹 브라우저;
초기 접속시 상기 서버로부터 상기 클라이언트로 로드되고, 상기 웹 브라우저의 요청에 따라 상기 서버로 해당 화면의 핸들러와 스크린을 요청하여 파싱 및 매핑을 통해 html 출력 데이터를 생성하여 상기 웹 브라우저로 제 공하고, 이벤트에 따라 새로운 데이터가 필요하면 상기 서버로 동기/비동기방식으로 통신하여 xml 데이터를 전 달받아 html 정보를 추가하여 상기 웹 브라우저로 전달하는 웹 플러스 엔진; 및
상기 서버에서 실행되고 문서를 핸들러와 스크린으로 구분하여 관리하면서 상기 웹 플러스 엔진의 요구에 따라 핸들러와 스크린을 제공하는 프리젠테이션부를 구비한 것을 특징으로 하는 웹 응용 개발 시스템.
A web environment having a client-server structure, comprising: a web browser running on the client;
Upon initial access, it is loaded from the server to the client, and according to the request of the web browser, a handler and a screen of the corresponding screen are requested from the server, html output data is generated through parsing and mapping, and provided to the web browser, If new data is required according to an event, a web plus engine communicates with the server in a synchronous/asynchronous manner, receives xml data, adds html information, and transmits it to the web browser; and
A web application development system comprising a presentation unit that is executed in the server and manages documents by classifying them into handlers and screens and provides handlers and screens according to a request of the web plus engine.
제5항에 있어서, 상기 프리젠테이션부는
웹 응용의 화면을 이루는 요소인 스크린과, 웹 응용의 로직을 이루는 요소로서 상기 스크린과 데이터를 연결해 주며 상기 스크린을 제어하는 핸들러로 이루어진 웹 플러스 뷰어 매니저(Manager)와,
상기 클라이언트가 요청하는 데이터를 전달해주기 위해 상기 웹플러스 엔진으로부터 넘겨받은 xml 정보를 파싱 하여 데이터 맵핑(Data Mapping)부로 전달하고, 상기 데이터맵핑(Data Mapping)부에서 받은 데이터를 xml정보로 생성하여 클라이언트에게 전달는 XML 매니저(XML Manager)와, 상기 비즈니스 로직을 연결하여 해당 데이터를 찾 아 상기 XML Manager에게 데이터를 전달하는 상기 데이터 맵핑(Data Mapping)부로 이루어진 웹플러스 데이터 컨 트롤러로 구성된 것을 특징으로 하는 웹 응용 개발 시스템.
The method of claim 5, wherein the presentation unit
A web plus viewer manager consisting of a screen, which is an element of a screen of a web application, and a handler that connects data to the screen and controls the screen as an element of the logic of the web application;
In order to deliver the data requested by the client, the xml information received from the webplus engine is parsed and transmitted to the Data Mapping unit, and the data received from the Data Mapping unit is generated as xml information to the client It is characterized in that it is composed of a web plus data controller consisting of an XML manager that transmits data to the XML manager and the data mapping unit that connects the business logic to find corresponding data and transmits the data to the XML manager. application development system.
제6항에 있어서, 상기 핸들러는
테이터셋(Dataset)과 트랜스퍼(Transfer), 컨피그(Config), 내장기능함수, 에이잭스(Ajax)기반 컴포넌트 라이브 러리를 포함하는 것을 특징으로 하는 웹 응용 개발 시스템.
7. The method of claim 6, wherein the handler
A web application development system characterized by including Dataset, Transfer, Config, built-in function, and Ajax-based component library.
제5항에 있어서, 상기 웹플러스 엔진은 자바스크립트(Javascript)로 구현되어
상기 웹 브라우저의 요청에 따라 웹플러스 엔진을 적재하고 있는 하나의 윈도우를 구성하는 기능;
상기 하나의 윈도우는 상기 웹플러스 엔진을 재 적재할 필요 없이 팝업을 포함한 모든 화면에서 사용 가능하도 록 해주는 기능;
화면과 기능 구현을 위한 공통 요소를 정의하고 있는 환경 설정 파일을 로드하고 파싱하여 전역 변수 및 세션 등과 같은 정보를 설정하는 기능;
화면과 기능을 구현하기 위해 환경 설정 파일 또는 URL을 통해 직접 정의하는 핸들러를 호출하는 기능; 상기 핸들러에 정의된 스크린 파일들을 호출하여 설정된 윈도우 각각의 위치에 그리는 기능;
상기 호출된 핸들러에 기술된 컨트롤러를 데이터 정보(XPATH) 및 화면 분류(ID)별로 나누고 엘리먼트(Element) 및 속정 정보를 파싱하는 기능;
상기 핸들러의 컨트롤러 태그와 상기 스크린 컨트롤러 태그의 아이디를 맵핑하여 해당 스크린 개체와 연결하여 기본 정보를 생성하는 기능;
상기 핸들러의 컨트롤러 태그 속성을 통해 기존에 개발자가 직접 기능을 구현하던 것을 선언된 속성 정보만으로 다양한 화면 기능을 자동으로 구현하게 하는 기능;상기 핸들러의 스크립트 태그를 통해 이벤트 핸들러를 사용하며, 이벤트가 발생시 내장함수 및 사용자 정의 스 크립트를 통해 데이터 호출, 화면 전환, 팝업, 메시지 알림 등의 제공 기능과 다양한 사용자 추가 기능 구현을 가능하게 하는 기능;
상기 핸들러와 상기 스크린이 완전 분리됨에 따라 각각 중복 사용되는 화면과 기능을 상기 핸들러에서 임포트하 여 재사용하는 기능; 및
상기 핸들러의 컨트롤러 태그 분류에 따라 원하는 데이터만 리로드(Reload)하는 기능을 수행하는 것을 특징으로 하는 웹 응용 개발 시스템.
The method of claim 5, wherein the web plus engine is implemented in JavaScript
A function of configuring one window in which the Web Plus engine is loaded according to the request of the web browser;
a function allowing the one window to be used on all screens including pop-ups without the need to reload the webplus engine;
A function to set information such as global variables and sessions by loading and parsing an environment setting file that defines common elements for implementing screens and functions;
Ability to call handlers defined directly through configuration files or URLs to implement screens and functions; a function of calling the screen files defined in the handler and drawing them at the location of each set window;
a function of dividing the controller described in the called handler by data information (XPATH) and screen classification (ID) and parsing element and attribute information;
a function of mapping the ID of the controller tag of the handler and the ID of the screen controller tag, and generating basic information by connecting the corresponding screen object;
A function that automatically implements various screen functions only with the property information declared by the developer through the controller tag property of the handler; An event handler is used through the script tag of the handler, and when an event occurs Provide functions such as data call, screen transition, pop-up, and message notification through built-in functions and user-defined scripts, and functions that enable implementation of various user-added functions;
a function of importing and reusing overlapping screens and functions from the handler as the handler and the screen are completely separated; and
The web application development system characterized in that it performs a function of reloading only desired data according to the controller tag classification of the handler.
KR1020210119477A 2021-09-08 2021-09-08 Web Application Development System KR20230036670A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210119477A KR20230036670A (en) 2021-09-08 2021-09-08 Web Application Development System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210119477A KR20230036670A (en) 2021-09-08 2021-09-08 Web Application Development System

Publications (1)

Publication Number Publication Date
KR20230036670A true KR20230036670A (en) 2023-03-15

Family

ID=85642076

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210119477A KR20230036670A (en) 2021-09-08 2021-09-08 Web Application Development System

Country Status (1)

Country Link
KR (1) KR20230036670A (en)

Similar Documents

Publication Publication Date Title
US7912935B2 (en) Development and deployment of mobile and desktop applications within a flexible markup-based distributed architecture
US7707563B2 (en) System and method for network-based computing
US7509649B2 (en) System and method for conversion of generic services' applications into component based applications for devices
CA2557111C (en) System and method for building mixed mode execution environment for component applications
US7814404B2 (en) System and method for applying workflow of generic services to component based applications for devices
JP5439190B2 (en) Method and system for creating server-based web applications for IT
US8578333B2 (en) Method and system for client-side user interface enhancement to enable application integration and portalisation
US7321918B2 (en) Server-side control objects for processing client-side user interface elements
JP5248964B2 (en) Method and system for generating screen elements or data objects for wireless applications
US7007266B1 (en) Method and software system for modularizing software components for business transaction applications
US20080104025A1 (en) Method and system for efficient execution and rendering of client/server interactive applications
US20060064422A1 (en) Data sharing system, method and software tool
US20040123238A1 (en) Selectively interpreted portal page layout template
US20060236307A1 (en) System and method for transformation of wireless application definition to simplified form
US20050021756A1 (en) Method of developing, delivering and rendering network applications
WO2006110982A1 (en) System and method for flexible visual representation of presentation components
CA2538561C (en) System and method for conversion of web services applications into component based applications for devices
CN106371848B (en) A kind of web Development Framework supports the implementation method of Odata
KR20230036670A (en) Web Application Development System
KR100831393B1 (en) Presentation method for web applications and web application development system using the same
CN116501427A (en) WakeData applet custom layout method
EP1698975A1 (en) System and method for applying workflow of generic services to component based applications
Roseman Proxy Tk: A Java applet user interface toolkit for Tcl
Ghoda et al. Advanced Silverlight 3 Features
Tiwari et al. Migrating Web 1.0 Interfaces to RIA