Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

consume a WSDL web Service published by PeopleSoft team into SAP ECC6.0

0 Kudos

I am trying to consume a WSDL web Service published by PeopleSoft team into SAP ECC6.0 version.After I give URL in the SE80 T-code,

i always get a popup for entering user and password. The popup has following info

Enter your username and password

Resource HYDPROXY

username

password

Could you please guide me whose username/password I need to enter here as I am getting “Interface definition missing in WSDL document” message, when I give my username/password.I tried with different usernames and passwords and got messages like “Error in XML Document”,” HTTP Error” etc. The particular WSDL Document was successfully consumed from other software team.

Also please provide me the steps to be configured in SICT and STRUST T-Codes of wat needs to be done exactly.

18 REPLIES 18

GrahamRobbo
Active Contributor
0 Kudos

Hi Hymie,

if you are getting this message after you enter the URL for the WSDL file in the client proxy generator then it is almost certainly asking you for user credentials to authenticate against the corporate proxy server.

Talk to your network admin people about this.

As for what needs to be done I suggest you search out one of the many SDN blogs on consuming web services.

Cheers

Graham Robbo

0 Kudos

Hi Graham,

I am able to logon now after giving the authentication details and in the next step i am getting pop-up window which is asking for package and prefix.After i give that "Cannot generate proxy(object schema missing in WSDL)" is the information message i am getting.Any solution for this?

Regards,

Hyma

0 Kudos

Hi Hymie,

it sounds like the URL does not return a valid WSDL file. Access the URL from a browser and check it is valid WSDL.

You can also use XML development tools to check the WSDL is well formed and even to test a call to the web service works. I use XMLSpy from Altova. You can download a 30-day eveluation version from their website.

Cheers

Graham Robbo

0 Kudos

Graham,

Alternately, if we create WebService in SAP ECC6.0, after Virtual interface and Webservcie definition gets created, we need to publish it.When i click on publish button its intimating for UDDI Registry name,Username and password.I hope before that the webservice should be registered in UDDI registry which will be done in SUDDIREG T-code.Could you please let me know what r the details to be provided in this SUDDIREG T-code below by giving clear example

UDDI Registry

Text

Version

Inquire API Destina

Publish API Destina

User

Password

Default Bus. Entity

Please provide me an example as its totally new to me i am getting confused of the order of the T-Codes to follow.Please tell me wat should be done in SM59 also.

Regards,

Hyma

0 Kudos

Hi Hymie,

now I am confused. I understood from your question that you were trying to <b>consume</b> a web service - not <b>provide</b> a service to be consumed.

I think you had best search the blogs for one of the many examples of both providing and consuming web services in ABAP.

Cheers

Graham

0 Kudos

Hi Graham,

I have two requirements trying to consume a web service and provide a service to be consumed.Now,i am trying to provide a service to be consumed also.So for that in the transaction SUDDIREG, i am not clear with the parameters to be provided.

I searched the blogs but not much clear about the transactions WSADMIN, SUDDIREG to be used before publishing the WebService.

Regards,

Hyma

0 Kudos

Hi Hymie,

you really should close this thread and start a new one if the original question has been answered.

I have just searched the blogs and found heaps of stuff on ABAP web services. I'm not sure why you would be having trouble doing this.

It seems to me that you are over-complicating your problem by getting caught up in transactions like WSADMIN and SUDDIREG.

You don't need to touch any of these transactions if all you want to do is call an RFC-enabled ABAP function module as a web service.

You just need to use the Web Service Browser to provide the WSDL for your web services client to generate the proxies from.

Start with this document. https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/06adbf03-0a01-0010-f386-d8e45561...

It describes many different ways of providing ABAP web services.

Cheers

Graham Robbo

0 Kudos

Hi Graham,

I am able to create the Virtual interface and WebService definition well.But when i click on publish button in UDDI tab, i am being prompted for UDDI registry, username and password.What is that we have to provide in this UDDI registry,username and password.Who will provide that?

Regards,

Hyma

0 Kudos

Hi Hymie,

you don't need to publish the web service to a UDDI directory. In WSADMIN just click on the button to generate the WSDL file and use this file directly in the development tool for the web service consumer.

UDDI is a complication you don't need at this early stage of building web services.

Cheers

Graham

0 Kudos

Hi Graham,

I am able to consume the WebService now and when i activate the Proxy class i am getting a message "Activity terminated because errors occurred during package checks".Please help me on this ASAP.

Regards,

Goutham

0 Kudos

Hi Graham,

Exact message which i got in the performance assistant when i activate in SE80 and SE38 is below,

Activity terminated because errors occurred during package checks

Message no. EU839

Diagnosis

Dictionary objects can only be activated if the package check is swithch

ed on - provided they do not contain any package check errors.

You will receive a list of the package check errors if you execute the

package check within the appropriate dictionary tool. To do this, use the

respective menu entry in the first menu of theen; corresponding dictionary

tool.

Procedure

Keep note of the setting for the package check (system-wide property) in

your SAP System; this setting defines in which form the package concept is

to be applied.

In particular, check whether the package in which the incorrect dictionary

object is located has sufficient usage applications. Then, if necessary,

create the missing usage applications.

As soon as the package check errors have been removed, you must again

activate the dictionary object.

Regards,

Hyma

0 Kudos

Hi Hymie,

you probably have some of the package check attributes set on your package(s).

Open the properties tab of the package(s) and uncheck "Package Check as Server" and "Package Check as Client". Also try setting the "Allowed Object Types" setting to "No restrictions".

Cheers

G

0 Kudos

Hi Graham,

