Advanced Customization > Windchill Adapter > Info*Engine > Interacting with Info*Engine > Managing the Execution of Info*Engine Tasks
  
Managing the Execution of Info*Engine Tasks
Info*Engine tasks control the retrieval and manipulation of data. Tasks consist of the following:
Info*Engine webjects that retrieve and manipulate data.
Surrounding Info*Engine tags that manage the execution of the webjects.
Custom Java methods (similar to JSP declarations) and custom Java source (similar to JSP scriptlets) that provide logic unattainable using other Info*Engine constructs.
There are three basic ways to execute tasks:
Incorporate tasks directly into any Java application, including JSP pages, using Info*Engine tags.
Put the tasks in individual text-based documents, and specify which tasks to execute in the Info*Engine tags within a Java application (or JSP page).
Put the tasks in individual text-based documents, configure them for access using Info*Engine task delegation, and either use the Info*Engine Dispatch- Tasks webject or Info*Engine SOAP requests to invoke them.
The decisions about how and where to execute Info*Engine tasks depend on your system requirements. For example, you may have a dedicated environment where one system contains both your Info*Engine application and all of the required software components. The tasks to execute do not require any complex processing, and you can choose to execute your tasks from within JSP pages that are also used to display the results.
The JSP engine depicted in the diagram instantiates an instance of the SAK within the JVM of the JSP engine. The SAK is then used to process the Info*Engine tags in the task. The SAK processes the request and, as needed, uses the Windchill adapter classes to communicate with a Windchill system. After the requested information is obtained from the Windchill database, the process reverses itself and ultimately displays information in the user’s browser window.
Some Info*Engine tags can execute webjects that extract data from Windchill through the Windchill adapter classes, while others can display the data. In this example, all of the webjects are contained in the same JSP page.
* 
When there is a need to invoke multiple Windchill adapter webjects from within a JSP page, for performance reasons, it is best to encapsulate the invocation of those webjects within an Info*Engine task and send a request to invoke the task to the server. Running multiple Windchill adapter webjects from a single JSP requires multiple round trips to the server; encapsulating the same logic in the task and invoking once requires only one round trip.
The default installation of Windchill results in a method server that also acts as the Info*Engine server and windchill adapter. Use of the Web Event Service required additional third-party software and configuration changes.
Using the Windchill Adapter to Execute Tasks
After performing the basic Windchill installation, the Windchill adapter can execute Info*Engine tasks automatically. Request objects are generated by any Info*Engine component that requests service from another Info*Engine component. The SAK creates and sends request objects when it is performing work for a JSP page or standalone application.
In the following diagram, requests are sent to the webject processor through a communication interface. The request queries information from the Windchill method server before sending a response object back. Tasks and requests are processed separately through a task processor, which pulls information from both the Windchill adapter and Info*Engine.