cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP receiver channel

Former Member
0 Kudos

Hello All

I am trying soap scenario when i post the soap request through SOAP UI with authentication type as Pre-emptive then i am getting the response perfectly

If i dont use authentication type as Pre-emptive i am getting an error.  same error i am getting when i post request through PI using soap receiver channel.

how to solve this? I dont see any option in PI soap receiver channel to set the authentication type.

Regards

Sandeep

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi All

To achieve the requirement i configured SOAP axis adapter and we can pass the authentication over http header.

Regards

Sandeep

0 Kudos

Hi Bro,, how do you set your AXIS Adapter. I have the same problem, but with 2 pre-emptive header. 1st one is basic authorization and the second one is additional custom pre-emptive header.

Answers (1)

Answers (1)

markangelo_dihiansan
Active Contributor

Hi Sandeep,

The raw tab of SOAP UI should provide you with all the details needed. Can you post a screenshot here?

Regards,

Mark

Former Member
0 Kudos

Hi Mark

When i use it as below it works fine . But dont have option to set authentication type in PI SOAP channel

Regards

Sandeep

markangelo_dihiansan
Active Contributor
0 Kudos

Hi Sandeep,

What I meant was compare the raw between a preemptive and non-preemptive password e.g

I think non-preemptive passwords are placed on the HTTP Header while preemptive passwords are placed on the SOAP header.

Regards,

Mark

Former Member
0 Kudos

HI Mark

Ok i found out when i use Preemptive i am getting extra parameter in the raw tab

Authorization: Basic VGVzdDpzYXBhcmliYUAxMjM0

Regards

sandeep

markangelo_dihiansan
Active Contributor
0 Kudos

Hi Sandeep,

In that case, the basic authentication in the SOAP receiver cc will suffice.

Regards,

Mark

Former Member
0 Kudos

Hi Mark

I checked configure user authentication and provided username and password but i am getting error same as when i dont use preemptive in soap UI.

Could not find processor for request

Regards

Sandeep

markangelo_dihiansan
Active Contributor
0 Kudos

Hi Sandeep,

There is an option in SOAP UI that will make the request appear in the raw tab. Here is the setting:

By default, the two check boxes are unchecked. After this, compare the preemptive and non-preemptive raw requests.

Regards,

Mark

former_member186851
Active Contributor
0 Kudos

Hello Sandeep,

When testing from SOAP UI use this option as Mark mentioned to get the response.

During End-end scenario it will work fine,No need to make any adjustments in Receiver channel.

Former Member
0 Kudos

Hi Mark

I got it i think i need to pass the credentials in SOAP header . I think i need to go for XSLT mapping to achieve this

Regards

Sandeep

former_member182412
Active Contributor
0 Kudos

Hi Sandeep,

If you want check raw HTTP request and response from PI, check below blog.

Regards,

Praveen.

former_member186851
Active Contributor
0 Kudos

Hello Sandeep,

To add Details in header you need to go with  Java/XSLT mapping

Former Member
0 Kudos

HI Mark

I compared both the request data looks same but when i dont use preemptive error it shows is

use of undefined namespace prefix soapenv

Regards

sandeep

Former Member
0 Kudos

Hi Mark

I tried with  AddSOAPHeaderBean module but its not working

this is what i want to achieve

The authentication information is sent in the HTTP header as a basic authorization request header field. The field has the following format:Authorization : Basic userID:password

Regards

Sandeep

former_member182412
Active Contributor
0 Kudos

Hi Sandeep,

1) Try the below blog.

2) Use below XSLT after your actual mapping.


<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

   <xsl:template match="/">

      <soap:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

         <soap:Header>

            <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">

               <wsse:UsernameToken>

                  <wsse:Username>User</wsse:Username>

                  <wsse:Password>Password</wsse:Password>

               </wsse:UsernameToken>

            </wsse:Security>

         </soap:Header>

         <soap:Body>

            <xsl:copy-of select="*"/>

         </soap:Body>

      </soap:Envelope>

   </xsl:template>

</xsl:stylesheet>

In the SOAP receiver communication channel click the check box 'Do Not Use Soap Envelope'

Regards,

Praveen.

Former Member
0 Kudos

Hi Praveen

How to achieve this

The authentication information is sent in the HTTP header as a basic authorization request header field. The field has the following format:Authorization : Basic userID:password


Regards

sandeep

former_member182412
Active Contributor
0 Kudos

Hi Sandeep,

You can adjust the above XSLT mapping as per your requirement.

Regards,

Praveen.

Former Member
0 Kudos

Hi Praveen

I am trying to do HTTP trace as per your blog but i am not able to succeed as i m not getting any trace

former_member182412
Active Contributor
0 Kudos

Hi Sandeep,

Your PI system must be 7.31 SP09 or higher.

Regards,

Praveen.

Former Member
0 Kudos

Hi Praveen

yes PI 7.31 sp level 8

Regards

Sandeep