Consuming Web Service - Proxy Generation Terminated
Hello all,
I have recently been exploring the capabilities of consuming Web Services from ABAP and have run into some issues.
When I generate the Client Proxy from different WSDL files, I am frequently getting these two errors:
<i>Proxy generation terminated: "mixed content" not supported</i>
<i>Proxy generation terminated: WSDL error (<extension> not supported)</i>
Is this just a limitation of ABAP? If I get these errors, is there any way to use the Web Service?
Thanks in advance!
Hi, had the same issue. try to rename the file to .xml ending.
HTH; rgds, marco
Similar Messages
-
Web service proxy generation validation failed - two declarations collision
Hi,
I'm creating a JAX-WS web service proxy against a web service with very complex payload. When I point the wizard to the WSDL, during the analysis, it throws an error,
Error creating model from wsdl "<mywsdl>": (Related to above error) This is the other declaration. Two declarations cause a collision in the ObjectFactory class.
Any pointers? How can I troubleshoot such error?found the fix discussed on this blog... http://kingsfleet.blogspot.com/2008/07/working-round-xsdchoice-binding-issue.html
-
Consuming 3rd Party Web Service - Proxy Generation Error
Hi All,
I am trying to consume a third party Web Service in SE80 and get the below error while completing the steps to configure proxy class.
"Exception Occurred in Configuration Handler"
Uninstantiated object "new child subject" in method
IF_SRT_WSP_SUBJECT_SERVICE~CREATE_BINDING of class CL_SRT_WSP_SUBJECT_SERVICE
The same web service when I try to import in Java it is fine. Has anyone encountered this issue?
Note: I tried both using URL and also saving as local file and its the same error message.
Thanks,
Nagarajan.
The Question is still open.
Edited by: Nagarajan Kumarappan on Oct 10, 2011 9:40 AMThe problem we had was with the web service itself. There were in multiple places we had few definitions repeated which caused the issue. Once we removed it we were good. Use altova xml free for 30 days to check your wsdl. It's great tool to identify issues.
Thanks and good luck !!! -
Web Service Proxy Generation failed
Hi @all,
i would like to consume a web service with the adaptive webdynpro model, but the proxy generation fails. Attached you will find the log file of the NWDS:
com.sap.tc.webdynpro.model.webservice.exception.WSModelRuntimeException: Exception on creation of service metadata for WSDL URL 'http://ktkrs3580/Elan2Webservice/elan_service.asmx?WSDL' and service factory configuration '{DynamicProxy.ClassPath=D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.tc.cmi_1.0.0/_cmi_api.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.exception_2.0.0/lib/exception.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.engine.webservices_2.0.0/lib/boot.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.engine.webservices_2.0.0/lib/iq-lib.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.engine.webservices_2.0.0/lib/util.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.engine.webservices_2.0.0/lib/webservices_lib.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.engine.webservices_2.0.0/lib/webservices.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.engine.webservices_2.0.0/lib/webservices_api.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.engine.webservices_2.0.0/lib/tc_sec_wssec_lib.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.dictionary.runtime_2.0.0/lib/SapDictionaryTypesRuntime.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.dictionary.services_2.0.0/lib/SapDictionaryTypeServices.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.tssap.sap.libs.logging_2.0.0/lib/logging.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.tssap.sap.libs.logging_2.0.0/lib/loggingStandard.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.tssap.sap.libs.logging_2.0.0/lib/jARM.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.tssap.sap.libs.xmltoolkit_2.0.0/lib/sapxmltoolkit.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0/lib/activation.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0/lib/jaxm-api.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0/lib/saaj-api.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0/lib/jaxrpc-api.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0/lib/jnet.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0/lib/jsse.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.ext.libs.webservices_2.0.0/lib/mail.jar;D:/Programme/SAP/IDE/IDE70/eclipse/plugins/com.sap.tc.webdynpro.model.webservice_2.0.0/lib/_webdynpro_model_webservice.jar;, DynamicProxy.INetProxy.Bypass=, DynamicProxy.INetProxy.Port=8080, DynamicProxy.Javac.path=C:\j2sdk1.4.2_12, DynamicProxy.TempDir=C:\DOKUME1\branch\LOKALE1\Temp\, DynamicProxy.INetProxy.Host=tknproxy}'
at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.getOrCreateWsrService(WSModelInfo.java:414)
at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.readOperationsFromWSDL(WSModelInfo.java:372)
at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.importMetadataInternal(WSModelInfo.java:342)
at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.importMetadata(WSModelInfo.java:306)
at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.importMetadata(WSModelInfo.java:316)
at com.sap.ide.webdynpro.modeleditor.wizards.model.creation.PageRenameWS.loadNameSpacesAndModelClasses(PageRenameWS.java:435)
at com.sap.ide.webdynpro.modeleditor.wizards.model.creation.ModelDialog.nextPressed(ModelDialog.java:105)
at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:316)
at org.eclipse.jface.dialogs.Dialog$1.widgetSelected(Dialog.java:423)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:89)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:81)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:840)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2022)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1729)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:583)
at org.eclipse.jface.window.Window.open(Window.java:563)
at com.sap.ide.webdynpro.modeleditor.ModelEditorCallback.createModel(ModelEditorCallback.java:52)
at com.sap.ide.webdynpro.service.modeleditor.ModelService.createModelWithUI(ModelService.java:70)
at com.sap.ide.webdynpro.service.modeleditor.ServiceWithUI.createModel(ServiceWithUI.java:49)
at com.sap.ide.webdynpro.tsmodel.application.provider.ModelNodeProvider.createUniqueName(ModelNodeProvider.java:55)
at com.tssap.selena.impl.model.elements.EntityImpl.createChildEntityUin(EntityImpl.java:936)
at com.tssap.selena.impl.model.elements.EntityImpl.createChildEntity(EntityImpl.java:502)
at com.sap.ide.webdynpro.tsmodel.application.actions.CreationAction.runInternal(CreationAction.java:76)
at com.sap.ide.webdynpro.tsmodel.application.actions.CreationAction.access$000(CreationAction.java:24)
at com.sap.ide.webdynpro.tsmodel.application.actions.CreationAction$1.run(CreationAction.java:51)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1595)
at com.sap.ide.webdynpro.tsmodel.application.actions.CreationAction.run(CreationAction.java:57)
at com.sap.ide.webdynpro.projectbrowser.actions.PBCreateModelAction.run(PBCreateModelAction.java:95)
at com.tssap.selena.model.extension.action.SelenaActionCollector$GenericElementActionWrapper.run(SelenaActionCollector.java:224)
at com.tssap.util.ui.menu.MenuFactory$MuSiAction.saveRunAction(MenuFactory.java:1425)
at com.tssap.util.ui.menu.MenuFactory$MuSiAction.run(MenuFactory.java:1407)
at com.tssap.util.ui.menu.MenuFactory$DelegateAction.processInternal(MenuFactory.java:616)
at com.tssap.util.ui.menu.MenuFactory$DelegateAction.access$100(MenuFactory.java:586)
at com.tssap.util.ui.menu.MenuFactory$DelegateAction$BusyProcessWorker.run(MenuFactory.java:716)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)
at com.tssap.util.ui.menu.MenuFactory$DelegateAction.process(MenuFactory.java:610)
at com.tssap.util.ui.menu.internal.MenuListenerFactory$ProcessAdapter.widgetSelected(MenuListenerFactory.java:172)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:89)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:81)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:840)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2022)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1729)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1402)
at org.eclipse.ui.internal.Workbench.run(Workbench.java:1385)
at com.tssap.util.startup.WBLauncher.run(WBLauncher.java:79)
at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:858)
at org.eclipse.core.boot.BootLoader.run(BootLoader.java:461)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sap.ide.eclipse.startup.Main.basicRun(Main.java:291)
at com.sap.ide.eclipse.startup.Main.run(Main.java:789)
at com.sap.ide.eclipse.startup.Main.main(Main.java:607)
Caused by: com.sap.engine.services.webservices.jaxrpc.exceptions.WebserviceClientException: GenericServiceFactory initialization problem. Could not load web service model. See nested exception for details.
at com.sap.engine.services.webservices.espbase.client.dynamic.impl.DGenericServiceImpl.generateProxyFiles(DGenericServiceImpl.java:150)
at com.sap.engine.services.webservices.espbase.client.dynamic.impl.DGenericServiceImpl.<init>(DGenericServiceImpl.java:50)
at com.sap.engine.services.webservices.espbase.client.dynamic.GenericServiceFactory.createService(GenericServiceFactory.java:88)
at com.sap.tc.webdynpro.model.webservice.metadata.WSModelInfo.getOrCreateWsrService(WSModelInfo.java:412)
... 53 more
Caused by: com.sap.engine.services.webservices.jaxrpc.exceptions.ProxyGeneratorException: Proxy Generator Error. Proxy generation problem. See nested exception.
at com.sap.engine.services.webservices.jaxrpc.wsdl2java.ProxyGenerator.generateProxy(ProxyGenerator.java:283)
at com.sap.engine.services.webservices.espbase.client.dynamic.impl.DGenericServiceImpl.generateProxyFiles(DGenericServiceImpl.java:147)
... 56 more
Caused by: java.io.IOException: Compilation fails...
C:\Dokumente und Einstellungen\branch\Lokale Einstellungen\Temp\DGenService1207743399620\types\p1\RelationCIShort.java:161: getIdCI() is already defined in types.p1.RelationCIShort
public java.lang.Integer getIdCI() {
^
C:\Dokumente und Einstellungen\branch\Lokale Einstellungen\Temp\DGenService1207743399620\types\p1\RelationCIShort.java:164: hasIdCI() is already defined in types.p1.RelationCIShort
public boolean hasIdCI() {
^
2 errors
THX!
Regards,
Christianfound the fix discussed on this blog... http://kingsfleet.blogspot.com/2008/07/working-round-xsdchoice-binding-issue.html
-
Web Service Proxy Generation from tModel
Hello,
I have created a Business (Web) Service in the UDDI supplied with the NW04s Java Stack SP06, under a new Business Entity. I have also created multiple tModels each corresponding to unique Web Service Descriptions (WSDs) of the same Web Service. I have linked two of the tModels to the Business Service created above.
Now using the NW Dev Studio I generate a Deployable Proxy for a single tModel of the Business Service. However this does not create a Logical Port definition and so I am unable to call the service with it. I go in to create a New Logical Port in the Proxy and the only viable option in the wizard is to supply the WSDL of the Business Service. But, when I do this it completely regenerates the proxy. Is there any way to prevent this? What is the benefit of having unique tModels if you can consume only the WSD you want to through a particular proxy?
I hope someone has tried this before me and can supply some useful answers. SAP Help Documentation pretty much draws a blank so I am not sure where to look.
Thanks,
Murtaza.Hi Murtaza,
Was your issue resolved?
Kindly update.
Thanks and Regards,
Antony. -
Web Service Proxy with Dynamic IP and Port
hi,
I am currently looking at the Web Service Proxy generation in JDev 11g. I can generate proxies fine, but the proxies are generated with static host and port. I want to substitute the host and port during runtime if required, for instance read the values from a database. I need to do this to avoid compiling the application for every deployment we make dev, test and production. Is there an easy way to set the generated proxy host and port? Are there any examples?
Thanks in advance!
StephenHi,
Maybe you should have a look on XML Catalogs feature, but I am not sure if JDeveloper support it and how to support it.
-LJ -
Consume web service in ABAP proxy with SOAP header
Hi Thomas ,
I am trying to consume web service in ABAP . I have followed the procedure from one of your web blog <a href="/people/thomas.jung3/blog/2004/11/17/bsp-a-developers-journal-part-xiv--consuming-webservices-with-abap a Developer's Journal Part XIV - Consuming WebServices with ABAP</a> . (640 release).
I need to pass SOAP header along with SOAP body. As you mentioned I have used if_wsprotocol_ws_header interface to pass header but it is still failing.
Please see below code and please give some direction to fix the issue.
1.Create ABAP proxy for WSDL (http://ws.strikeiron.com/SwanandMokashi/StockQuotes?WSDL). It has created structures only for SOAP body.
2.Create Logical port
3.Create following program to call proxy
REPORT zproxy.
DATA: ref_stock TYPE REF TO zzco_stock_quotes_soap ,
ws_header TYPE REF TO if_wsprotocol_ws_header,
name TYPE string,
namespace TYPE string.
TRY.
CREATE OBJECT ref_stock
get WS_HEADER protocol
ws_header ?= ref_stock->get_protocol('IF_WSPROTOCOL_WS_HEADER').
set somehow header as iXML-DOM tree
DATA: ixml TYPE REF TO if_ixml,
xml_document TYPE REF TO if_ixml_document,
xml_root TYPE REF TO if_ixml_element,
xml_element TYPE REF TO if_ixml_element,
xml_node TYPE REF TO if_ixml_node.
DATA l_xstring TYPE xstring.
DATA l_string TYPE string.
FIELD-SYMBOLS <fs_xstring> TYPE xstring.
Additional Header:
CONCATENATE
'<soap:Header>'
'<s1:LicenseInfo xmlns:s1="http://ws.strikeiron.com">'
'<s1:RegisteredUser>'
'<s1:UserID>[email protected]</s1:UserID>'
'<s1:Password>aaaaaaaa</s1:Password>'
'</s1:RegisteredUser></s1:LicenseInfo>'
'</soap:Header>' INTO l_string.
convert to xstring
l_xstring = cl_proxy_service=>cstring2xstring( l_string ).
IF NOT l_string IS INITIAL.
create iXML DOM document from XML xstring
CALL FUNCTION 'SDIXML_XML_TO_DOM'
EXPORTING
xml = l_xstring
IMPORTING
document = xml_document
EXCEPTIONS
invalid_input = 1
OTHERS = 2.
IF sy-subrc = 0 AND NOT xml_document IS INITIAL.
xml_root = xml_document->get_root_element( ).
xml_element ?= xml_root->get_first_child( ).
add header element by element to SOAP header
WHILE NOT xml_element IS INITIAL.
name = xml_element->get_name( ).
namespace = 'http://swanandmokashi.com' . "xml_element->get_namespace_uri( ).
IF NOT xml_element IS INITIAL.
ENDIF.
ws_header->set_request_header(
name = name
namespace = namespace
dom = xml_element ).
xml_element ?= xml_element->get_next( ).
ENDWHILE.
ENDIF.
ENDIF.
CATCH cx_ai_system_fault .
ENDTRY.
*Call soap body using abap proxy class.
DATA: get_quotes TYPE zzget_quotes_soap_out .
DATA: get_quotes1 TYPE zzget_quotes_soap_in .
get_quotes1-quote_ticker = 'GE'.
TRY.
CALL METHOD ref_stock->get_stock_quotes
EXPORTING
get_quotes1 = get_quotes1
IMPORTING
get_quotes = get_quotes.
CATCH cx_ai_system_fault .
CATCH cx_ai_application_fault .
ENDTRY.
4.It is throwing cx_ai_system_fault error.
SOAP details:
Input:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:enc="http://schemas.xmlsoap.org/soap/encoding" >
<soap:Header>
<s1:LicenseInfo xmlns:s1="http://ws.strikeiron.com">
<s1:RegisteredUser>
<s1:UserID>[email protected]</s1:UserID>
<s1:Password>aaaaaaaa</s1:Password>
</s1:RegisteredUser>
</s1:LicenseInfo>
</soap:Header>
<soap:Body>
<tns:GetQuotes xmlns:tns="http://swanandmokashi.com">
<tns:QuoteTicker>GE</tns:QuoteTicker>
</tns:GetQuotes>
</soap:Body>
</soap:Envelope>
Thanks,
Kavitha.Hi ,
Thank you for the response. Did you passed user email and password ([email protected] /aaaaaaaa) part of licenseinfo->resisteredUser along with Quoteticker GE in analyzer?
<a href="http://www.strikeiron.com/Analyzer/OnlineAnalyzer.aspx?WSDL=http://ws.strikeiron.com/SwanandMokashi/StockQuotes?WSDL">ANALYZER</a>
Thanks,
Kavitha. -
Pros & Cons for consuming web services in ABAP using ABAP PROXY
Hi,
Other then performence is there any other disadvantages like security,etc for consuming web services in ABAP using ABAP proxy?
I really appreciate if some one provide the more details(Pros & Cons ) regarding cosuming web services and I also want to know is there any other way to consume web services in ABAP.
Thanks.<i> is there any other way to consume web services in ABAP</i>
you can use cl_http_client class to make your program to act as http client and post the soap message too webservice. This way you dont need to generate proxy, but you should know the soap message format.
Regards
Raja -
Consuming web service:web service proxy option- service call(ECC6.0)
Hi,
<u>On SYSTEM A</u>
AS POC we have generated web service from BAPI_FLIGHT_GETLIST from ECC6.0.
0.we tested using web browser it was working fine.Then saved the WSDL to local pc
<u>On SYSTEM B</u>
1.I have created proxy using wsdl saved on local pc,
2. Created RFC Destination Type "H" giving the web service path
path : /sap/bc/srt/rfc/sap/ZBAPI_FLIGHT_GETLIST_WSD host & http port number.
3. created Logical port using LPCONFIG adn provided the RFC destination.
4. created service call from abap dynpro by using third option "web service proxy"
then selected the proxy generated above.
when i go to component controller context and see,
BAPI_FLIGHT_GETLIST
exporting
output
FLIGHT_LIST
<no elements under this>
Under FLIGHT_LIST i dont see the node Item then list of elements under that.
How to use this in view as such i dont see output individual parameters??
If i use function module and create service call
then i could see properly like and could use it in view.
BAPI_FLIGHT_GETLIST
CHANGING
FLIGHT_LIST
AIRLINEID
Pointers will be suitable rewarded.
Regards
shekar chandraAS per help
http://help.sap.com/saphelp_nw04s/helpdata/en/77/3545415ea6f523e10000000a155106/frameset.htm
its mentioned
Use
With the help of the service call function within a Web Dynpro component it is possible to call:
· An existing function call
· A method of an existing class
· The proxy of a Web service
Prerequisites
If you wish to use the service call to include an existing function module into your Web Dynpro application, you can access available function modules in the current system.
Does it mean our ECC6.0 version? so we need to wait till that get resolved?? -
Consuming web service from ecc6.0:using webservice proxy -service call
Hi,
<u> On SYSTEM A</u>
AS POC we have generated web service from BAPI_FLIGHT_GETLIST from ECC6.0.
0.we tested using web browser it was working fine.Then saved the WSDL to local pc
<u>On SYSTEM B</u>
1.I have created proxy using wsdl saved on local pc,
2. Created RFC Destination Type "H" giving the web service path
path : /sap/bc/srt/rfc/sap/ZBAPI_FLIGHT_GETLIST_WSD host & http port number.
3. created Logical port using LPCONFIG adn provided the RFC destination.
4. created service call from abap dynpro by using third option "web service proxy"
then selected the proxy generated above.
when i go to component controller context and see,
exporting
output
FLIGHT_LIST
Under FLIGHT_LIST i dont see the node Item then list of elements under that.
How to use this in view as such i dont see output individual parameters??
If i use function module and create service call
then i could see properly like and could use it in view.
CHANGING
FLIGHT_LIST
AIRLINEID
Pointers will be suitable rewarded.
Regards
shekar chandraclosed
-
ABAP WebAS 640 Consume Web Service
I am trying to consume a .Net Web Service from a WebAS 640 system, but am encountering problems. Here are the steps I am taking:
1. In SE80, Create a new Package
2. Right-click the package and choose Create > Enterprise Service / Web Service > Proxy Object
3. Choose the first radio button "URL / HTTP Destination"
4. Enter the url of the WSDL of my .Net service
5. Type in the name of my package, and a prefix that begins with Z to put it in the customer namespace
---> At this point, SAP tries to generate the proxy but gives the following error:
"<b>Cannot generate proxy (object schema missing in WSDL, see long text)</b>"
When I click the help button for more information, I see that there is a reference in the WSDL to a namespace which is not defined in the WSDL. This namespace is included by default in .Net - http://www.w3.org/2001/XMLSchema. I do not know whether I should try to remove it or if there is a setting in SE80 which would cause SAP ignore the namespace reference. Does anyone have experience with this?
I have pasted the help information below.
<b><u>Background</u></b>
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
<b><u>Diagnosis</u></b>
In the WSDL document, the object
"schema"
from the namespace
"http://mycompany.com"
links to the object
"schema"
from the namespace
"http://www.w3.org/2001/XMLSchema"
However, this last object does not exist in the WSDL document.
<b><u>System response</u></b>
ABAP proxy generation expects that all directly and indirectly referenced objects are in the WSDL document. Therefore, no proxy can be generated for this WSDL and the system displays an error message.
<b><u>Procedure</u></b>
This situation can have different causes:
Object "schema" not been defined
Object "schema" saved in the wrong namespace
In the reference to object "schema", the wrong name was specified
In the reference to object "schema", the wrong namespace "http://www.w3.org/2001/XMLSchema" was specified
Internal error in the service that constructs the WSDL document
Internal error in ABAP proxy generationI have several Proxy Objects generated against .Net Web Services. I just checked the WSDL for one of them and it has the www.w3.org reference in it:
wsdl:definitions
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="http://kww.webservices.kimball.com"
xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
targetNamespace="http://kww.webservices.kimball.com"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
This is working fine in my WebAS 640 SP12 system. We didn't do any manipulation to the WSDL (it straight linked off the ASMX page that generates for the WebService), nor did we do any particular settings inside SAP.
In your WSDL do you have a schema node in yoru wsdl:types area. This is what mine looks like:
<wsdl:types>
+ <s:schema elementFormDefault="qualified" targetNamespace="http://kww.webservices.kimball.com">
- <s:element name="Req_By_Userid">
</s:schema>
</wsdl:types>
Perhaps these snipets from my WSDL, that is working just fine from ABAP, will help out. -
Proxy generation terminated: Message must have exactly one part
hi experts,
i have tryed to create a proxy in abap but it gives an error message
Proxy generation terminated: Message must have exactly one part
Message no. SPRX046
can any one help me
the wsdl document is
- <wsdl:definitions targetNamespace="urn:sap-com:document:sap:rfc:functions">
−
<wsdl:types>
−
<xsd:schema targetNamespace="urn:sap-com:document:sap:rfc:functions" elementFormDefault="unqualified" attributeFormDefault="qualified">
−
<xsd:simpleType name="char1">
−
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
−
<xsd:simpleType name="char10">
−
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
−
<xsd:simpleType name="char100">
−
<xsd:restriction base="xsd:string">
<xsd:maxLength value="100"/>
</xsd:restriction>
</xsd:simpleType>
−
<xsd:simpleType name="char20">
−
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20"/>
</xsd:restriction>
</xsd:simpleType>
−
<xsd:simpleType name="char220">
−
<xsd:restriction base="xsd:string">
<xsd:maxLength value="220"/>
</xsd:restriction>
</xsd:simpleType>
−
<xsd:simpleType name="char30">
−
<xsd:restriction base="xsd:string">
<xsd:maxLength value="30"/>
</xsd:restriction>
</xsd:simpleType>
−
<xsd:simpleType name="char32">
−
<xsd:restriction base="xsd:string">
<xsd:maxLength value="32"/>
</xsd:restriction>
</xsd:simpleType>
−
<xsd:simpleType name="char50">
−
<xsd:restriction base="xsd:string">
<xsd:maxLength value="50"/>
</xsd:restriction>
</xsd:simpleType>
−
<xsd:simpleType name="clnt3">
−
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3"/>
</xsd:restriction>
</xsd:simpleType>
−
<xsd:simpleType name="numeric15">
−
<xsd:restriction base="xsd:string">
<xsd:maxLength value="15"/>
<xsd:pattern value="\d*"/>
</xsd:restriction>
</xsd:simpleType>
−
<xsd:simpleType name="numeric3">
−
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3"/>
<xsd:pattern value="\d*"/>
</xsd:restriction>
</xsd:simpleType>
−
<xsd:simpleType name="numeric6">
−
<xsd:restriction base="xsd:string">
<xsd:maxLength value="6"/>
<xsd:pattern value="\d*"/>
</xsd:restriction>
</xsd:simpleType>
−
<xsd:complexType name="ZCAF_DEP_QUEST">
−
<xsd:sequence>
<xsd:element name="MANDT" type="tns:clnt3"/>
<xsd:element name="DEPQTN_ID" type="tns:numeric15"/>
<xsd:element name="QTNID" type="tns:numeric15"/>
<xsd:element name="ANS_CHOICE_ID" type="tns:numeric15"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZCAF_ANSWER_META">
−
<xsd:sequence>
<xsd:element name="MANDT" type="tns:clnt3"/>
<xsd:element name="ANS_META_ID" type="tns:numeric15"/>
<xsd:element name="HAS_COMMENT" type="tns:char1"/>
<xsd:element name="HAS_MULTI_CHOICE" type="tns:char1"/>
<xsd:element name="MULTISELECT_ALLO" type="tns:char1"/>
<xsd:element name="NA_POSSIBLE" type="tns:char1"/>
<xsd:element name="DATA_TYPE" type="tns:char1"/>
<xsd:element name="VALUE_TYPE" type="tns:char1"/>
<xsd:element name="DISPLAY_TYPE" type="tns:char1"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZCAF_QUEST_GROUP">
−
<xsd:sequence>
<xsd:element name="MANDT" type="tns:clnt3"/>
<xsd:element name="QTNGRPID" type="tns:numeric15"/>
<xsd:element name="TITLE" type="tns:char30"/>
<xsd:element name="REPLACE_TEXT" type="tns:char30"/>
<xsd:element name="LANGUAGE" type="tns:char10"/>
<xsd:element name="DESCRIPTION" type="tns:char30"/>
<xsd:element name="HEADER_TEXT" type="tns:char20"/>
<xsd:element name="CREATED_BY" type="tns:char20"/>
<xsd:element name="ANS_META_ID" type="tns:numeric15"/>
<xsd:element name="RELEASE_STATUS" type="tns:char10"/>
<xsd:element name="VERSION" type="tns:char10"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZCAF_COMMENT_ANS">
−
<xsd:sequence>
<xsd:element name="MANDT" type="tns:clnt3"/>
<xsd:element name="COMMENT_ANS_ID" type="tns:numeric15"/>
<xsd:element name="ANSSHEET_ID" type="tns:numeric15"/>
<xsd:element name="ANS_META_ID" type="tns:numeric15"/>
<xsd:element name="ANS_CHOICE_ID" type="tns:numeric15"/>
<xsd:element name="TEXT_COMMT_ID" type="tns:numeric15"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZCAF_ANS_CHOICE">
−
<xsd:sequence>
<xsd:element name="MANDT" type="tns:clnt3"/>
<xsd:element name="ANS_CHOICE_ID" type="tns:numeric15"/>
<xsd:element name="ANS_META_ID" type="tns:numeric15"/>
<xsd:element name="HAS_COMMENT" type="tns:char1"/>
<xsd:element name="SEQ_NUM" type="xsd:int"/>
<xsd:element name="ANSWER_TEXT" type="tns:char50"/>
<xsd:element name="LANGUAGE" type="tns:char10"/>
<xsd:element name="WEIGHT" type="xsd:int"/>
<xsd:element name="HAS_DEP_QTN" type="tns:char1"/>
<xsd:element name="HAS_DEP_QTNGRP" type="tns:char1"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZCAF_QUESTION">
−
<xsd:sequence>
<xsd:element name="MANDT" type="tns:clnt3"/>
<xsd:element name="QTNID" type="tns:numeric15"/>
<xsd:element name="QTNGRPID" type="tns:numeric15"/>
<xsd:element name="ANS_META_ID" type="tns:numeric15"/>
<xsd:element name="QTN_TEXT" type="tns:char100"/>
<xsd:element name="LANGUAGE" type="tns:char10"/>
<xsd:element name="CREATED_BY" type="tns:char20"/>
<xsd:element name="QTNWEIGHTAGE" type="xsd:int"/>
<xsd:element name="VERSION" type="tns:char10"/>
<xsd:element name="RELEASE_STATUS" type="tns:char10"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZCAF_MULTI_ANS">
−
<xsd:sequence>
<xsd:element name="MANDT" type="tns:clnt3"/>
<xsd:element name="MULTIPLE_ANS_ID" type="tns:numeric15"/>
<xsd:element name="ANSSHEET_ID" type="tns:numeric15"/>
<xsd:element name="ANS_META_ID" type="tns:numeric15"/>
<xsd:element name="ANS_CHOICE_ID" type="tns:numeric15"/>
<xsd:element name="ANSWER_TEXT" type="tns:char50"/>
<xsd:element name="ANS_VALUE" type="xsd:int"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZCAF_COMENT_TEXT">
−
<xsd:sequence>
<xsd:element name="MANDT" type="tns:clnt3"/>
<xsd:element name="TEXT_COMMT_ID" type="tns:numeric15"/>
<xsd:element name="TEXT_COMMENT" type="tns:char50"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZCAF_DEP_QTNGRP">
−
<xsd:sequence>
<xsd:element name="MANDT" type="tns:clnt3"/>
<xsd:element name="DEP_QTNGRP_ID" type="tns:numeric15"/>
<xsd:element name="QTNGRPID" type="tns:numeric15"/>
<xsd:element name="ANS_CHOICE_ID" type="tns:numeric15"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZCAF_ANS_SHEET">
−
<xsd:sequence>
<xsd:element name="MANDT" type="tns:clnt3"/>
<xsd:element name="ANSSHEET_ID" type="tns:numeric15"/>
<xsd:element name="QTNRID" type="tns:numeric15"/>
<xsd:element name="STATUS" type="tns:char1"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZCAF_QTNR_QTNGRP">
−
<xsd:sequence>
<xsd:element name="MANDT" type="tns:clnt3"/>
<xsd:element name="QTNRID" type="tns:numeric15"/>
<xsd:element name="QTNGRPID" type="tns:numeric15"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZCAF_QUESTIONIRE">
−
<xsd:sequence>
<xsd:element name="MANDT" type="tns:clnt3"/>
<xsd:element name="QTNRID" type="tns:numeric15"/>
<xsd:element name="TITLE" type="tns:char30"/>
<xsd:element name="REPLACE_TEXT" type="tns:char30"/>
<xsd:element name="LANGUAGE" type="tns:char10"/>
<xsd:element name="DESCRIPTION" type="tns:char30"/>
<xsd:element name="HEADER_TEXT" type="tns:char20"/>
<xsd:element name="CREATED_BY" type="tns:char20"/>
<xsd:element name="RELEASE_STATUS" type="tns:char10"/>
<xsd:element name="VERSION" type="tns:char10"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="BAPIRET2">
−
<xsd:sequence>
<xsd:element name="TYPE" type="tns:char1"/>
<xsd:element name="ID" type="tns:char20"/>
<xsd:element name="NUMBER" type="tns:numeric3"/>
<xsd:element name="MESSAGE" type="tns:char220"/>
<xsd:element name="LOG_NO" type="tns:char20"/>
<xsd:element name="LOG_MSG_NO" type="tns:numeric6"/>
<xsd:element name="MESSAGE_V1" type="tns:char50"/>
<xsd:element name="MESSAGE_V2" type="tns:char50"/>
<xsd:element name="MESSAGE_V3" type="tns:char50"/>
<xsd:element name="MESSAGE_V4" type="tns:char50"/>
<xsd:element name="PARAMETER" type="tns:char32"/>
<xsd:element name="ROW" type="xsd:int"/>
<xsd:element name="FIELD" type="tns:char30"/>
<xsd:element name="SYSTEM" type="tns:char10"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZCAF_ST_GET_QUESTIONNAIRE">
−
<xsd:sequence>
<xsd:element name="QTNID" type="tns:numeric15"/>
<xsd:element name="QTN_TEXT" type="tns:char100"/>
<xsd:element name="ANS_META_ID" type="tns:numeric15"/>
<xsd:element name="HAS_COMMENT" type="tns:char1"/>
<xsd:element name="HAS_MULTI_CHOICE" type="tns:char1"/>
<xsd:element name="MULTISELECT_ALLO" type="tns:char1"/>
<xsd:element name="NA_POSSIBLE" type="tns:char1"/>
<xsd:element name="DATA_TYPE" type="tns:char1"/>
<xsd:element name="VALUE_TYPE" type="tns:char1"/>
<xsd:element name="DISPLAY_TYPE" type="tns:char1"/>
<xsd:element name="ANS_CHOICE" type="tns:ZTCAF_GET_ANS_CHOICE"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZSCAF_ANS_CHOICE">
−
<xsd:sequence>
<xsd:element name="ANS_CHOICE_ID" type="tns:numeric15"/>
<xsd:element name="ANS_META_ID" type="tns:numeric15"/>
<xsd:element name="HAS_COMMENT" type="tns:char1"/>
<xsd:element name="SEQ_NUM" type="xsd:int"/>
<xsd:element name="ANSWER_TEXT" type="tns:char50"/>
<xsd:element name="LANGUAGE" type="tns:char10"/>
<xsd:element name="WEIGHT" type="xsd:int"/>
<xsd:element name="HAS_DEP_QTN" type="tns:char1"/>
<xsd:element name="HAS_DEP_QTNGRP" type="tns:char1"/>
<xsd:element name="DEP_QTN" type="tns:ZTCAF_DEP_QTN"/>
<xsd:element name="DEP_QTNGRP" type="tns:ZTCAF_DEP_QTN_GRP"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZTCAF_GET_DATA_QUESTIONNAIRE">
−
<xsd:sequence>
<xsd:element name="item" minOccurs="0" maxOccurs="unbounded" type="tns:ZCAF_ST_GET_QUESTIONNAIRE"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZTCAF_GET_ANS_CHOICE">
−
<xsd:sequence>
<xsd:element name="item" minOccurs="0" maxOccurs="unbounded" type="tns:ZSCAF_ANS_CHOICE"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZTCAF_DEP_QTN">
−
<xsd:sequence>
<xsd:element name="item" minOccurs="0" maxOccurs="unbounded" type="tns:ZCAF_DEP_QUEST"/>
</xsd:sequence>
</xsd:complexType>
−
<xsd:complexType name="ZTCAF_DEP_QTN_GRP">
−
<xsd:sequence>
<xsd:element name="item" minOccurs="0" maxOccurs="unbounded" type="tns:ZCAF_DEP_QTNGRP"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
−
<wsdl:message name="ZMCAF_CRUD_QUESTIONNAIRE">
<wsdl:part name="IS_ANSCHOICE" type="tns:ZCAF_ANS_CHOICE"/>
<wsdl:part name="IS_ANSMETA" type="tns:ZCAF_ANSWER_META"/>
<wsdl:part name="IS_ANS_SHEET" type="tns:ZCAF_ANS_SHEET"/>
<wsdl:part name="IS_COMM_ANS" type="tns:ZCAF_COMMENT_ANS"/>
<wsdl:part name="IS_COMM_TXT" type="tns:ZCAF_COMENT_TEXT"/>
<wsdl:part name="IS_DEPQTN" type="tns:ZCAF_DEP_QUEST"/>
<wsdl:part name="IS_DEPQTNGRP" type="tns:ZCAF_DEP_QTNGRP"/>
<wsdl:part name="IS_MULT_ANS" type="tns:ZCAF_MULTI_ANS"/>
<wsdl:part name="IS_QTNR_QTNGRP" type="tns:ZCAF_QTNR_QTNGRP"/>
<wsdl:part name="IS_QTN_GRP" type="tns:ZCAF_QUEST_GROUP"/>
<wsdl:part name="IS_QUESTION" type="tns:ZCAF_QUESTION"/>
<wsdl:part name="IS_QUESTIONNAIRE" type="tns:ZCAF_QUESTIONIRE"/>
<wsdl:part name="IV_CHOICE" type="tns:char1"/>
<wsdl:part name="IV_QTNR_ID" type="tns:numeric15"/>
<wsdl:part name="IV_TYPE" type="tns:char10"/>
</wsdl:message>
−
<wsdl:message name="ZMCAF_CRUD_QUESTIONNAIREResponse">
<wsdl:part name="ET_QTNR_GET_DATA" type="tns:ZTCAF_GET_DATA_QUESTIONNAIRE"/>
<wsdl:part name="RETURN" type="tns:BAPIRET2"/>
</wsdl:message>
−
<sap:Feature name="design_0 " uri="http://www.sap.com/webas/630/soap/features/authentication/">
−
<sap:Property qname="n0:AuthenticationLevel">
<sap:Option value="n0:Basic"/>
</sap:Property>
</sap:Feature>
−
<wsdl:portType name="zwsquestionnaire">
<sap:useFeature feature="tns:design_0 "/>
−
<wsdl:operation name="ZMCAF_CRUD_QUESTIONNAIRE">
<wsdl:input message="tns:ZMCAF_CRUD_QUESTIONNAIRE"/>
<wsdl:output message="tns:ZMCAF_CRUD_QUESTIONNAIREResponse"/>
</wsdl:operation>
</wsdl:portType>
−
<wsdl:binding name="zwsquestionnaireSoapBinding" type="tns:zwsquestionnaire">
<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
−
<wsdl:operation name="ZMCAF_CRUD_QUESTIONNAIRE">
<soap:operation soapAction=""/>
−
<wsdl:input>
<soap:body use="literal" namespace="urn:sap-com:document:sap:rfc:functions"/>
</wsdl:input>
−
<wsdl:output>
<soap:body use="literal" namespace="urn:sap-com:document:sap:rfc:functions"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
−
<wsdl:service name="zwsquestionnaireService">
−
<wsdl:port name="zwsquestionnaireSoapBinding" binding="tns:zwsquestionnaireSoapBinding">
<soap:address location="http://localhost:8000/sap/bc/srt/rfc/sap/ZWSQUESTIONNAIRE?sap-client=000"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>OK , could you please help me?
SAP error message;
Proxy generation terminated: Message must have exactly one part
Diagnosis
In a WSDL document, a <message> must contain exactly one <part>, therefore:
<message name="check_serviceHttpGetIn">
<part .../>
</message>
WSDL document;
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://tempuri.org/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<s:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/">
<s:element name="check_service">
<s:complexType />
</s:element>
<s:element name="check_serviceResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="check_serviceResult" type="s:boolean" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="get_puantaj_data">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="personel_sicilno" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="yil" type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="ay" type="s:int" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="get_puantaj_dataResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="get_puantaj_dataResult">
<s:complexType>
<s:sequence>
<s:any minOccurs="0" maxOccurs="unbounded" namespace="http://www.w3.org/2001/XMLSchema" processContents="lax" />
<s:any minOccurs="1" namespace="urn:schemas-microsoft-com:xml-diffgram-v1" processContents="lax" />
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="boolean" type="s:boolean" />
<s:element name="DataTable" nillable="true">
<s:complexType>
<s:sequence>
<s:any minOccurs="0" maxOccurs="unbounded" namespace="http://www.w3.org/2001/XMLSchema" processContents="lax" />
<s:any minOccurs="1" namespace="urn:schemas-microsoft-com:xml-diffgram-v1" processContents="lax" />
</s:sequence>
</s:complexType>
</s:element>
</s:schema>
</wsdl:types>
<wsdl:message name="check_serviceSoapIn">
<wsdl:part name="parameters" element="tns:check_service" />
</wsdl:message>
<wsdl:message name="check_serviceSoapOut">
<wsdl:part name="parameters" element="tns:check_serviceResponse" />
</wsdl:message>
<wsdl:message name="get_puantaj_dataSoapIn">
<wsdl:part name="parameters" element="tns:get_puantaj_data" />
</wsdl:message>
<wsdl:message name="get_puantaj_dataSoapOut">
<wsdl:part name="parameters" element="tns:get_puantaj_dataResponse" />
</wsdl:message>
<wsdl:message name="check_serviceHttpGetIn" />
<wsdl:message name="check_serviceHttpGetOut">
<wsdl:part name="Body" element="tns:boolean" />
</wsdl:message>
<wsdl:message name="get_puantaj_dataHttpGetIn">
<wsdl:part name="personel_sicilno" type="s:string" />
<wsdl:part name="yil" type="s:string" />
<wsdl:part name="ay" type="s:string" />
</wsdl:message>
<wsdl:message name="get_puantaj_dataHttpGetOut">
<wsdl:part name="Body" element="tns:DataTable" />
</wsdl:message>
<wsdl:message name="check_serviceHttpPostIn" />
<wsdl:message name="check_serviceHttpPostOut">
<wsdl:part name="Body" element="tns:boolean" />
</wsdl:message>
<wsdl:message name="get_puantaj_dataHttpPostIn">
<wsdl:part name="personel_sicilno" type="s:string" />
<wsdl:part name="yil" type="s:string" />
<wsdl:part name="ay" type="s:string" />
</wsdl:message>
<wsdl:message name="get_puantaj_dataHttpPostOut">
<wsdl:part name="Body" element="tns:DataTable" />
</wsdl:message>
<wsdl:portType name="Aktarim_ServiceSoap">
<wsdl:operation name="check_service">
<wsdl:input message="tns:check_serviceSoapIn" />
<wsdl:output message="tns:check_serviceSoapOut" />
</wsdl:operation>
<wsdl:operation name="get_puantaj_data">
<wsdl:input message="tns:get_puantaj_dataSoapIn" />
<wsdl:output message="tns:get_puantaj_dataSoapOut" />
</wsdl:operation>
</wsdl:portType>
<wsdl:portType name="Aktarim_ServiceHttpGet">
<wsdl:operation name="check_service">
<wsdl:input message="tns:check_serviceHttpGetIn" />
<wsdl:output message="tns:check_serviceHttpGetOut" />
</wsdl:operation>
<wsdl:operation name="get_puantaj_data">
<wsdl:input message="tns:get_puantaj_dataHttpGetIn" />
<wsdl:output message="tns:get_puantaj_dataHttpGetOut" />
</wsdl:operation>
</wsdl:portType>
<wsdl:portType name="Aktarim_ServiceHttpPost">
<wsdl:operation name="check_service">
<wsdl:input message="tns:check_serviceHttpPostIn" />
<wsdl:output message="tns:check_serviceHttpPostOut" />
</wsdl:operation>
<wsdl:operation name="get_puantaj_data">
<wsdl:input message="tns:get_puantaj_dataHttpPostIn" />
<wsdl:output message="tns:get_puantaj_dataHttpPostOut" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="Aktarim_ServiceSoap" type="tns:Aktarim_ServiceSoap">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="check_service">
<soap:operation soapAction="http://tempuri.org/check_service" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="get_puantaj_data">
<soap:operation soapAction="http://tempuri.org/get_puantaj_data" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding name="Aktarim_ServiceSoap12" type="tns:Aktarim_ServiceSoap">
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="check_service">
<soap12:operation soapAction="http://tempuri.org/check_service" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="get_puantaj_data">
<soap12:operation soapAction="http://tempuri.org/get_puantaj_data" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding name="Aktarim_ServiceHttpGet" type="tns:Aktarim_ServiceHttpGet">
<http:binding verb="GET" />
<wsdl:operation name="check_service">
<http:operation location="/check_service" />
<wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="get_puantaj_data">
<http:operation location="/get_puantaj_data" />
<wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding name="Aktarim_ServiceHttpPost" type="tns:Aktarim_ServiceHttpPost">
<http:binding verb="POST" />
<wsdl:operation name="check_service">
<http:operation location="/check_service" />
<wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="get_puantaj_data">
<http:operation location="/get_puantaj_data" />
<wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="Aktarim_Service">
<wsdl:port name="Aktarim_ServiceSoap" binding="tns:Aktarim_ServiceSoap">
<soap:address location="http://192.168.10.151:7979/sap_aktarim/Aktarim_Service.asmx" />
</wsdl:port>
<wsdl:port name="Aktarim_ServiceSoap12" binding="tns:Aktarim_ServiceSoap12">
<soap12:address location="http://192.168.10.151:7979/sap_aktarim/Aktarim_Service.asmx" />
</wsdl:port>
<wsdl:port name="Aktarim_ServiceHttpGet" binding="tns:Aktarim_ServiceHttpGet">
<http:address location="http://192.168.10.151:7979/sap_aktarim/Aktarim_Service.asmx" />
</wsdl:port>
<wsdl:port name="Aktarim_ServiceHttpPost" binding="tns:Aktarim_ServiceHttpPost">
<http:address location="http://192.168.10.151:7979/sap_aktarim/Aktarim_Service.asmx" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions> -
Creating Web Service Proxy From WSDL - Error SPRX046
We are attempting to create some Web Service proxy objects from some WSDL files. Some of the WSDL files contain message definitions with multiple parts such as
<i><wsdl:message name="GetNewSubmissionsResponse">
<wsdl:part element="impl:Count" name="Count"/>
<wsdl:part element="impl:MoreAvailable" name="MoreAvailable"/>
<wsdl:part element="impl:IRSData" name="IRSData"/>
<wsdl:part element="impl:StateSubmissions" name="StateSubmissions"/>
</wsdl:message></i>
This always generates the error message <b>SPRX046 - "
Msg Proxy generation terminated: Message must have exactly one part".</b>
Is this just a limitation with SAP Web AS? Has anyone dealt with this before? These WSDLs work in other environments (AXIS Java, XML Spy etc).
ThanksIt seems ABAP proxy only supports Document-Literal style WSDL. Document-literal style is supported by most Web services platforms, and is supposed to be most interoperable.
Per WS-I Basic Profile 1.0 (see [1])which provides interoperability guidance of using WSDL1.1, when the message part is defined using the @element attribute, the message can only be bound to so-called "document-Literal" style which in turn requires that the message contains only one part.The WSDL you provided violated the document-literal rules.
Have you tried to change the message definition a bit so it's BP conformant? Try defining a complex type for the subelements, then define an wrapper element to use that complex type, and finally let the message part to refer to the wrapper element. Something like,
<wsdl:message name="GetNewSubmissionsResponse">
<wsdl:part element="impl:GetNewSubmissionsResponseWrapper" name="myResponse"/>
</wsdl:message> -
Creating and consuming web service
Hello Everyone,
Please help me in creating a webservice which can be consumed in a button in Excel sheet i.e. I have to create a button in Excel sheet and on click of that button i have to consume a web service deployed in AS. Also I have to pass the data in Excel sheet to that web service.
PS: This is just a business logic no other view or UI is required here.
Thanks in advance.
Regards
PranavHi Pranav
>2. I know I can download WSDL files from server using the test page. Downloaded zip file has these three wsdl files Config1_document.wsdl, Config1_TestVi_document.wsdl and main.wsdl. But which wsdl to use while consuming.
Actually all the .wsdl files are part of single WSDL document which describes your Web service. Starting/root point here is main.wsdl which references two other .wsdl. You can access any time the root WSDL part by URL like
"http://<host>:<port>/BcfRemoteCheck/Config1?wsdl&style=document&mode=standard".
Hope you know where to see the WSDL URL (in Webservice Navigator or in Single Service Administration where you downloaded the ZIP).
When you are consuming web-service you need all the parts. Usually when a Web-service is consumed the remote WSDL is used for generation of WS Client Proxy. But, the WSDL files can be also downloaded and used locally for generation of the WS Client Proxy.
Sometimes the WSDL is not necessary at all for WS consuming on run-time. In the case it's used only on design-time just to know WS names, ports, operations, etc, for writing the code of WS Client.
BR, Sergei -
Problem while creating web service proxy in Jdeveloper 10.1.3
I am using Jdeveloper 10.1.3 to create a web service proxy so that I can track my request/response in HTTP Analyzer.
I am following the steps as mentioned in the follwoing uRL:
http://www.oracle.com/technology/obe/obe1013jdev/ws/wsandascontrol.htm
But I get the following warning while creating the web servcice proxy:
Generating proxy
WARNING: value type package prefix is ignored for the types defined in the schema that has same target namespace as the target namespace of wsdl: <my web service namepsace>
Proxy generation finished
After adding my code in the main methoad of proxy, I get the following error while compiling:
WARNING: Unable to connect to URL: <my web service proxy URL> due to java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: Connection refused: connect
java.rmi.RemoteException: ; nested exception is:
HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: Connection refused: connect
Please help as how to solve this.
Edited by: user11258855 on 02-Jul-2009 03:38I am using Jdeveloper 10.1.3 to create a web service proxy so that I can track my request/response in HTTP Analyzer.
I am following the steps as mentioned in the follwoing uRL:
http://www.oracle.com/technology/obe/obe1013jdev/ws/wsandascontrol.htm
But I get the following warning while creating the web servcice proxy:
Generating proxy
WARNING: value type package prefix is ignored for the types defined in the schema that has same target namespace as the target namespace of wsdl: <my web service namepsace>
Proxy generation finished
After adding my code in the main methoad of proxy, I get the following error while compiling:
WARNING: Unable to connect to URL: <my web service proxy URL> due to java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: Connection refused: connect
java.rmi.RemoteException: ; nested exception is:
HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: Connection refused: connect
Please help as how to solve this.
Edited by: user11258855 on 02-Jul-2009 03:38
Maybe you are looking for
-
Hello! I am new here! Here is my question: my pc just died with my iTunes music library. Foolishly, I had no physical external backup, but am a subscriber to iTunes Match. I plan to purchase a MacBook Air ASAP. Will I be able to download my music to
-
Emptied cache and relaunched Safari. The pdf I click on that shows a document goes blank when I click on print. I did learn that other documents in Safari will print after all, but not this one. Enabled cookies to no avail. Firefox works. Must be som
-
How to get wage type for every time record
Hi Pros, I am using DS 0CA_TS_IS_1, it includes report time type (0REPTT), but not have wage type. in CATSDB, I fied fields for attendance/absence type and wage type. but not every time record has wage type. can you please tell me how to get wa
-
File -- IDOC scenario using XI 3.0
Hi I tried out a simple flat file to IDOC scenario using XI as the middleware and tried to post documents of type CREMAS03 on the backend R/3 system. Now, I see that there is an IDOC number generated in the XI layer by the IDOC adapter. This IDOC
-
Hi, Currently all my sqlj beans use a connect.properties file. So i have something like oracle.connect(myclass.class,"connect.properties"); I find this not so secure. If someone ever gets in my box, they have the password in clear text. Is there a wa