Quantcast
Channel: Web Service Help
Viewing all 248 articles
Browse latest View live

(no title)

$
0
0

Hi Praj,

thanks a lot, i searched many places and wasted one day of the time for the error in wsdl "<![CDATA[ Unable to find a Routing corresponding to the incoming request message."

Atlast i got the answer here, the mistakse was the "GETWSDL" sevice operations Rounting was inactive, once i made it active it started working

once again thanks a lot.


(no title)

$
0
0

Hi All,

We are integrating the PS with 3rd party called PeopleAnswers, we are using the CI based web services.
When there is any error in the values they sent, the IB should send them the reason for the error(Fault message.)
When i use the SOAP UI i am getting the proper error message, but the same is not sent to the 3rd party…. instead they are getting the http status code 500 internal server error from PS to them, it seems the IB is not picking the fault message and sending them…

Did any one have idea wat is the problem

thanks

(no title)

$
0
0

Greetings Praj!

I hate digging up old threads but thought it may be worth a try. I am a web service server developer and our PeopleSoft developers are trying to develop a client to interact with my server.

Currently we use the web service basic authentication model and our PeopleSoft developer is running into issues. They reported to me the following: They defined a node in PeopleSoft and defined the username/password within this node. From this they are experiencing authentication failures.

It sounds like the above post may be the solution to this problem but due to my lack of PeopleSoft experience I am not 100% sure.

I believe the above configuration parameters would help her but was hoping you could clarify/affirm my intuition.

Thanks so much, your time is much appreciated.

(no title)

$
0
0

Could it be a problem with connectivity between the 3rd party and PeopleSoft. Firewall issues? Check the integration broker logs to see if there is anything information.

(no title)

$
0
0

I have the same problem. I also have to get the errorLog.html and msgLog.html files directly from server. Seems a kind of caching going on. I even deleted the files on Server and still see them through a browser.
… I'll try web profile cache settings and see if it helps.

(no title)

$
0
0

I generated WSDL following CI based web services. I generated SOAP template using PeopleTools -> Integration Broker -> Service Utilities -> Generate Soap template.
I tested SOAP generated using Send Master utility and got below response.

SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Server</faultcode><faultstring>null</faultstring><detail><IBResponse type="error"><DefaultTitle>Integration Broker Response</DefaultTitle><StatusCode>20</StatusCode><MessageID>508</MessageID><DefaultMessage><![CDATA[No content sections present in the request.]]></DefaultMessage><MessageParameters></MessageParameters></IBResponse></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>

Any idea what will be the cause of the error.

(no title)

$
0
0

Was there a valid WSDL generated by your CI? Are you able to test in soapUI to confirm you get the same error?

(no title)

$
0
0

Hi Praj
I am fairly new to PS so please bare with me. I am trying to consume a 3rd party web service using the Consume web service wizard in IB. I am able to use this wizard with all manner of general wsdl's and it works great. However, when I try to use the wizard to consume the provided third party wsdl, it returns the following error message to the screen "Internal Gateway Error - external system contact error". However, I am able to access this wsdl successfully both in my browser and using soapUI. The only difference between the wsdl I am consuming that fails and the ones that work are this: the one that fails uses https and a username and password and domain authentication. Is there a work around for this or a way to consume a web service manually?? or is there a way to correct this error.
We are on Tools 8.51
Thank you in advance for any advice you may have.
Cheers


(no title)

$
0
0

Hi Praj,
I am trying to consume a webservice provided by a third party sitting on the same database as our PS system.
I am using the WSDL_NODE for this and I am facing some issues over here. Its saying "External System Contact Error. IB is not able to contact the external system. The network location specified is incorrect or the site is permanently down."

I want to discuss more on this with you.

Let me know you email address so that i can provide more information to yo.

Thanks
Rao

(no title)

$
0
0

I am working on Ps 9.1/8.51 tools. I have to update the 3rd party application with a latest PS field value. I have consumed the wsdl(provided by 3rd party) into PS using Consume Web Service. I have written a field change event peoplecode to populate the values. It is generating the xml file which I was able to open it in the browser. But its throwing the following error.

"Integration Gateway - Invalid Message Error (158,10501)
The message is invalid format or is missing required fields."