Thanks for the solution.Now i am able to activate fine and successfully executed.I tried with one more WebService published by People Soft team and after giving the URL i am getting Error when reading XML document (document contains syntactic errors).The detailed error is below:

Error when reading XML document (document contains syntactic errors)

Message no. SPRX018

Background

During proxy generation, an interface description in WSDL format is fetched from the Integration Builder or another source and interpreted. This WSDL document must describe the whole interface correctly.

==> Display WSDL Document

Diagnosis

WSDL document contains syntactical errors, because:

The document is empty

It is a text and not an XML document

It is an XML document, but not a WSDL document

It is an HTML document (for example, an error message)

The XML preamble is missing ( <?xml version="1.0"?> )

For an open tag <xyz> the close tag </xyz> is missing

...

System response

Proxy generation terminated.

Procedure

There are different explanations as to why no correct document exists:

If the source of the WSDL document is a URL/HTTP destination:

A "Page Not Found" HTML page was returned instead of a document (the URL address is probably not correct).

The connection to the external server could not be established.

...

Check the HTTP destination used or the URL in Internet Explorer.

If the source of the WSDL document is the Integration Repository:

A "Page Not Found" HTML page was returned instead of a document (the Integration Builder address is probably not correct)

The Integration Builder server is not running at present

The object specified for which a document should be read, does not exist in the Integration Builder

The Integration Builder service that processes the document was subject to an internal error

Check the connection to the Integration Repository by using the following checklist.

Please give me solution for this.I am able to see that directly in the browser.If you want i will provide the URL also.

Regards,

Hyma

0 Kudos

Hi Graham,

I am getting HTTP error (return code 110, message "") also when i am trying with different URL..The detailed error is below.

HTTP error (return code 110, message "")

Message no. SPRX090

If you want to generate a proxy for an external WSDL document (for example, by specifying a URL), check that the proxy settings of the system are correct (transaction sicf - Client - Proxy Settings).

If you want to generate a proxy for an XI Repository object, check the connection to the Integration Builder as follows:

Check List for Setting Up a Connection to the Integration Builder

1. The address of the Integration Builder must be stored in the R/3 System

=>Check/maintain with report SPROX_CHECK_IFR_ADDRESS

The address is taken the from following parameters in the exchange profile (section 'connections'):

com.sap.aii.connect.repository.name: Server (e.g. pwdf0436)

com.sap.aii.connect.repository.httpport: Port (e.g. 1080)

com.sap.aii.connect.repository.contextroot: Root (e.g. rep)

Furthermore, the logon data is also read from the exchange profile(section 'ApplicationSystem'):

com.sap.aii.applicationsystem.serviceuser.name: User

com.sap.aii.applicationsystem.serviceuser.pwd: Password

2. The HTTP connection of the R/3 application server must function correctly

=>Check with report SPROX_CHECK_HTTP_COMMUNICATION

The HTTP port of the R/3 application server may be incorrectly configured; contact your system administrator if necessary. Alternatively, log onto another application server in this system that has a functioning HTTP port.

3. The Integration Builder server must be running correctly

=>Check with report SPROX_CHECK_IFR_RESPONSE

(This link should display a valid XML document not an HTML page with 'Page Not Found', 'Internal Server Error 500' or similar)

Contact your system administrator so that the Integration Repository server can be booted up, or an appropriate software version can be imported, if necessary.

4. Proxy generation must correctly interpret the data of the Integration Builder

==>Check with report SPROX_CHECK_IFR_CONNECTION

Kindly give me solution for this also.

Regards,

Hyma

0 Kudos

Hi Hymie,

As mentioned in an earlier post, it sounds like the URL does not return a valid WSDL file. Access the URL from a browser and check it is valid WSDL.

Even better use an XML development tool to check the WSDL is well formed and even to test a call to the web service works. I use XMLSpy from Altova. You can download a 30-day eveluation version from their website.

Cheers

Graham Robbo

0 Kudos

Hi Graham,

Okay, i will check with the WSDL in XML Spy.I have one more question below.

I created a WebService in SE80 and release it for the SOAP runtime in WSADMIN its asking for the username and password of the same server in which i have created and releasing now.Now when peoplesoft team is consuming my WebService it seems its prompting for the Development server username/password.As we cant give them the Development servers username/password, is there any way so that it doesnt ask for the Development Server username/password to consume.Please help me if i can embed the username and password automatically so that they dont have problem with this.

Regards,

Hyma

0 Kudos

Hi Hymie,

use transaction SICF to find the service node in the ICF and set it's logon credentials using the "Logon Data" tab.

Cheers

Graham Robbo

0 Kudos

Hi Graham,

I have a query in ALV report.My requirement is we have to get the output data of 5 fields in the tab delimited fixed format.

For ex: there are 5 fields

Empname Empid Date Status country

abc 123 27/11/2007 1 USA

abcd 1234 27/11/2007 1 INDIA

abdce 12345 27/11/2007 1 GERMANY

Now i want the output in tab delimited fixed format.The output should be like 1st record of the corresponding 5 fields should be tab delimited in first cell, 2nd record in seond row first cell and 3rd record in 3rd row first cell.Suppose now i have the data in the internal table and looping it like,

data: begin of itab2,

v_final(1000),

end of itab2.

Loop at itab1.

concatenate itab1-empname itab1-empid itab1-date itab-1status itab1-country into v_final separated by ' '.

endlloop.

after that i used gui_download.

Now when i execute i am able to diectly get the data into excel but the issue is i am not getting in fixed format.Suppose emp name of 1st record is ABC and standard length os this is 10 characters.what is happening the tab is starting from 4th character itself.i want the tab to start after 10 characters irrespective of the employee name.Please give me sloution for this.Its very very urgent.Thanks in advance.

Regards,

Hyma