Professional Documents
Culture Documents
Page 1 of 5
HTTP Transformation
HTTP Transformation
This chapter includes the following topics:
HTTP Transformation Overview
Creating an HTTP Transformation
Configuring the Properties Tab
Configuring the HTTP Tab
Examples
Informatica Corporation
http://mysupport.informatica.com
Authentication
The HTTP transformation uses the following forms of authentication:
Basic. Based on a non-encrypted user name and password.
Digest. Based on an encrypted user name and password.
NTLM. Based on encrypted user name, password, and domain.
Informatica Corporation
http://mysupport.informatica.com
file:///C:/Users/Ramakrishna%20K/AppData/Local/Temp/~hhD806.htm
3/16/2015
HTTP Transformation
Page 2 of 5
2.
3.
4.
Click Create.
The HTTP transformation displays in the workspace.
5.
Click Done.
6.
Informatica Corporation
http://mysupport.informatica.com
Description
Runtime Location
Location that contains the DLL or shared library. Default is $PMExtProcDir. Enter a path relative to the Integration Service node that runs the
HTTP transformation session.
If this property is blank, the Integration Service uses the environment variable defined on the Integration Service to locate the DLL or shared
library.
You must copy all DLLs or shared libraries to the runtime location or to the environment variable defined on the Integration Service node. The
Integration Service fails to load the procedure when it cannot locate the DLL, shared library, or a referenced file.
Tracing Level
Amount of detail displayed in the session log for this transformation. Default is Normal.
Is Partitionable
Indicates if you can create multiple partitions in a pipeline that uses this transformation:
No. The transformation cannot be partitioned. The transformation and other transformations in the same pipeline are limited to one partition.
Locally. The transformation can be partitioned, but the Integration Service must run all partitions in the pipeline on the same node. Choose
Local when different partitions of the Custom transformation must share objects in memory.
Across Grid. The transformation can be partitioned, and the Integration Service can distribute each partition to different nodes.
Default is No.
Output is Repeatable
Indicates if the order of the output data is consistent between session runs.
Never. The order of the output data is inconsistent between session runs.
Based On Input Order. The output order is consistent between session runs when the input data order is consistent between session runs.
Always. The order of the output data is consistent between session runs even if the order of the input data is inconsistent between session
runs.
Default is Based on Input Order.
Indicates if the Integration Service processes each partition at the procedure with one thread.
Output is Deterministic
Indicates whether the transformation generates consistent output data between session runs. Enable this property to perform recovery on
sessions that use this transformation. Default is enabled.
Warning: If you configure a transformation as repeatable and deterministic, it is your responsibility to ensure that the data is repeatable and deterministic. If you try to recover a session
with transformations that do not produce the same data between the session and the recovery, the recovery process can result in corrupted data.
Informatica Corporation
http://mysupport.informatica.com
Selecting a Method
The groups and ports you define in a transformation depend on the method you select. To read data from an HTTP server, select the GET method. To write data to an HTTP server, select
the POST or SIMPLE POST method.
file:///C:/Users/Ramakrishna%20K/AppData/Local/Temp/~hhD806.htm
3/16/2015
HTTP Transformation
Page 3 of 5
Description
GET
POST
SIMPLE POST
A simplified version of the POST method. Writes data from one input port as a single block of data to the HTTP server.
To define the metadata for the HTTP request, you must configure input and output ports based on the method you select:
GET method. Use the input group to add input ports that the Designer uses to construct the final URL for the HTTP server.
POST or SIMPLE POST method. Use the input group for the data that defines the body of the HTTP request.
For all methods, use the header group for the HTTP request header information.
Group
Description
Response
REQUEST
Input
The Designer uses the names and values of the input ports to construct the final URL.
REQUEST
Header
You can configure input and input/output ports for HTTP requests. The Designer adds ports to the input and output groups based on the
ports you add to the header group:
Input group. Creates input ports based on input and input/output ports from the header group.
Output group. Creates output ports based on input/output ports from the header group.
RESPONSE
Header
You can configure output and input/output ports for HTTP responses. The Designer adds ports to the input and output groups based on the
ports you add to the header group:
Input group. Creates input ports based on input/output ports from the header group.
Output group. Creates output ports based on output and input/output ports from the header group.
RESPONSE
Output
All body data for an HTTP response passes through the HTTPOUT output port.
The following table describes the ports for the POST method:
Request/
Group
Description
REQUEST
Input
You can add multiple ports to the input group. Body data for an HTTP request can pass through one or more input ports based on what you
add to the header group.
REQUEST
Header
You can configure input and input/output ports for HTTP requests. The Designer adds ports to the input and output groups based on the
ports you add to the header group:
Response
Input group. Creates input ports based on input and input/output ports from the header group.
Output group. Creates output ports based on input/output ports from the header group.
RESPONSE
Header
You can configure output and input/output ports for HTTP responses. The Designer adds ports to the input and output groups based on the
ports you add to the header group:
Input group. Creates input ports based on input/output ports from the header group.
Output group. Creates output ports based on output and input/output ports from the header group.
RESPONSE
Output
All body data for an HTTP response passes through the HTTPOUT output port.
The following table describes the ports for the SIMPLE POST method:
Request /Response
Group
Description
REQUEST
Input
You can add one input port. Body data for an HTTP request can pass through one input port.
REQUEST
Header
You can configure input and input/output ports for HTTP requests. The Designer adds ports to the input and output groups based on the
ports you add to the header group:
Input group. Creates input ports based on input and input/output ports from the header group.
Output group. Creates output ports based on input/output ports from the header group.
RESPONSE
Header
You can configure output and input/output ports for HTTP responses. The Designer adds ports to the input and output groups based on the
ports you add to the header group:
Input group. Creates input ports based on input/output ports from the header group.
Output group. Creates output ports based on output and input/output ports from the header group.
RESPONSE
Output
All body data for an HTTP response passes through the HTTPOUT output port.
Configuring a URL
After you select a method and configure input and output ports, you must configure a URL. Enter a base URL, and the Designer constructs the final URL. If you select the GET method, the
file:///C:/Users/Ramakrishna%20K/AppData/Local/Temp/~hhD806.htm
3/16/2015
HTTP Transformation
Page 4 of 5
final URL contains the base URL and parameters based on the port names in the input group. If you select the POST or SIMPLE POST methods, the final URL is the same as the base URL.
You can use a mapping parameter or variable to configure the base URL. For example, declare the mapping parameter $$ParamBaseURL, enter the mapping parameter $$ParamBaseURL
in the base URL field, and then define $$ParamBaseURL in the parameter file.
You can also specify a URL when you configure an HTTP application connection. The base URL specified in the HTTP application connection overrides the base URL specified in the HTTP
transformation.
Note: An HTTP server can redirect an HTTP request to another HTTP server. When this occurs, the HTTP server sends a URL back to the Integration Service, which then establishes a
connection to the other HTTP server. The Integration Service can establish a maximum of five additional connections.
?<input group input port 1 name> = $<input group input port 1 value>
For each input port following the first input group input port, the Designer appends the following group and port information:
& <input group input port n name> = $<input group input port n value>
where n represents the input port.
For example, if you enter www.company.com for the base URL and add the input ports ID, EmpName, and Department to the input group, the Designer constructs the following final URL:
www.company.com?ID=$ID&EmpName=$EmpName&Department=$Department
You can edit the final URL to modify or add operators, variables, or other arguments. For more information about HTTP requests and query string, see http://www.w3c.org.
Informatica Corporation
http://mysupport.informatica.com
Examples
This section contains examples for each type of method:
GET
POST
SIMPLE POST
GET Example
The source file used with this example contains the following data:
The Designer appends a question mark (?), the input group input port name, a dollar sign ($), and the input group input port name again to the base URL to construct the final URL:
http://www.informatica.com?CR=$CR
The Integration Service sends the source file values to the CR input port of the HTTP transformation and sends the following HTTP requests to the HTTP server:
POST Example
The source file used with this example contains the following data:
file:///C:/Users/Ramakrishna%20K/AppData/Local/Temp/~hhD806.htm
3/16/2015
HTTP Transformation
Page 5 of 5
The Integration Service sends the values of the three fields for each row through the input ports of the HTTP transformation and sends the HTTP request to the HTTP server specified in
the final URL.
The Integration Service sends the body of the source file through the input port and sends the HTTP request to the HTTP server specified in the final URL.
Informatica Corporation
http://mysupport.informatica.com
file:///C:/Users/Ramakrishna%20K/AppData/Local/Temp/~hhD806.htm
3/16/2015