+ All Categories
Home > Documents > Ib849ci Ws Setup[1]

Ib849ci Ws Setup[1]

Date post: 10-Apr-2018
Category:
Upload: ganjaram
View: 214 times
Download: 0 times
Share this document with a friend

of 29

Transcript
  • 8/8/2019 Ib849ci Ws Setup[1]

    1/29

    1. Gateway

    a) Make sure the gateway is up and the connectors are loaded

    1

  • 8/8/2019 Ib849ci Ws Setup[1]

    2/29

    b) Open the integrationGateway.properties file by clicking on Gateway

    Setup Properties link on the Gateway page. Provide your credentials

    when prompted. Make sure that both the Default Application Serverand the Default Local Node (in the case below its E881G20P) have an

    entry containing the app server URL, UserId and Pwd, tools release,

    etc. as shown in the screenshot below. Note that the screenshot belowwas taken from another system

    c) Click on the Advanced Properties link on the above page to open the

    integrationGateway.properties file (screenshot below). Locate the ig.log.level

    setting, set the value to 5, and save the change. This will allow the msgLog.htmlto be generated. This file provides additional troubleshooting information, and can

    be found in the same directory as the errorLog.html

    (\webserv\\applications\peoplesoft\PSIGW).

    2

  • 8/8/2019 Ib849ci Ws Setup[1]

    3/29

    2. Service Configuration Page - Click on the Service Configuration Link and enter

    the PeopleSoftServiceListeningConnector URL and save. Also avoid changing the

    service and schema namespaces unless you have a valid location where you storethem.

    NOTE: The screenshot below was taken from another environment than the previous screenshots.

    3

  • 8/8/2019 Ib849ci Ws Setup[1]

    4/29

    3. Expose the CI as a Web Service (part 1)

    a) Navigate to PeopleTools > Integration Broker > Web Services > CI based

    Services.

    b) Enter the name of the CI you want to expose as a Web Service, and selectthe CI as shown below.

    c) Click on the Review CI status.

    4

  • 8/8/2019 Ib849ci Ws Setup[1]

    5/29

    d) If the Service and Service Operations dont exist, press the Display

    Selected Actions button, and the Service and Service Operations will be created.The screenshot below was taken after the Service and Service Operations were

    created.

    5

  • 8/8/2019 Ib849ci Ws Setup[1]

    6/29

    6

  • 8/8/2019 Ib849ci Ws Setup[1]

    7/29

    7

  • 8/8/2019 Ib849ci Ws Setup[1]

    8/29

    3. The next step is to Provide the Web Service. To perform this step navigate to

    PeopleTools > Integration Broker > Web Services > Provide Web Service as shown

    below.NOTE: If you want to force the soap request to provide the Userid/password, its a good idea to open each

    of the service operation(s), selecting the User/Password Required checkbox on the service operations

    General tab, and saving the change before Providing the Web Service (steps below). Performing this step

    prior to Providing the Web Service means that when the WSDL is generated at the end of the stepsbelow, the WSDL file will show this parameter to be required.

    a) Enter the name of the Service and click Search. If the Service is found, it

    will show up in the bottom portion (Search Results) as shown in the screenshotbelow.

    b) Select the checkbox next to the Service name and click Next.

    8

  • 8/8/2019 Ib849ci Ws Setup[1]

    9/29

    c) Select the checkboxes next to the Service Operation names and clickNext as shown below. The Service Operations you select here will be make up

    the WSDL file that is generated at the end of this task.

    9

  • 8/8/2019 Ib849ci Ws Setup[1]

    10/29

    d) Press Next again

    10

  • 8/8/2019 Ib849ci Ws Setup[1]

    11/29

    e) Press Finish. If you have a UDDI server already configured, you canalso publish to it.

    11

  • 8/8/2019 Ib849ci Ws Setup[1]

    12/29

    f) The URL in the screenshot below can be used by 3rd

    party tools todiscover the web service and import the wsdl, etc.

    NOTE:Some 3rd party tools may force you to include the message schema files inthe WSDL itself prior to importing the WSDL. If so, youll need to open the message

    definitions associated with each of the Service Operations in the WSDL, and

    copy/paste the schemas into the WSDL file.

    Below is the text

    Service: CI_STATE has been exported.

    Inserted WSDL: CI_STATE.1 in the repository

    Generated WSDL URL:

    http://gsplas144.us.oracle.com:7061/PSIGW/PeopleSoftServiceListeningConnector/CI_S

    TATE.1.wsdl

    12

    http://gsplas144.us.oracle.com:7061/PSIGW/PeopleSoftServiceListeningConnector/CI_STATE.1.wsdlhttp://gsplas144.us.oracle.com:7061/PSIGW/PeopleSoftServiceListeningConnector/CI_STATE.1.wsdlhttp://gsplas144.us.oracle.com:7061/PSIGW/PeopleSoftServiceListeningConnector/CI_STATE.1.wsdlhttp://gsplas144.us.oracle.com:7061/PSIGW/PeopleSoftServiceListeningConnector/CI_STATE.1.wsdl
  • 8/8/2019 Ib849ci Ws Setup[1]

    13/29

    If you copy the above URL into a browser you should be able to view the wsdl. Heres a

    sample (on the next page).

    13

  • 8/8/2019 Ib849ci Ws Setup[1]

    14/29

    NOTE: Prior to trying to open the wsdl in a browser as shown above open theGETWSDL service operation (part of the IB_UTILITY service), make sure it is active,

    and the Routing on the Routing tab (see below) is Active. If the routing is inactive,

    activate it and save the setting.

    GETWSDL Service Operation

    Routing tab of the GETWSDL Service Operation

    14

  • 8/8/2019 Ib849ci Ws Setup[1]

    15/29

    4. Service Operation Security (see PeopleBooks for additional security options)a) If you want UserId and password to be required in the request, select the

    User/Password checkbox to the right of the Operation Description.

    b) Click on the Service Operation Security link to the right of the Operation

    Alias edit box (in the above screenshot) to bring up a new window as shownbelow. Add Service Operation permissions to the appropriate Permission Lists

    (sample shown below).

    15

  • 8/8/2019 Ib849ci Ws Setup[1]

    16/29

    5. Generating a SOAP template for initial testing To perform initial testing using

    SendMaster utility you can generate a SOAP template by either (a) pressing the

    Generate SOAP Template button on the last page of Providing the Web Service(see page 12 for a sample screenshot of that page); or (b) clicking on PeopleTools >

    Integration Broker > Service Utilities and supplying the Service Name. Using either

    (a) or (b) above should take you to the page shown below. Click on the Service

    Operation link to get a sample SOAP request for the Service Operation you want totest.

    16

  • 8/8/2019 Ib849ci Ws Setup[1]

    17/29

    Heres a sample Find request from a PT 8.49 system

    PTDMO

    PTDMO

    USA

    CA

    17

  • 8/8/2019 Ib849ci Ws Setup[1]

    18/29

    Below is a sample of the WSDL file content

    M760694

    M953815

    M221555

    M500768

    CI_STATE_F

    CI_STATE_G

    18

  • 8/8/2019 Ib849ci Ws Setup[1]

    19/29

    wsse:UserNameToken

    wsse:UserNameToken

    CI_STATE

    19

  • 8/8/2019 Ib849ci Ws Setup[1]

    20/29

    6. Testing from SendMaster We strongly recommend that you test using

    SendMaster utility before integrating with the 3rd party system. This will help ensurethat the PeopleSoft system is set up correctly. Below are two sample messages, one is

    from a PT 8.48 system, and the second one is from a PT 8.49 system.

    Below is a sample from a PT 8.48x system.

    USA

    CA

    Below is a sample SOAP message from a PT 8.49x system.

    PTDMO

    PTDMO

    USA

    CA

    7. Start SendMaster. You can do this either by executing StartSendMaster.bat found

    in \sendmaster folder or the one in the PIA domain directory. To use

    the standalone version \sendmaster folder set the PS_HOME

    environment varilable to the PeopleTools root installation directory. You can do thisin the command line used to start SendMaster (see example below).

    20

  • 8/8/2019 Ib849ci Ws Setup[1]

    21/29

    8. Create a new Input File type SendMaster (File > New Project)

    a) Server URL needs to point to the PeopleSoftServiceListeningConnector, and itcomes from the WSDL file. For example,http://gsplas144.us.oracle.com:7061/PSIGW/PeopleSoftServiceListeningConnector

    21

    http://gsplas144.us.oracle.com:7061/PSIGW/PeopleSoftServiceListeningConnectorhttp://gsplas144.us.oracle.com:7061/PSIGW/PeopleSoftServiceListeningConnector
  • 8/8/2019 Ib849ci Ws Setup[1]

    22/29

    b) Header Section Ensure that the SOAPAction is included in addition to the

    Content-Type and charset settings. Unless you created an Alias for the Service

    Operation the SOAPAction will default to the Service Operation name. TheWSDL file contains the SOAPAction entry for each Service Operation. Ensure

    that the SOAPAction entry in SendMaster matches the entry in the WSDL file.

    SOAPAction:CI_STATE_F.V1

    c) Paste the sample SOAP request into the Input file window, press the format(right-most) button to ensure the XML is well formed. Below is a sample after

    posting the request.

    URL that youre posting to comes from the generated wsdl:

    http://gsplas144.us.oracle.com:7061/PSIGW/PeopleSoftServiceListeningConnector

    Header (second line comes from the wsdl file, and the end point URL come from wsdlfile). Note that the SOAPAction value also comes from the wsdl file.

    22

  • 8/8/2019 Ib849ci Ws Setup[1]

    23/29

    Content-type: text/xml; charset=UTF8

    SOAPAction:CI_STATE_F.V1

    Request

    USACA

    Response

    USACA

    9. If you want to view the synchronous inbound messages in the Message Monitor,do the following.

    a) Open the Service operation, click on the Routing tab. On the Routing tab click on

    the Routing definition link to open the Routing definition.

    b) Specify the level of logging you want on the Routing definition. There are threelevels, None (Default), Header, and Header and Details. Below is a screenshot of

    what the Routing definition would look like.

    23

  • 8/8/2019 Ib849ci Ws Setup[1]

    24/29

    c) Below is a screenshot of the Message Monitor showing one of the inbound

    messages. The second screenshot below shows the Details page (result of clicking

    on the Details link below).

    24

  • 8/8/2019 Ib849ci Ws Setup[1]

    25/29

    d) Note on monitoring SOAP requests: SOAP requests will go to an Error status ifan error occurs at the IB infrastructure level. Otherwise the request will go to a

    DONE status. This is unlike typical Asynchronous messages, in which the DONE

    status means that the transaction was successful. Using the Monitor to seewhether a request went to an Error or DONE status is inadequate. The calling

    application needs to check the response message to determine whether the request

    was successful or not. Below are two examples, one in which the request goes toan Error status, while the other goes to a DONE status. So, it is important for the

    calling application

    25

  • 8/8/2019 Ib849ci Ws Setup[1]

    26/29

    i) Example of a request that went to an Error status The system could not

    determine the CI name or method to be used. Below are two screenshots ofthe Monitor.

    26

  • 8/8/2019 Ib849ci Ws Setup[1]

    27/29

    ii) Below is an example of a request that went to DONE status even though the

    request was not successful (logic error) The request attempted to create a

    duplicate record.

    Below is a copy of the response message:

    SOAP-ENV:ServerComponent Interface API.

    Integration Broker Response209149Row already exists with the specified keys. {STATE} (91,49)

    USAMZ1

    Integration Broker Response209161Failed to create the Component Interface

    USAMZ1

    27

  • 8/8/2019 Ib849ci Ws Setup[1]

    28/29

    10. Notes on the new WSDLs The WSDLs in PT 8.48 and later, unlike the pre PT 8.48 WSDLs, reference external xsd (schema) files instead of including the

    schemas in the WSDL. They also refer to WS-SecurityPolicy instead of explicitly

    spelling out the specifics of the security portion of the soap header. It appears thatPeopleSoft uses and supports ws- security policy version 1.0. Given this you may not

    see the username token automatically generated in the client stub code. In some cases

    it may be simply a configuration change to get it generated, while in other cases yourweb service client code needs to explicitly call certain functions/methods (provided

    by the tool vendor) that will do this.

    The following is information provided by internal sources regarding .NET and

    whether it supports WS-SecurityPolicy, etc. You'll want to do some additionalresearch and work with your vendor as well, even if youre not using .NET. If

    using .NET, depending on the version of the .NET framework being used, .NET mayor may not be able to handle or simply ignore WS-SecurityPolicy references in the

    WSDL. For example, if you're using .NET framework 2.0, it doesn't handle ws-

    security policy. Later versions of .NET (3.0+) handle ws- security policy back to v.1.2 (not 1.0). .NET version 3.0+ generates policy assertion code in the client stub

    code, and the client application still needs to invoke a certain function, which in turn

    invokes the assertion code to include the username token. PeopleSoft uses ws-

    security policy to describe the ws-security username token in the soap header. Thismeans that even even if the ws-policy is ignored by .NET (or another application

    vendor when importing the WSDL), you're not really losing any functionality as faras the username token goes. Your client program still needs to call a specific .NETfunction (or other vendors function) to set the security credential if you want a

    security token to be used when invoking the PeopleSoft web service. Below are a

    couple of helpful links.

    .NET v2.0 (with WSE v3) See

    http://msdn.microsoft.com/en-us/library/aa528757.aspxNote: When the document in the above link refers to policy, it is specific to

    Microsoft. It is not refering to WS-SecurityPolicy. Also see topic, "How to: Secure a

    Client Without Using a Policy File".

    .NET 3.0+ - See

    http://msdn.microsoft.com/en-us/library/ms732362.aspx

    Aso see topic "Message Security with a User Name Client"

    11. Considerations when re-deploying the web service after making changes to the CI or

    its underlying component The following are steps you usually need to peform aftermaking changes to the CI and/or its underlying component.

    28

    http://msdn.microsoft.com/en-us/library/aa528757.aspxhttp://msdn.microsoft.com/en-us/library/ms732362.aspxhttp://msdn.microsoft.com/en-us/library/ms732362.aspxhttp://msdn.microsoft.com/en-us/library/aa528757.aspxhttp://msdn.microsoft.com/en-us/library/ms732362.aspx
  • 8/8/2019 Ib849ci Ws Setup[1]

    29/29

    a. If changes were made to the component, ensure there are no validation errors

    when opening or testing the CI. If records and/or field names were modified ordeleted, you will need to "re-synchronize" the component fields to the CI's

    properties. Then test the CI using CI tester in 3-tier (where you log into

    Application Designer through the Application Servers WSL port). If changeswere made to the component, its also a good idea to test the component online to

    ensure it works as expected.

    b. Delete Application Server cache, and restart the Application server. This is a

    necessary step because the Application Server caches the CIs Meta Data.

    c. You should delete the web service (service operations, service, WSDL, etc.).After this, expose the CI's methods again by going through the CI-Based

    Service Wizard, and then re-generating the WSDL by going through the

    Provide Web Service Wizard.


Recommended