On further looking into the issue I have found out that its failing when it is trying to call the %IntBroker.SynchRequest(&ReqMsg). The control is not going beyond this statement

Any idea on what can be the cause of the error would be a great help.

Thanks in advance for the help.

Peoplesoft Fan.

(no title)

$
0
0

On the previous page, a couple posters referenced the SCC_CONSTITUENT_IN_SYNC web service.

I'm a PeopleSoft rookie, so I'm trying to follow along with what's going on here - According to what I've read in the developer guides,
SCC_CONSTITUENT_IN_SYNC is an *async* web service, with no response object.

What I'm curious about is how to "fire" the web service from within .net application (Trying to integrate PeopleSoft Campus Solutions and Microsoft Dynamics CRM 2011). The application is a .net plugin for Dynamics - all I'm trying to do is update a contact in Dynamics, and have the corresponding contact in PeopleSoft shhow the same updates.

My code looks like this:

 ********************************************************* using System; using System.Configuration; using System.Data; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Globalization; using System.IO; using System.Linq; using System.Net; using System.ServiceModel; using System.Runtime.Serialization; using System.Text; using System.Text.RegularExpressions; using System.Xml; using System.Web; using Microsoft.Crm; using System.Xml.Linq; using Microsoft.Xrm.Sdk; using Microsoft.Xrm.Sdk.Query; using Microsoft.VisualBasic; using SMU_PeopleSoft.scc_constituent_in_sync; namespace SMU_PeopleSoft { public class PSpush : IPlugin { public Guid cID; //postimage values -- "a" for "after" public string aUserID; public string aNew_emplid; public string aBirthdate; public string aFamilystatuscode; public string aGender; public string aEducation; public string aFtstudent; public string aSalutation; public string aSuffix; public string aFirstname; public string aLastname; public string aMiddlename; public string aAddrName; public string aCountry; public string aStreet1; public string aStreet2; public string aStreet3; public string aCity; public string aCounty; public string aState; public string aPostalcode; public string aEmailaddress1; private void writefile(String strInput) { string fileName = "C:\\Users\\SPN01375\\Desktop\\TextFiles\\PluginOutput.txt"; StreamWriter objWriter = new StreamWriter(fileName); objWriter.Write(strInput); objWriter.Close(); } public void Execute(IServiceProvider serviceProvider) { //Important step 1: get context IPluginExecutionContext context = (IPluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext)); //Important step 2: set up the webservice instance (the right way) IOrganizationServiceFactory factory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory)); IOrganizationService service = factory.CreateOrganizationService(context.UserId); //Important step 3: Set up Tracing, since there is no <bleep> debugger for CRMOnline.... ITracingService tracer = (ITracingService)serviceProvider.GetService(typeof(ITracingService)); //now - we *know* we're in a plugin - everything else goes in a try/catch for good error handling. try { tracer.Trace("starting TRY"); if (context.InputParameters.Contains("Target") && (context.InputParameters["Target"] is Entity)) { Entity ctContact = (Entity)context.InputParameters["Target"]; if (ctContact.LogicalName == "contact") { tracer.Trace("starting trace operations on CONTACT entity!"); if (ctContact.GetAttributeValue<EntityReference>("contactid") == null) // this is a new record. don't fire now //if (context.OutputParameters.Contains("id")) { tracer.Trace("1"); cID = (Guid)context.OutputParameters["id"]; if (ctContact.GetAttributeValue<EntityReference>("new_emplid") != null)// this *MUST* be a record existing in PeopleSoft or Don't Fire { // CREATE THE WEB SERVICE INSTANCE and the Request container SCC_CONSTITUENT_IN_SYNC_DSv1 psSvc = new SCC_CONSTITUENT_IN_SYNC_DSv1(); SCC_CONSTITUENT_IN_SYNC_DS_TypeShape psReq = new SCC_CONSTITUENT_IN_SYNC_DS_TypeShape(); tracer.Trace("begin postimage values"); // note: nothing magic about the 'a' prefix. it just means "after" (after the 'Save' event)... aNew_emplid = ctContact.GetAttributeValue<EntityReference>("new_emplid").ToString(); aBirthdate = ctContact.GetAttributeValue<EntityReference>("birthdate").ToString(); aFamilystatuscode = ctContact.GetAttributeValue<EntityReference>("familystatuscode").ToString(); aGender = ctContact.GetAttributeValue<EntityReference>("gendercode").ToString(); aEducation = ctContact.GetAttributeValue<EntityReference>("educationcode").ToString(); aFtstudent = ctContact.GetAttributeValue<EntityReference>("new_ftstudent").ToString(); aSalutation = ctContact.GetAttributeValue<EntityReference>("salutation").ToString(); aSuffix = ctContact.GetAttributeValue<EntityReference>("suffix").ToString(); aFirstname = ctContact.GetAttributeValue<EntityReference>("firstname").ToString(); aLastname = ctContact.GetAttributeValue<EntityReference>("lastname").ToString(); aMiddlename = ctContact.GetAttributeValue<EntityReference>("middlename").ToString(); aAddrName = ctContact.GetAttributeValue<EntityReference>("address1_name").ToString(); aCountry = ctContact.GetAttributeValue<EntityReference>("address1_country").ToString(); aStreet1 = ctContact.GetAttributeValue<EntityReference>("address1_line1").ToString(); aStreet2 = ctContact.GetAttributeValue<EntityReference>("address1_line2").ToString(); aStreet3 = ctContact.GetAttributeValue<EntityReference>("address1_line3").ToString(); aCity = ctContact.GetAttributeValue<EntityReference>("address1_city").ToString(); aCounty = ctContact.GetAttributeValue<EntityReference>("address1_county").ToString(); aState = ctContact.GetAttributeValue<EntityReference>("address1_stateorprovince").ToString(); aPostalcode = ctContact.GetAttributeValue<EntityReference>("address1_postalcode").ToString(); aEmailaddress1 = ctContact.GetAttributeValue<EntityReference>("emailaddress1").ToString(); // instantiate the PS Web Service: SCC_CONSTITUENT_IN_SYNC scc_constituent_in_sync.EMPLID_TypeShape _emplid = new scc_constituent_in_sync.EMPLID_TypeShape(); scc_constituent_in_sync.BIRTHDATE_TypeShape _Birthdate = new scc_constituent_in_sync.BIRTHDATE_TypeShape(); scc_constituent_in_sync.MAR_STATUS_TypeShape _Familystatuscode = new scc_constituent_in_sync.MAR_STATUS_TypeShape(); // 1=S/2=M/3=D/4=W scc_constituent_in_sync.SEX_TypeShape _Gender = new scc_constituent_in_sync.SEX_TypeShape(); //1=M; 2=F scc_constituent_in_sync.HIGHEST_EDUC_LVL_TypeShape _Education = new scc_constituent_in_sync.HIGHEST_EDUC_LVL_TypeShape(); //0=A; 1=B scc_constituent_in_sync.FT_STUDENT_TypeShape _Ftstudent = new scc_constituent_in_sync.FT_STUDENT_TypeShape(); //1=Y; 0=N scc_constituent_in_sync.NAME_PREFIX_TypeShape _Salutation = new scc_constituent_in_sync.NAME_PREFIX_TypeShape(); scc_constituent_in_sync.NAME_SUFFIX_TypeShape _Suffix = new scc_constituent_in_sync.NAME_SUFFIX_TypeShape(); scc_constituent_in_sync.FIRST_NAME_TypeShape _Firstname = new scc_constituent_in_sync.FIRST_NAME_TypeShape(); scc_constituent_in_sync.LAST_NAME_TypeShape _Lastname = new scc_constituent_in_sync.LAST_NAME_TypeShape(); scc_constituent_in_sync.MIDDLE_NAME_TypeShape _Middlename = new scc_constituent_in_sync.MIDDLE_NAME_TypeShape(); scc_constituent_in_sync.ADDRESS_TYPE_TypeShape _AddrName = new scc_constituent_in_sync.ADDRESS_TYPE_TypeShape(); scc_constituent_in_sync.COUNTRY_TypeShape _Country = new scc_constituent_in_sync.COUNTRY_TypeShape(); scc_constituent_in_sync.ADDRESS1_TypeShape _Street1 = new scc_constituent_in_sync.ADDRESS1_TypeShape(); scc_constituent_in_sync.ADDRESS2_TypeShape _Street2 = new scc_constituent_in_sync.ADDRESS2_TypeShape(); scc_constituent_in_sync.ADDRESS3_TypeShape _Street3 = new scc_constituent_in_sync.ADDRESS3_TypeShape(); scc_constituent_in_sync.CITY_TypeShape _City = new scc_constituent_in_sync.CITY_TypeShape(); scc_constituent_in_sync.COUNTY_TypeShape _County = new scc_constituent_in_sync.COUNTY_TypeShape(); scc_constituent_in_sync.STATE_TypeShape _State = new scc_constituent_in_sync.STATE_TypeShape(); scc_constituent_in_sync.POSTAL_TypeShape _Postalcode = new scc_constituent_in_sync.POSTAL_TypeShape(); scc_constituent_in_sync.EMAIL_ADDR_TypeShape _Emailaddress1 = new scc_constituent_in_sync.EMAIL_ADDR_TypeShape(); tracer.Trace("3"); _emplid.Value = aNew_emplid; _Birthdate.Value = Convert.ToDateTime(aBirthdate); switch (Convert.ToInt32(aFamilystatuscode)) { case 4: _Familystatuscode.Value = "W"; break; case 3: _Familystatuscode.Value = "D"; break; case 2: _Familystatuscode.Value = "M"; break; case 1: _Familystatuscode.Value = "S"; break; default: _Familystatuscode.Value = "S"; break; } _Gender.Value = (Convert.ToInt32(aGender) == 1) ? "M" : "F"; switch (Convert.ToInt32(aEducation)) { case 5: _Education.Value = "F"; break; case 4: _Education.Value = "E"; break; case 3: _Education.Value = "D"; break; case 2: _Education.Value = "C"; break; case 1: _Education.Value = "B"; break; default: _Education.Value = "A"; break; } _Ftstudent.Value = (Convert.ToInt32(aFtstudent) == 1) ? "Y" : "N"; _Salutation.Value = aSalutation; _Suffix.Value = aSuffix; _Firstname.Value = aFirstname; _Lastname.Value = aLastname; _Middlename.Value = aMiddlename; _AddrName.Value = aAddrName; _Country.Value = aCountry; _Street1.Value = aStreet1; _Street2.Value = aStreet2; _Street3.Value = aStreet3; _City.Value = aCity; _County.Value = aCounty; _State.Value = aState; _Postalcode.Value = aPostalcode; _Emailaddress1.Value = aEmailaddress1; /////////////////////////////////////////////////////////////////////////////////////////////// RIGHT HERE, I NEED TO SEND OUT XML, BUT DON'T UNDERSTAND HOW TO EXECUTE THE WEB SERVICE CALL... /////////////////////////////////////////////////////////////////////////////////////////////// } else // it's not an existing PeopleSoft Contact { writefile("NOT A PS CONTACT:"); } } else { //this is a new record altogether. don't fire. writefile("NOTHING TO SEE HERE. MOVE ALONG:"); } } } } catch (Exception ex) { //handle any error - basically here wer'e just throwing the trace message(s). tracer.Trace("Encountered Program Exception at : {0}", ex); } } } } ********************************************************* 

Please help, with many thanks !

RC

(no title)

$
0
0

Navigate peopletools>Integration Broker>Integration Setup>service operation.search for getwsdl service operation then go to
Routings
->Select the active service opertion(select the hyperlink in the NAME coloumn)
go to parameters tab
Just cross check whether External Alias name is "GetWSDL"
is in this format in Parameter Tab.Because GetWSDL
is case sensitive.If you specify EXTERNAL ALIAS LIKE
GETWSDL then it could be a problem

(no title)

$
0
0

Hi Praj,
I am trying to consume SCC_LOV web service from a third party application. I have published the service and it generates WSDL at
serverIPaddress/PSIGW/PeopleSoftServiceListeningConnector/SCC_LOV.1.wsdl.
When i test the service (via Integration Broker -> Service Utilities -> Test Service Operation); it gives me an error:

ICPanel](o) Integration Broker Sync Handler: OnRequest for message SCC_GET_LOV could not run to completion on node PSFT_HR.
(158,974) IBTREE_WRK.IB_INVOKEOPER.FieldChange PCPC:4883 Statement:104

i am unable to identify what could be the reason.
any help would be appreciated

(no title)

$
0
0

Are you able to test with soapUI, this will probably give you a beter error message?

Also, be sure to checkout your Integration Broker logs (see this article) as that can have more detailed information.

(no title)

$
0
0

Thank you for the quick response.
i have tested with soapUI and it works fine which makes me believe that the service is correctly published. But does not work when i try to access service either via Peoplesoft "Test Service Operation" or via my custom application (designed for online admissions using eclipse and GWT). Also I do not find any logs in my errorLog.html related to this issue.

When testing via "Test Service Operation" in PeopleSoft; i got application server exception stated in my last post.
When i try to consume service via my custom online admission application, at time the SCC_LOV service is called with url serverIPaddress/PSIGW/PeopleSoftServiceListeningConnector/SCC_LOV.1.wsdl; following excepetion occurs:

SEVERE: Exception
javax.xml.ws.WebServiceException: {xmlns.oracle.com / Enterprise / HCM / services / SCC_LOV.1}SCC_LOV is not a valid service. Valid services are: {xmlns.oracle.com / Enterprise / HCM / services}SCC_LOV


(no title)

$
0
0

FYI,
i have found the same problem stated at
www .uwplatt. edu/ oit/ development/ peoplesoft/ maint/ CS90/ Bundle20/ UPD859121_CS_BUNDLE_20_90_Early_Release.pdf
with incident id 2035351001

but there is no solution given for it.

P.S: Kindly ignore the spaces within URL; i am not allowed to post a link

(no title)

$
0
0

I am able to ping gateway, default node, already consumed WSDL with no error. Message are non-rowset based. I am getting request message in my code.

While calling SetXmlDoc, the code is returning false. The code is as below:
&lxmlDoc = CreateXmlDoc(&SOAPDoc_Req.GenXmlString());
&MY_LDAP_TEST1 = &lxmlDoc.GenXmlString();
WinMessage("0 &MY_LDAP_TEST1 GenXmlString()->" | &MY_LDAP_TEST1);

&lmsgGoRequest = CreateMessage(Operation.SOxxxxx, %IntBroker_Request);
&abc = &lmsgGoRequest.SetXmlDoc(&lxmlDoc);
WinMessage("&abc:" | &abc);
&lmsgGoResponse = %IntBroker.SyncRequest(&lmsgGoRequest);
WinMessage("1 &MY_LDAP_TEST1 &lmsgGoResponse.ResponseStatus ->" | &lmsgGoResponse.ResponseStatus);

As a result, SyncRequest is not returning response message.

(no title)

$
0
0

Hi, I have been creating web services against CI components for 1.5 years now; however, we've just now hit a roadblock in with effective dated rows on some of our components. The issue is that we don't want historical rows returned; we only want the current row returned; however, we can't seem to find out how to set the property for the CI object through the WSDL or XML document so that only the current row is returned. We cannot control this through security as the authentication we are using has to be open. Thus we need the ability to at least add a tag that the CI property can understand to not return historical rows. The CI test program works just fine; but we can't seem to locate how to do it through the WSDL. Any suggestions would be appreciated.

(no title)

$
0
0

BackGround: We have "Provided few PeopleSoft WSDLs" to a third party that uses these WSDLs to fetch data from PeopleSoft. (Perfect!)

Problem: Anyone else other than the third party, who knows the WSDL URL and Request Parameters can get the data from PeopleSoft. (Not Good!)

Question: What is the simplest way to implement WSDL / WS Security so that only a particluar external system/target system (Fusion/Salesforce/etc..) can only invoke them to fetch data from PSFT? (or) In other words, Can we configure the PeopleSoft IB with a 'white list' of requesting domains that are allowed to invoke the services, say (google.com,salesforce.com,oracle.com)

Any Simple suggestions to make these WSDL URLs safe will be greatly appreciated! Thank You!

(no title)

$
0
0

You might have to expose the data via a custom component and component interface.

Or a a logic at the receiving end should exist that picks only the maximum dated info. from the WSDL Response.

Regards,
Ashish

Viewing all 248 articles
Browse latest View live