XML SPY - SOAP Envelope
Hi all,
Can any body please suggest me the steps to capture the SOAP envelope using XML SPY?
Also while sending a SOAP request through XML Spy to server, i get an empty response. I tried to monitor the packets passing through the network card with the destination specified in the SOAP request, there was such message. Can any body please suggest me the possible reasons and the solution for the same?
Thanks and best regards,
Kulwant
Thanks and best regards,
Kulwant Singh
Hi
If you are getting the response back as blank response so check the request you are sending to the web serviceor RFC have any response information or it is blank.
or
if u have use the exactly once option in the adapter then u will get the blank response while sending the request using the xml spy.
Thanks
Rinku
Similar Messages
-
Enclosing Transformed XML in SOAP envelope
All,
I am currently facing difficulty to send a XML document via HTTP Post enclosed in a SOAP envelope.
1. The BPEL process, using database polling feature of DB Adapter, will get the records from the database.
2. Transform the message
3. Now I want to enclose the transformed message into a SOAP envelope and send it via HTTP Post to a third party system.
I am facing difficulty in Step 3. Could some one suggest me how to enclose the XML messages inside a SOAP envelope and some pointers to use HTTP Adapter?
Thanks in advanceI just found out that HTTP binding activity does not support XMLs with complex types.(Note ID: 1328955.1) Now I guess the only choice for me is to use Java or any other programming language to do the HTTP post.
This is what i am thinking.
1. Create a XML file with the required format using SOA
2. Use a Java program to pick the file from a location and send it to the target URL( enclosing it in a SOAP envelope)
3. Get the response and update oracle status tables.
The trouble i will face here is to pass the file name , target URL as the parameters.
Is there a way to create this program and orchestrate using BPEL? Meaning- call this java program after i finish generating the file and pass the file name and the target URL as parameter?
Please suggest if a better approach could be followed for this.
Thanks,
Dwarak -
'/soap:Envelope ' in extract throws invalid token error
I'm receiving xml via webservice/soap and placing in an XMLTYPE table. Upon trying to execute a test query:
SELECT
EXTRACTVALUE(VALUE(d),'Destinations/CountryID') AS ID
FROM X_TEST p,
TABLE (xmlsequence(EXTRACT(p.object_value,'/soap:Envelope/soap:Body/GetUserDestinationResponse/GetUserDestinationResult/DestinationResults/DestinationsList//Destinations'))) d
I get an error similar to: (note path here in error is diff than above extract statement)
ORA-31011: XML parsing failed
ORA-19202: Error occurred in XML processing
LPX-00601: Invalid token in: 'soap:Envelope/soap:Body/GetUserDestinationResponse/GetUserDestinationResult/DestinationResults/DestinationsList/Destinations/DestinationList/Destination//Provider'
Without the soap:Envelope/soap:Body there is no error. Is there a problem using the ':' here?
Here's a snippet of the stored xml:
<?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:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<GetUserDestinationsResponse xmlns="http://xxx.xxx.xxx.xx/somesite_ws/">
<GetUserDestinationsResult>
<DestinationResults>
<DestinationsList>
<Destinations>
<CountryID>101</CountryID>
<CountryDescription>Indonesia</CountryDescription>
</Destinations>
</DestinationList>
</DestinationResults>
</GetUserDestinationsResult>
</GetUserDestinationsResponse>
</soap:Body>
</soap:Envelope>Thanks,
that set me in the right direction - I had tried the third parm before but must not have been just right being that there are multiple namespaces given. Appears I have to always use the namespace parm to accurately obtain the data. To conclude - this is what I ended up with to get this returning data properly:
SELECT
EXTRACTVALUE(VALUE(d),'/Destination/DestinationId', 'xmlns="http://xxx.xxx.xxx.xx/some_ws/"') AS ID,
Get_Point(EXTRACTVALUE(VALUE(d),'/Destination/Longitude', 'xmlns="http://xxx.xxx.xxx.xx/some_ws/"'),
EXTRACTVALUE(VALUE(d),'/Destination/Latitude', 'xmlns="http://xxx.xxx.xxx.xx/some_ws/"')) AS geom,
EXTRACTVALUE(VALUE(p),'/Provider/ProviderName', 'xmlns="http://xxx.xxx.xxx.xx/some_ws/"') AS provider_name,
EXTRACTVALUE(VALUE(p),'/Provider/ProviderSpecific/HospitalInformation/whoAvainFlu', 'xmlns="http://xxx.xxx.xxx.xx/some_ws/"') AS avaianflu,
VALUE(p) AS xmlb
FROM X_MEDAIRE xml
,TABLE (xmlsequence(EXTRACT(xml.object_value,
'/soap:Envelope/soap:Body/*', 'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"'
))) e
,TABLE (xmlsequence(EXTRACT(VALUE(e),
'/long/path/after/soap', 'xmlns="http://xxx.xxx.xxx.xx/some_ws/"' ))) d
,TABLE (xmlsequence(EXTRACT(VALUE(d),
'/Destination/ProviderList/Provider', 'xmlns="http://xxx.xxx.xxx.xxx/some_ws/"' ))) p
WHERE
EXTRACTVALUE(VALUE(p),'/Provider/ProviderType', 'xmlns="http://xxx.xxx.xxx.xxx/some_ws/"') = 'Hospital' -
Dear All,
I wanted to log all my SOAP traffic so I created my own SOAPProvider for my Web Service Data Control.
I used below code
public class MySoapProvider extends SOAPProvider
private static final ADFLogger logger = ADFLogger.createADFLogger(MySoapProvider.class);
@Override
public void handleRequest(SOAPMessage soapMessage)
throws AdapterException
logSOAPMessage(soapMessage, "REQUEST");
super.handleRequest(soapMessage);
@Override
protected void handleResponse(SOAPMessage message) throws AdapterException {
logSOAPMessage(message, "RESPONSE");
super.handleResponse(message);
private void logSOAPMessage(SOAPMessage message, String origin){
ByteArrayOutputStream out = new ByteArrayOutputStream();
try {
message.writeTo(out);
} catch (Exception e) {
e.printStackTrace();
logger.info("SOAP Message :: " + origin + " :: " +out.toString());
}But it prints this line.
<SSSOAPProvider> <logSOAPMessage> Logging SOAP Message :: REQUEST :: oracle.j2ee.ws.saaj.soap.soap11.Message11@1466e35I am not sure, but how do you logged the SOAP envelope in ADF? I am expecting to print the soap header and soap body actually
ThanksThanks,
that set me in the right direction - I had tried the third parm before but must not have been just right being that there are multiple namespaces given. Appears I have to always use the namespace parm to accurately obtain the data. To conclude - this is what I ended up with to get this returning data properly:
SELECT
EXTRACTVALUE(VALUE(d),'/Destination/DestinationId', 'xmlns="http://xxx.xxx.xxx.xx/some_ws/"') AS ID,
Get_Point(EXTRACTVALUE(VALUE(d),'/Destination/Longitude', 'xmlns="http://xxx.xxx.xxx.xx/some_ws/"'),
EXTRACTVALUE(VALUE(d),'/Destination/Latitude', 'xmlns="http://xxx.xxx.xxx.xx/some_ws/"')) AS geom,
EXTRACTVALUE(VALUE(p),'/Provider/ProviderName', 'xmlns="http://xxx.xxx.xxx.xx/some_ws/"') AS provider_name,
EXTRACTVALUE(VALUE(p),'/Provider/ProviderSpecific/HospitalInformation/whoAvainFlu', 'xmlns="http://xxx.xxx.xxx.xx/some_ws/"') AS avaianflu,
VALUE(p) AS xmlb
FROM X_MEDAIRE xml
,TABLE (xmlsequence(EXTRACT(xml.object_value,
'/soap:Envelope/soap:Body/*', 'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"'
))) e
,TABLE (xmlsequence(EXTRACT(VALUE(e),
'/long/path/after/soap', 'xmlns="http://xxx.xxx.xxx.xx/some_ws/"' ))) d
,TABLE (xmlsequence(EXTRACT(VALUE(d),
'/Destination/ProviderList/Provider', 'xmlns="http://xxx.xxx.xxx.xxx/some_ws/"' ))) p
WHERE
EXTRACTVALUE(VALUE(p),'/Provider/ProviderType', 'xmlns="http://xxx.xxx.xxx.xxx/some_ws/"') = 'Hospital' -
Error while sending SOAP Request to server through XML Spy
i have created a webservice to jdbc scenario application and when i tried to check my webservice with XML Spy by giving inputs to wsdl file as SOAP Request to server, its showing the error like this:
<b><u>Http error : could not POST File</u></b>
It would be good if u explain step by step procedure how to solve the issue.
Thanks & Regards.,
Pushparaju.BThis is the error showing after clicking OK button after it showed the error
Http error : could not POST File
<b><?xml version="1.0"?>
<!-- see the documentation -->
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Body>
<SOAP:Fault>
<faultcode>SOAP:Server</faultcode>
<faultstring>Server Error</faultstring>
<detail>
<s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
<context>XIAdapter</context>
<code>DeliveryException</code>
<text><![CDATA[
com.sap.aii.af.ra.ms.api.DeliveryException: XIServer:PL_TIMEOUT:
at com.sap.aii.adapter.xi.ms.XIEventHandler.onTransmit(XIEventHandler.java:451)
at com.sap.aii.af.ra.ms.impl.core.queue.CallConsumer.onMessage(CallConsumer.java:125)
at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:831)
at com.sap.engine.frame.core.thread.Task.run(Task.java:64)
at com.sap.engine.core.thread.impl5.SingleThread.execute(SingleThread.java:79)
at com.sap.engine.core.thread.impl5.SingleThread.run(SingleThread.java:150)
]]></text>
</s:SystemError>
</detail>
</SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope></b>
yes i have the role of XIAPPLUSER
scenario has created by me and i have the authorization to enter into XI -
Calling SOAP Request from XML Spy
I have published PLSQL web service at Oracle 10g AS.
The web service runs at http://localhost:7201/reqProcess with processRequest as method being exposed.
This web service takes the string as input and return XMLTYPE as out parameter.
Now When I am trying to pass SOAP XML from XMLSPY to above url I am getting folloing errors.
1) I get http error: couldnot post the file /reqProcess/ on server 'localhost' (500)
2) I get SOAP Error as
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Client</faultcode>
<faultstring>No Deserializer found to deserialize a 'http://wsi.nat.zz.com/2005/06/StandardHeader/:m0:standardHeader' using encoding style 'null'. [java.lang.IllegalArgumentException]</faultstring>
<faultactor>/reqProcess</faultactor>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Please help..Hi Quwang ur help needed
My requirement ...
1) PLSQL as web service : I succesffuly deployed PLSQL Procedure as Web service at 10 10g. The PLSQL takes string (CLOB) as input convert that into XML and store in table and return XMLTYPE as output.
When I am accesing PLSQL WS using browser I am able to send string (basically XML format) as a input and able to receive the result back (SOAP envelop)
2)WS Invocation : After PLSQL WS published I need to pass the SOAP XML which is generated from XYX wsdl file to the PLSQL WS published above. For this req I was using XML Spy to test this. (In actual the clinet will be Sieble that will send SOAP XML to PLSQL WS).
Initially I was generating the SOAP XML from XYZ.wsdl and was directly sending that to PLSQL URL. I was getting error as I described initially.
Next I tried to generate the SOAP request from the PLSQL WS wsdl file and inside the parameter I am sending the SOAP XML as string to the IN paramater of PLSQL WS. This time I am getting some different errors. The first error is same as http error: couldnot post the file /balprocess/balprocess/operation?processRequest on server 'localhost' (500)
and second error is SOAP fault as follows
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring>java.sql.SQLException: ORA-31011: XML parsing failed
ORA-19202: Error occurred in XML processing
LPX-00210: expected '<' instead of '"'
Error at line 1
ORA-06512: at "SYS.XMLTYPE", line 0
ORA-06512: at "SCOTT.BAL_A_PROCESS", line 16
ORA-06512: at line 1
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:137)</faultstring>
<faultactor>/balprocess/balprocess</faultactor>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
For ur reference I am pasting the PLSQL WSDL file and the SOAP request xml that I am sending to PLSQL WS URL.
<?xml version="1.0" encoding="UTF-8"?>
<definitions name="bal_a_process"
targetNamespace="http://bal.request.process/bal_a_process.wsdl"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://bal.request.process/bal_a_process.wsdl"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd1="http://bal.request.process/bal_a_process.xsd" >
<documentation>
WSDL for Service: bal_a_process, generated by Oracle WSDL toolkit (version: 1.1)
</documentation>
<types>
<schema targetNamespace="http://bal.request.process/bal_a_process.xsd" xmlns:tns="http://bal.request.process/bal_a_process.xsd" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:dom="http://xmlns.oracle.com/2001/XMLSchema/DOM">
<complexType name="bal_request_process_bal_a_processUser_processRequest_Out">
<all>
<element name="outresponsexmlOut" type="dom:org.w3c.dom.DocumentFragment"/>
</all>
</complexType>
</schema>
</types>
<message name="processRequestOutput">
<part name="return" type="xsd1:bal_request_process_bal_a_processUser_processRequest_Out"/>
</message>
<message name="processRequestInput">
<part name="param0" type="xsd:string"/>
</message>
<portType name="bal_a_processPortType">
<operation name="processRequest">
<input message="tns:processRequestInput"/>
<output message="tns:processRequestOutput"/>
</operation>
</portType>
<binding name="bal_a_processBinding" type="tns:bal_a_processPortType">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>
<operation name="processRequest">
<soap:operation soapAction="urn:bal-request-process-bal_a_process/processRequest"/>
<input>
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:bal-request-process-bal_a_process"/>
</input>
<output>
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:bal-request-process-bal_a_process"/>
</output>
</operation>
</binding>
<service name="bal_a_process">
<port name="bal_a_processPort" binding="tns:bal_a_processBinding">
<soap:address location="http://localhost:7200/balprocess/balprocess"/>
</port>
</service>
</definitions>
Request I am sending to PLSLQ WS URL
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<processRequest xmlns:m="urn:bal-request-process-bal_a_process" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<param0 xsi:type="xsd:string"> "<a>"aaa"</a>" </param0>
</processRequest>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
I above SOAP request XML i m testing "<a>"aaa"</a>" as XML string. but this is also getting failed. In actual this will be SOAP XML request from some other XYZ wsdl file.
Quwang ur help needed urgently.
Regards -
Error while sending a soap request from XML SPY to a webservice in XI
Hi ,
I published a webservice om the XI end and testing it with consuming the WSDL file in XML SPY and sending a soap request from there.
I am getting the following error .
<b>com.sap.aii.af.mp.module.ModuleException: either no channelID specified or no channel found for the specified party, service, and channel name</b>, MessageServlet(Version $Id: //tc/xi/645_VAL_REL/src/_adapters/_soap/java/com/sap/aii/af/mp/soap/web/MessageServlet.java#4 $)
at com.sap.aii.af.mp.soap.web.MessageServlet.doPost(MessageServlet.java:380)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
Is this error due to the user authentication or due to some other issue .
Please do let me know soon .
Thanks a lot
NikhilHi Ricardo ,
I have the correct port now.
the url looks like
http://<host>:50000/XISOAPAdapter/MessageServlet?channel=:SIEBEL_DEV:SOAP_CUST
when I am testing it in the XML spy. and send a soap server request. I am getting the popup for user authentication . once i put my user id it gives me a error saying
<b>HTTP operation 'POST' could not be performed on URL
'/XISOAPAdapter/MessageServlet?channel=:SIEBEL_DEV:SOAP_CUST&version=3.0&Sender.Service=SIEBEL_DEV&Interface=http%3A%2F%2FOFCOM%2FUNIFY%2FCustomerMaster%5EMI_CUST' due to an error :
The connection to the server was terminated abnormally</b>
Any Idea as to why is such a error is coming
Thanks for the help
Nikhil -
How to test SOAP request using XML SPY
Hi,
1. I am new to WebServices concept, I have downloaded the wsdl file and now I need to test the SOAP requests using XML Spy. However, when I try to test the SOAP request generated by XML Spy I receive an error "Internal Error: Session is not available. Aborting" , How do I go ahead to generate the session, Is there a way I can provide the Username and password in the XML Spy to generate something like session.
2. The second problem that I am facing is when I import the WSDL in XML Spy and generate the SOAP request, for all the fields xml tags gets populated with "aaaaaaaaaaaa" kind of data through out. Am i doing something wrong ? Is there some step while creating a SOAP request that I am missing becasue of which the gibbrish data is being populated as default ?
Please Help !
Thanks .I got my SOAP Requests tested using SOAP UI .. However I am still looking for ways to test it using XML SPY.
In the SOAP UI Tool just do right click and select Add WS Security Token ..
Thanks :) -
XML Spy Error while testing the SOAP request
Hi,
I have generated a webservice from an XI scenario, I am trying to test the webservice through XML Spy.
I am getting the following error when I am sending the SOAP request.
Where do we specify the authentication information (user/pwd) in XML Spy.
It is not even poping any screen to enter username and password.
<b><i>HTTP Error: Could not post the file.</i></b>
http://banglore:50100/XISOAPAdapter/MessageServlet?Version=3.0&Channel=:New_BP:New_BPFileSender&version=3.0&Sender.Service=New_BP&Interface=http%3A%2F%2Fgemsconsult.com%2Ffile2rfc%5EZBP_OUTPUT
Appreciate your quick response
SriniHi,
Try using SOAP client
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9b16d790-0201-0010-4e9b-baa5f42830d8
Thanks,
Prakash -
When will we go for Altova xml spy testing in case of soap scenario ??
Hi
suppose I have a scenario like this: rfc-xi-soap. In this scenario if somebody say's testing the scenario using Altova xml spy means Altova xml spy will be acting as webservice ?? what is the ( or is there) significance of below URL in testing ??
http://<host>:<j2ee-port>/XISOAPAdapter/MessageServlet?
channel=<party>:<service>:<channel>
thanks
kumarHi Kumar
I am using XmlSpy for following reasons ::
*) To check & confirm the Request/Response/Fault Structure of the WebService.
*) To check the whether the WebService is UP or not, in case someone has reported an issue.
*) To develop the xsd structure for the WebServices, in case I am getting different structure after importing the WSDL in XI. Like in the case of this Weblog -->
/people/shabarish.vijayakumar/blog/2006/03/23/rfc--xi--webservice--a-complete-walkthrough-part-1
In this response structure is created, you can also use other tools for creating xsd.
- Lalit - -
SOAP Adapter without SOAP envelope sets contenttype to application/xml
Hi,
I wrote a adaptermodul for the SOAP adapter to create a SOAP:HEADER.
I disable the SOAP envelope in the communication channel.
Now I get a error from the WebService Provider because the SOAP Adapter sends with Content-Type application/xml and not text/xml. I set the content-type in the adapter module but it seens to not work.
How can I correct this ?
Regards,
GeraldHi
Simple answer is NO, it is not possible (without party/channel/ service etc to process the request)
but it is worth a try to check if the URL encoding works.. though I have not tried..
for example sending the hex value of the "?" - %3F%
URL is a generic topic, you can search that to get more information
(ex : http://www.blooberry.com/indexdot/html/topics/urlencoding.htm)
Regards
Vishnu -
Synchronous SOAP invoked in XML Spy for testing but no reponse recieved
Hello Experts,
I'm have tried to create a synchronous SOAP -> RFC scenario. I already setup my Message Interface as Outbound and Synchronous but when I'm testing it already in XML spy I only successfully sent the soap request and but got no response back. Also in SXMB_MONI I see my message being sent to SAP but it did not return any response. What have I possibly missed out during the setup. Hoping someone could help
Regards,
AlfredHi,
Below is my PI objects. Maybe this could help you analyze my problem.
IR Objects
Data Type:
ReqCustomerNo_DT
RespCustDetails_DT
Message Type:
ReqCustomerNo_MT -> using ReqCustomerNo_DT (Data Type)
RespCustDetails_MT -> using ReqCustomerNo_DT (RespCustDetails_DT)
Message Interface:
CDWS_MI -> synchronous/Outbound
Output Message : ReqCustomerNo_MT -> using ReqCustomerNo_DT (Data Type)
Input Message : RespCustDetails_MT -> using ReqCustomerNo_DT (RespCustDetails_DT)
Message Mapping:
Request_MM -> mapped ReqCustomerNo_MT with BAPI_CUSTOMER_GETDETAIL2(RFC)
Response_MM - mapped BAPI_CUSTOMER_GETDETAIL2.response (RFC) with RespCustDetails_MT
Interface Mapping:
CDWS_IM:
Source Interface -> CDWS_MI
Target Interface -> BAPI_CUSTOMER_GETDETAIL2
Messages:
Request: Mapping Program -> Request_MM
Source Message: ReqCustomerNo_MT
Target Message: BAPI_CUSTOMER_GETDETAIL2
Response: Mapping Program -> Response_MM
Source Message: BAPI_CUSTOMER_GETDETAIL2.Response
Target Message: RespCustDetails_MT
ID Objects
Sender Agreement:
Service: ZBSBACKEND
Interface: CDWS_MI
Interface Namespace: http://atp.amkor.co.ph/ppmodule/synch
Receiver Determination:
Service: ZBSBACKEND
Interface: CDWS_MI
Interface Namespace: http://atp.amkor.co.ph/ppmodule/synch
Configured Receivers: ZBSBACKEND
Interface Determination:
Inbound Interface : BAPI_CUSTOMER_GETDETAIL2
Interface Mapping : CDWS_IM
Receiver Agreement:
Sender
Service: ZBSBACKEND
Receiver
Service: ZBSBACKEND
Interface: BAPI_CUSTOMER_GETDETAIL2
Interface namespace: urn:sap-com:document:sap:rfc:functions
Regards,
Alfred -
Soap to rfc error when testing through xml spy
Dear All,
I have a scenario soap-to-rfc.I have created a WSDL using the url as :
http://<myhost>:<port>/XISOAPAdapter/MessageServlet?channel=:BS_Legacy:CC_SOAP_Sender
I am getting an error as mentioned below when i tried to test it throug altova xml spy.
HTTP error: could not POSt file '/XISOAPAdapter/MessageServlet?channel=:BS_Legacy:CC_SOAP_Sender' on server 'host:port' (407).
I have gone through all the related threads which are already there in forum but still couldn't find what's going wrong.
I modified soap:address tag in wsdl
<soap:address location="http://covmdvpi01.mhril.com:50000/XISOAPAdapter/MessageServlet?channel=:BS_Legacy:CC_SOAP_Sender"
Please suggest.
Regards
KumarHi ,
Thanx for quick reply.
I am using 7.3 and created wsdl in ID>Tools->Disply wsdl
my sender business system : BS_Legacy
sender channel : CC_SOAP_Sender
my url
http://<host>:50000/XISOAPAdapter/MessageServlet?channel=:BS_Legacy:CC_SOAP_Sender
i have given my host name in the place of host.
my scenario is synchronous and given qos as BE.
Use this URL in soapui and check what you get...do u mean that u want me to test using soap ui?
if so i have tested it in soapui also
new soap ui project-->project name and Initial wsdl/wadl(i have selected wsdl file from system location where i saved it) ...created...given input parmeters then i clicked on Submit Request to Endpoint URL button.
still couln'd see response.
you can see below response what i've got in soapui
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Error Report</title>
<style>
td {font-family : Arial, Tahoma, Helvetica, sans-serif; font-size : 14px;}
A:link
A:visited
A:active
</style>
</head>
<body marginwidth="0" marginheight="0" leftmargin="0" topmargin="0" rightmargin="0">
<table width="100%" cellspacing="0" cellpadding="0" border="0" align="left" height="75">
<tr bgcolor="#FFFFFF">
<td align="left" colspan="2" height="48"><font face="Arial, Verdana, Helvetica" size="4" color="#666666"><b> 401 Unauthorized</b></font></td>
</tr>
<tr bgcolor="#3F73A3">
<td height="23" width="84"><img width=1 height=1 border=0 alt=""></td>
<td height="23"><img width=1 height=1 border=0 alt=""></td>
<td align="right" height="23"><font face="Arial, Verdana, Helvetica" size="2" color="#FFFFFF"><b>SAP NetWeaver Application Server </b></font></td>
</tr>
<tr bgcolor="#9DCDFD">
<td height="4" colspan="3"><img width=1 height=1 border=0 alt=""></td>
</tr>
</table>
<br><br><br><br><br><br>
<p><font face="Arial, Verdana, Helvetica" size="3" color="#000000"><b> Error: Unauthorized</b></font></p>
<p><font face="Arial, Verdana, Helvetica" size="2" color="#000000"><b> <a href="https://wiki.sdn.sap.com/wiki/x/wIN3Cw">SAP Technology Troubleshooting Guide</a></b></font></p>
<p><font face="Arial, Verdana, Helvetica" size="2" color="#000000"><table>
<tr>
<td valign="top"><b> Details:</b></td>
<td valign="top"><PRE>No details available.</PRE></td>
</tr>
</table></font></p>
</body>
</html>
Thanks
Kumar -
SOAP envelope XML body extraction
hello , I'm new in the 'XML-world' and also new on this forum but i have a question.
My function :
create or replace
FUNCTION DHL_SOAP_RESPONSE_XMLTYPE RETURN XMLType AS
SOAP_RESPONSE constant varchar2(32767) :=
'<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<rateresp:RateResponse xmlns:rateresp="http://scxgxtt.phx-dc.dhl.com/euExpressRateBook/RateMsgResponse">
<Provider code="DHL">
<Notification code="0">
<Message/>
</Notification>
<Service type="C">
<TotalNet>
<Currency>EUR</Currency>
<Amount>17.28</Amount>
</TotalNet>
<Charges>
<Currency>EUR</Currency>
<Charge>
<ChargeType>MEDICAL EXPRESS</ChargeType>
<ChargeAmount>14.77</ChargeAmount>
</Charge>
<Charge>
<ChargeType>FUEL SURCHARGE</ChargeType>
<ChargeAmount>2.51</ChargeAmount>
</Charge>
</Charges>
<DeliveryTime>2013-02-06T12:00:00</DeliveryTime>
<CutoffTime>2013-02-05T20:30:00</CutoffTime>
<NextBusinessDayInd>N</NextBusinessDayInd>
</Service>
<Service type="T">
<TotalNet>
<Currency>EUR</Currency>
<Amount>17.28</Amount>
</TotalNet>
<Charges>
<Currency>EUR</Currency>
<Charge>
<ChargeType>EXPRESS 12:00</ChargeType>
<ChargeAmount>14.77</ChargeAmount>
</Charge>
<Charge>
<ChargeType>FUEL SURCHARGE</ChargeType>
<ChargeAmount>2.51</ChargeAmount>
</Charge>
</Charges>
<DeliveryTime>2013-02-06T12:00:00</DeliveryTime>
<CutoffTime>2013-02-05T20:30:00</CutoffTime>
<NextBusinessDayInd>N</NextBusinessDayInd>
</Service>
<Service type="G">
<TotalNet>
<Currency/>
<Amount>0.00</Amount>
</TotalNet>
<DeliveryTime>2013-02-06T23:59:00</DeliveryTime>
<CutoffTime>2013-02-05T20:30:00</CutoffTime>
<NextBusinessDayInd>N</NextBusinessDayInd>
</Service>
<Service type="N">
<TotalNet>
<Currency>EUR</Currency>
<Amount>13.69</Amount>
</TotalNet>
<Charges>
<Currency>EUR</Currency>
<Charge>
<ChargeType>DOMESTIC EXPRESS</ChargeType>
<ChargeAmount>11.70</ChargeAmount>
</Charge>
<Charge>
<ChargeType>FUEL SURCHARGE</ChargeType>
<ChargeAmount>1.99</ChargeAmount>
</Charge>
</Charges>
<DeliveryTime>2013-02-06T23:59:00</DeliveryTime>
<CutoffTime>2013-02-05T20:30:00</CutoffTime>
<NextBusinessDayInd>N</NextBusinessDayInd>
</Service>
<Service type="9">
<TotalNet>
<Currency/>
<Amount>0.00</Amount>
</TotalNet>
<DeliveryTime>2013-02-07T23:59:00</DeliveryTime>
<CutoffTime>2013-02-05T16:30:00</CutoffTime>
<NextBusinessDayInd>N</NextBusinessDayInd>
</Service>
</Provider>
</rateresp:RateResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
BEGIN
RETURN XMLType(SOAP_RESPONSE);
END;
Now what I want is extract the body of the respons with a select .
Can someone help me because I don't understand this ?
I work with the Oracle Database XE 11g.
SQL developer.
Thanks alreadyWelcome to the forums.
As a tip for future posts [url https://forums.oracle.com/forums/thread.jspa?threadID=2174552#9360002]2. How do I ask a question on the forums?
That said, a basic example that pulls the contents of the body out is
declare
l_ws_rsp XMLTYPE;
l_body_rsp XMLTYPE;
begin
-- Retrieving the SOAP message
l_ws_rsp := DHL_SOAP_RESPONSE_XMLTYPE;
-- Extracting out the body
SELECT xt.body_xml
INTO l_body_rsp
FROM XMLTable(XMLNamespaces('http://schemas.xmlsoap.org/soap/envelope/' AS "SOAP-ENV"),
'/SOAP-ENV:Envelope/SOAP-ENV:Body/*'
PASSING l_ws_rsp
COLUMNS
body_xml XMLTYPE PATH '.') xt;
dbms_output.put_line(l_body_rsp.getClobVal());
end;If you Google
XMLTable soap site:forums.oracle.com
you can find plenty of examples on these forums regarding how to parse a web service response.
The bigger question is, what are you going to do with the data in the response. As the example above alludes too, you can actually parse the entire WS response with one SQL statement and return the results as one or more rows. Will you be performing PL/SQL logic on the returned results or will you simply be INSERTing them into the database for something else to use? -
Hi there,
Well, it is mysterious - not to say frightning !
When I first start my tomcat I get an Exception like:; Could not load com.sun.xml.messaging.saaj.soap.Envelope
The second time it runs well. No Exception about classloading. And the app is nice.
Hmm, why ? Can�t find out.
I think that Exception has to have some relation to jars and where they are placed.
According to the JAXWS-page I placed:
jaxb-api.jar, jaxws-api.jar, jsr173_api.jar, saaj-api.jar
in my %JRE_HOME%\lib\endorsed\
so far so good !
The rest of the needed jars to run JAX-WS Webservices are in my WEB-INF/lib FOLDER
activation.jar and so on
Any Ideas ?
Here is the Exception I get when I invoke the Service
INFO: Illegal access: this web application instance has been stopped already. Could not load com.sun.xml.messaging.saaj.soap.Envelope. The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1238)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at com.sun.xml.messaging.saaj.soap.ver1_1.Message1_1Impl.getSOAPPart(Message1_1Impl.java:78)
at com.sun.xml.ws.message.AbstractMessageImpl.readAsSOAPMessage(AbstractMessageImpl.java:177)
at com.sun.xml.ws.client.dispatch.SOAPMessageDispatch.toReturnValue(SOAPMessageDispatch.java:93)
at com.sun.xml.ws.client.dispatch.SOAPMessageDispatch.toReturnValue(SOAPMessageDispatch.java:57)
at com.sun.xml.ws.client.dispatch.DispatchImpl.doInvoke(DispatchImpl.java:188)
at com.sun.xml.ws.client.dispatch.DispatchImpl.invoke(DispatchImpl.java:192)
at idff.server.service.ArtifactResolver.resolve(ArtifactResolver.java:101)
at servlets.AssertionConsumerServlet.doPost(AssertionConsumerServlet.java:149)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)
09.08.2007 14:40:12 org.apache.catalina.core.StandardWrapperValve invoke
SCHWERWIEGEND: Servlet.service() for servlet AssertionConsumerServlet threw exception
java.lang.NoClassDefFoundError: com/sun/xml/messaging/saaj/soap/Envelope
at com.sun.xml.messaging.saaj.soap.ver1_1.Message1_1Impl.getSOAPPart(Message1_1Impl.java:78)
at com.sun.xml.ws.message.AbstractMessageImpl.readAsSOAPMessage(AbstractMessageImpl.java:177)
at com.sun.xml.ws.client.dispatch.SOAPMessageDispatch.toReturnValue(SOAPMessageDispatch.java:93)
at com.sun.xml.ws.client.dispatch.SOAPMessageDispatch.toReturnValue(SOAPMessageDispatch.java:57)
at com.sun.xml.ws.client.dispatch.DispatchImpl.doInvoke(DispatchImpl.java:188)
at com.sun.xml.ws.client.dispatch.DispatchImpl.invoke(DispatchImpl.java:192)
at idff.server.service.ArtifactResolver.resolve(ArtifactResolver.java:101)
at servlets.AssertionConsumerServlet.doPost(AssertionConsumerServlet.java:149)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)
Listening for transport dt_shmem at address: bundled_tomcat
Anybody help, please !First, thanks for your reply jitu.
I don�t get this exception anymore.
Well, your hint was quite right, so I think I may give you the duke stars.
I found out that putting the jars into the shared/lib don�t work. Maybe it is because I am running 3 tomcat instances at the same time.
I put all the Jax-ws libs into the tomcat_home/common/lib directory.
And left the endorsed libs in the java endoresed directory.
putting the endorsed libs in the tomcat_home/common/lib/endorsed may also work.
regards and thanks,
footman
Maybe you are looking for
-
I recently upgraded itunes. Now when listening to my library there is music from all authorized computers in my house. if I try to delete a song it is gone from everyones library in the house. I just want to listen to my music not my kids stuff.
-
I have quite a few songs/CDs that I don't have album artwork for. I've run across the "Get Album Artwork" feature in iTunes, but I want to know if it's free. I have an account and I just don't want to see any unexpected charges on my credit card. Are
-
hey,i forgot my login password,so i changed the password by using terminal command(reset password).now i have new user name with new password, but i can't find my data which i have saved on mac.the storage is showing data used and free space on the
-
Using ALT key in list view doesn't quite work like it used to...
I haven't used this feature since OS9 so please excuse my ignorance! In OS9 when viewing files in Finder in List view, one used to be able to open subfolders by holding down the ALT key while clicking the folder triangle. Close the main folder and AL
-
SRM : Offline approval process
Hi All, I'm working on SRM 5.0 . We want to send mail to users outlook/blackberry for their approval. We have scheduled a report RBBP_NOTIFICATION_OFFAPP periodically. The users do get mail in their inbox. But when they reply to the mail the workit