Problem with SOAP 1.1 Format
Hello everyone.
I am use SAP XI SOAP 1.1 with WS-Security. At the end of the header of the message the tag <wsse:BinarySecurityToken> is repeating twice which causes a problem from the other receiving SOAP adapter (webMethods). Anyone knows how to fix this?
Sample:
</ds:KeyInfo>
</ds:Signature>
<wsse:BinarySecurityToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-
wss-wssecurity-utility-1.0.xsd" wsu:Id="sap-1" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-
200401-wss-soap-message-security-1.0#Base64Binary">MIIFSjCCBDKgAw
</wsse:BinarySecurityToken>
<wsse:BinarySecurityToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-
wss-wssecurity-utility-1.0.xsd" wsu:Id="sap-1" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-
200401-wss-x509-token-profile-1.0#X509v3" EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-
200401-wss-soap-message-security-1.0#Base64Binary">MIIFSjCCBDKgAw
</wsse:BinarySecurityToken>
</wsse:Security>
</SOAP:Header>
Edited by: Baheej Awamy on Apr 13, 2009 9:09 AM
Hi Prateek,
I just receive the same note from SAP Active Global Support,
I am going to apply this note and hopefully resolve the issue.
Similar Messages
-
Another problem with SOAP sender
I have another problem with SOAP scenario in a different environment (PI 7.0) from my earlier post.
Scenario:
Soap Sender -> PI -> Soap Receiver
Following steps from GoogleSearch SOAP scenario in the SAP How-to Guide for SAP NetWeaver '04 entitled: "How To... Use the XI 3.0 SOAP Adapter" version 1.00 - March 2006.
I have loaded in the api.google.com/GoogleSearch.wsdl file as an External definition and created the SOAP receiver as described in the How-to guide. It takes a doGoogleSearch as input and sends back a doGoogleSearchResponse (Sync Call).
Note that the GoogleSearch.wsdl contains a complex type ResultElementArray that refers to ResultElement\[\], and a DirectoryCategoryArray that refers to DirectoryCategory\[\]. The ResultElement and DirectoryCategory types are defined in the GoogleSearch.wsdl file.
Problem One:
The generated WSDL for the SOAP sender contains the ResultElementArray and DirectoryCategoryArray types but it DOES NOT contain the required ResultElement and DirectoryCategory types. XML Spy complains that this WSDL is not valid because the type ResultElement\[\] is not defined.
Problem Two:
I generate a SOAP message in XML Spy, provide values for the doGoogleSearch fields, and send. In SXMB_MONI, the SOAP sender payload contains only the <key> value from the doGoogleSearch message body, i.e. <part name="key" type="xsd:string" />
The other doGoogleSearch fields seem to be missing, i.e.
<part name="q" type="xsd:string" />
<part name="start" type="xsd:int" />
<part name="maxResults" type="xsd:int" />
<part name="filter" type="xsd:boolean" />
<part name="restrict" type="xsd:string" />
<part name="safeSearch" type="xsd:boolean" />
<part name="lr" type="xsd:string" />
<part name="ie" type="xsd:string" />
<part name="oe" type="xsd:string" />
Does anyone know why:
(1) PI/XI seems to leave out the ResultElement and DirectoryCategory types from the SOAP sender service WSDL file?
(2) The doGoogleSearch message seen in SXMB_MONI contains only the first <key> field, and not the other fields?
Thanks for any help with this.I have another problem with SOAP scenario in a different environment (PI 7.0) from my earlier post.
Scenario:
Soap Sender -> PI -> Soap Receiver
Following steps from GoogleSearch SOAP scenario in the SAP How-to Guide for SAP NetWeaver '04 entitled: "How To... Use the XI 3.0 SOAP Adapter" version 1.00 - March 2006.
I have loaded in the api.google.com/GoogleSearch.wsdl file as an External definition and created the SOAP receiver as described in the How-to guide. It takes a doGoogleSearch as input and sends back a doGoogleSearchResponse (Sync Call).
Note that the GoogleSearch.wsdl contains a complex type ResultElementArray that refers to ResultElement\[\], and a DirectoryCategoryArray that refers to DirectoryCategory\[\]. The ResultElement and DirectoryCategory types are defined in the GoogleSearch.wsdl file.
Problem One:
The generated WSDL for the SOAP sender contains the ResultElementArray and DirectoryCategoryArray types but it DOES NOT contain the required ResultElement and DirectoryCategory types. XML Spy complains that this WSDL is not valid because the type ResultElement\[\] is not defined.
Problem Two:
I generate a SOAP message in XML Spy, provide values for the doGoogleSearch fields, and send. In SXMB_MONI, the SOAP sender payload contains only the <key> value from the doGoogleSearch message body, i.e. <part name="key" type="xsd:string" />
The other doGoogleSearch fields seem to be missing, i.e.
<part name="q" type="xsd:string" />
<part name="start" type="xsd:int" />
<part name="maxResults" type="xsd:int" />
<part name="filter" type="xsd:boolean" />
<part name="restrict" type="xsd:string" />
<part name="safeSearch" type="xsd:boolean" />
<part name="lr" type="xsd:string" />
<part name="ie" type="xsd:string" />
<part name="oe" type="xsd:string" />
Does anyone know why:
(1) PI/XI seems to leave out the ResultElement and DirectoryCategory types from the SOAP sender service WSDL file?
(2) The doGoogleSearch message seen in SXMB_MONI contains only the first <key> field, and not the other fields?
Thanks for any help with this. -
WLS 7.0 sp2 - Servlet Problems with SOAP messages
I'm using Weblogic 7.0 SP2 and trying to create a Servlet to receive SOAP wrapped
XML messages. I'm getting the following error. Is this a problem with WLS7.0sp2's
support of JAXM? The System.out.println's indicate I have successfully received
the incoming SOAP request and then successfully formatted the SOAP response, but
upon returning saving the response it appears to blow up. Does anyone have any
suggestions?
I need to do the following in a servlet:
- receive an incoming SOAP request with an embedded XML message
- perform some processing
- return a SOAP response with an embedded XML message
Should I be using JAXM? Or can I do this same task easily with JAX-RPC?
<Feb 24, 2004 4:10:42 PM AST> <Error> <HTTP> <101017> <[ServletContext(id=260434
7,name=isd.war,context-path=)] Root cause of ServletException
java.lang.Error: NYI
at weblogic.webservice.core.soap.SOAPMessageImpl.saveRequired(SOAPMessag
eImpl.java:360)
at javax.xml.messaging.JAXMServlet.doPost(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run
(ServletStubImpl.java:1058)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:401)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:306)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationActio
n.run(WebAppServletContext.java:5445)
at weblogic.security.service.SecurityServiceManager.runAs(SecurityServic
eManager.java:780)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
rvletContext.java:3105)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
pl.java:2588)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
>
I've stripped the code down so that all it does is verifies the incoming SOAP/XML
request and creates a hard-coded response... be gentle... I'm a novice at this
import javax.xml.soap.*;
import javax.servlet.*;
import javax.servlet.http.*;
// import javax.xml.transform.*;
import java.util.*;
import java.io.*;
public class RegisterServlet extends HttpServlet
static MessageFactory fac = null;
static
try
fac = MessageFactory.newInstance();
catch (Exception ex)
ex.printStackTrace();
public void init(ServletConfig servletConfig) throws ServletException
super.init(servletConfig);
public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException,
IOException
try
System.out.println("** Note: doPost() Entering req = " + req);
// Get all the headers from the HTTP request
MimeHeaders headers = getHeaders(req);
// Get the body of the HTTP request
InputStream is = req.getInputStream();
// Now internalize the contents of a HTTP request
// and create a SOAPMessage
SOAPMessage msg = fac.createMessage(headers, is);
System.out.println("** Note: doPost() Step A");
SOAPMessage reply = null;
reply = onMessage(msg);
System.out.println("** Note: doPost() Step B reply = " + reply);
if (reply != null)
* Need to call saveChanges because we're
* going to use the MimeHeaders to set HTTP
* response information. These MimeHeaders
* are generated as part of the save.
if (reply.saveRequired())
System.out.println("** Note: doPost() Step C reply.saveRequired()");
reply.saveChanges();
resp.setStatus(HttpServletResponse.SC_OK);
putHeaders(reply.getMimeHeaders(), resp);
// Write out the message on the response stream
OutputStream os = resp.getOutputStream();
System.out.println("** Note: doPost() Step D os = " + os);
reply.writeTo(os);
os.flush();
else
resp.setStatus(HttpServletResponse.SC_NO_CONTENT);
catch (Exception ex)
throw new ServletException("** Error: SAAJ POST failed: " + ex.getMessage());
static MimeHeaders getHeaders(HttpServletRequest req)
Enumeration enum = req.getHeaderNames();
MimeHeaders headers = new MimeHeaders();
while (enum.hasMoreElements())
String headerName = (String)enum.nextElement();
String headerValue = req.getHeader(headerName);
StringTokenizer values =
new StringTokenizer(headerValue, ",");
while (values.hasMoreTokens())
headers.addHeader(headerName,
values.nextToken().trim());
return headers;
static void putHeaders(MimeHeaders headers, HttpServletResponse res)
Iterator it = headers.getAllHeaders();
while (it.hasNext())
MimeHeader header = (MimeHeader)it.next();
String[] values = headers.getHeader(header.getName());
if (values.length == 1)
res.setHeader(header.getName(),
header.getValue());
else
StringBuffer concat = new StringBuffer();
int i = 0;
while (i < values.length)
if (i != 0)
concat.append(',');
concat.append(values[i++]);
res.setHeader(header.getName(), concat.toString());
// This is the application code for handling the message.
public SOAPMessage onMessage(SOAPMessage message)
SOAPMessage replymsg = null;
try
System.out.println("** Note: OnMessage() Entering msg = " + message);
//Extract the ComputerPart element from request message and add to reply SOAP
message.
SOAPEnvelope reqse = message.getSOAPPart().getEnvelope();
SOAPBody reqsb = reqse.getBody();
//System.out.println("** Note: OnMessage() Step B");
System.out.println("** Note: OnMessage () Step A Soap Request Message Body = "
+ reqsb);
//Create a reply mesage from the msgFactory of JAXMServlet
System.out.println("** Note: OnMessage () Step B");
replymsg = fac.createMessage();
SOAPPart sp = replymsg.getSOAPPart();
SOAPEnvelope se = sp.getEnvelope();
SOAPBody sb = se.getBody();
System.out.println("** Note: OnMessage () Step C Soap Reply Before Message Body
= " + sb);
se.getBody().addBodyElement(se.createName("RegisterResponse")).addChildElement(se.createName("ErrorCode")).addTextNode("000");
System.out.println("** Note: OnMessage () Step D Soap Reply After Message Body
= " + sb);
replymsg.saveChanges();
System.out.println("** Note: OnMessage() Exiting replymsg = " + (replymsg));
catch (Exception ex)
ex.printStackTrace();
return replymsg;
Michael,
I got the same error on WLS8.1/Win2K professional and apache FOP (old version).
After digging into the WLS code and FOP(old version). i found the conflict happens
on
the "org.xml.sax.parser" system property. In WLS code, they hard coded like the
following when startup weblogic server:
System.setProperty("org.xml.sax.parser", "weblogic.xml.jaxp.RegistryParser");
But the FOP code try to use the "org.xml.sax.parser" system property to find the
sax parser then conlict happens.
Here is the response from BEA support :
"I consulted with our developers regarding the question of whether we can change
the hard-coded value for the java system property: org.xml.sax.parser by using
a configuration parameter and I found that unfortunately there is no specific
setting to change the value. As you had mentioned in your note the org.xml.sax.parser
system property can be changed programmatically in your application code."
I solve my problem by using newer apache FOP (it never use the system property:org.xml.sax.parser
any more) and XML Registy for WLS8.1.
Good luck.
David Liu
Point2 Technologies Inc.
"p_michael" <[email protected]> wrote:
>
Help.
When we migrated from WLS 6.1 to WLS 7.0 SP2 when encountered a problem
with XML
parsing that did not previously exist.
We get the error "weblogic.xml.jaxp.RegistryParser is not a SAX driver".
What does this mean? And, what should we do about it.
p_michael -
XSLT Problem with soap namespace
Hi there,
I have a problem transforming an XML doc with soap elements, using XSLT (Xalan).
Here's the input:
<?xml version = "1.0" encoding = "ISO-8859-1"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://www.ean.nl">
<testthis>123456</testthis>
</soap:Envelope>and here's the XSL:
<?xml version="1.0"?>
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" exclude-result-prefixes="soap">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="soap:Envelope">
<Orders>
<H01>
<xsl:value-of select="testthis"/>
</H01>
</Orders>
</xsl:template>
</xsl:transform>I expect to get something like:
<?xml version="1.0" encoding="UTF-8"?>
<Orders>
<H01>123456<H01>
<Orders>But instead I get:
<?xml version="1.0" encoding="UTF-8"?>
<Orders>
<H01/>
</Orders>I've tried a lot of things and I'm probably overseeing something stupid, but I'm stuck.
It seems as if anything without soap: namespace cannot be processed by my XSL (when I add it in the input XML and XSL it works).
Any help would be greatly appreciated.
Greetings,
ErikYes, I found it!
The following XSL for the same XML doc works!
<?xml version="1.0"?>
<xsl:transform xmlns:ean="http://www.ean.nl" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" exclude-result-prefixes="soap">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="soap:Envelope">
<Orders>
<H01>
<xsl:value-of select="ean:testthis"/>
</H01>
</Orders>
</xsl:template>
</xsl:transform>Thanks, you pointed me in the right direction :-)
Erik -
I'm having these weird problems with newlines. I'm sending \n in a message because I have a multi lined message i want parsed. Axis is receiving the message and throwing exceptions. I printed out the line it's parsing and it's giving this error that it can't parse:
'2.5
PID'
The parser is not supposed to parse past the \n but it seems to be trying to. I've tested this without webservices and it works fine, adding webservices into the equation gives me these errors.Additional info: The problem is the same in the entire environment here (PI DEV, QAS and PRD) and on another PI machine.
So I doubt very much if it's cache related.
Edit: This is the 'application error':
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- XML Validation Inbound Channel Response
-->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>Application</SAP:Category>
<SAP:Code area="UNKNOWN">APPLICATION_ERROR</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText>application fault</SAP:AdditionalText>
<SAP:ApplicationFaultMessage namespace="http://xml.apache.org/axis/">hostname</SAP:ApplicationFaultMessage>
<SAP:Stack />
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
Edited by: Frederik-Jan Roose on Dec 7, 2009 11:11 AM -
Hi,
I have a SOAP servlet, but It is the fist SOAPServlet as I use.
I think that the vsd that developper of SOAP servlet provide is ok.
But, I do not understand which is the XML that I could provide to it.
It is posible that I have a problem with XML, SCHEMA and SOAP.
Could you help me , I attach the VSD, but I need a tool or a sample file in order to call my SOAP servlet.
<xsd:schema xmlns:xsd="http://schemas.xmlsoap.org/soap/encoding">
<xsd:complexType name="STD_TRN1_I_PARM_V_TYPE">
<xsd:sequence>
<xsd:element name="COD_TX_DI">
<xsd:simpleType base="xsd:string">
<maxLength value="00004"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ID_INTERNO_TERM_TN">
<xsd:simpleType base="xsd:string">
<maxLength value="00008"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ID_EMPL_AUT">
<xsd:simpleType base="xsd:string">
<maxLength value="00008"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NUM_SEC">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00007"/>
<fractionDigits value="00"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="COD_TX">
<xsd:simpleType base="xsd:string">
<maxLength value="00008"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TR_CONS_SALDOS_VISTA_EVT_Y_TYPE">
<xsd:sequence>
<xsd:element name="COD_CENT_UO">
<xsd:simpleType base="xsd:string">
<maxLength value="00004"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NUM_SEC_AC">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00010"/>
<fractionDigits value="00"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="COD_NRBE_EN">
<xsd:simpleType base="xsd:string">
<maxLength value="00004"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="STD_TRN1_O_PARM_V_TYPE">
<xsd:sequence>
<xsd:element name="HORA_OPRCN" type="xsd:time"/>
<xsd:element name="FECHA_OPRCN" type="xsd:date"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_DISPO_V_TYPE">
<xsd:sequence>
<xsd:element name="STD_DEC_15Y2">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00015"/>
<fractionDigits value="02"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_SDO_CONTABLE_V_TYPE">
<xsd:sequence>
<xsd:element name="IMP_SDO">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00015"/>
<fractionDigits value="02"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_SDO_RETEN_V_TYPE">
<xsd:sequence>
<xsd:element name="IMP_SDO">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00015"/>
<fractionDigits value="02"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_SDO_AUT_V_TYPE">
<xsd:sequence>
<xsd:element name="IMP_SDO">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00015"/>
<fractionDigits value="02"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_SDO_INCID_V_TYPE">
<xsd:sequence>
<xsd:element name="IMP_SDO">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00015"/>
<fractionDigits value="02"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_BLOQUEOS_V_TYPE">
<xsd:sequence>
<xsd:element name="STD_CHAR_01">
<xsd:simpleType base="xsd:string">
<maxLength value="00001"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_SDO_CONECT_V_TYPE">
<xsd:sequence>
<xsd:element name="IMP_SDO">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00015"/>
<fractionDigits value="02"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="COD_IDIOMA_V_TYPE">
<xsd:sequence>
<xsd:element name="COD_IDIOMA">
<xsd:simpleType base="xsd:string">
<maxLength value="00002"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_ANOTACIONES_V_TYPE">
<xsd:sequence>
<xsd:element name="STD_CHAR_01">
<xsd:simpleType base="xsd:string">
<maxLength value="00001"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TR_CONS_SALDOS_VISTA_EVT_Z_TYPE">
<xsd:sequence>
<xsd:element name="COD_NUMRCO_MONEDA">
<xsd:simpleType base="xsd:string">
<maxLength value="00003"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PSV_DISPO_V" type="PSV_DISPO_V_TYPE"/>
<xsd:element name="PSV_SDO_CONTABLE_V" type="PSV_SDO_CONTABLE_V_TYPE"/>
<xsd:element name="PSV_SDO_RETEN_V" type="PSV_SDO_RETEN_V_TYPE"/>
<xsd:element name="PSV_SDO_AUT_V" type="PSV_SDO_AUT_V_TYPE"/>
<xsd:element name="PSV_SDO_INCID_V" type="PSV_SDO_INCID_V_TYPE"/>
<xsd:element name="PSV_BLOQUEOS_V" type="PSV_BLOQUEOS_V_TYPE"/>
<xsd:element name="PSV_SDO_CONECT_V" type="PSV_SDO_CONECT_V_TYPE"/>
<xsd:element name="COD_CSB_OF">
<xsd:simpleType base="xsd:string">
<maxLength value="00004"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NOMB_50">
<xsd:simpleType base="xsd:string">
<maxLength value="00050"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="COD_INTERNO_UO">
<xsd:simpleType base="xsd:string">
<maxLength value="00004"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="COD_IDIOMA_V" type="COD_IDIOMA_V_TYPE"/>
<xsd:element name="PSV_ANOTACIONES_V" type="PSV_ANOTACIONES_V_TYPE"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="STD_TRN1_MSJ_PARM_V_TYPE">
<xsd:sequence>
<xsd:element name="TEXT_ARG1">
<xsd:simpleType base="xsd:string">
<maxLength value="00018"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="TEXT_CODE" type="xsd:int"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TR_CONS_SALDOS_VISTA_TRN1">
<xsd:complexType name="TR_CONS_SALDOS_VISTA_TRN1_O_TYPE">
<xsd:sequence>
<xsd:element name="RTRN_CD" type="xsd:int"/>
<xsd:element name="STD_TRN1_O_PARM_V" type="STD_TRN1_O_PARM_V_TYPE"/>
<xsd:element name="TR_CONS_SALDOS_VISTA_EVT_Z" type="TR_CONS_SALDOS_VISTA_EVT_Z_TYPE"/>
<xsd:complexType name="STD_TRN1_MSJ_PARM_V_OCCURS">
<xsd:element name="STD_TRN1_MSJ_PARM_V" type="STD_TRN1_MSJ_PARM_V_TYPE" maxOccurs="000005"/>
</xsd:complexType>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TR_CONS_SALDOS_VISTA_TRN1_I_TYPE">
<xsd:sequence>
<xsd:element name="STD_TRN1_I_PARM_V" type="STD_TRN1_I_PARM_V_TYPE"/>
<xsd:element name="TR_CONS_SALDOS_VISTA_EVT_Y" type="TR_CONS_SALDOS_VISTA_EVT_Y_TYPE"/>
</xsd:sequence>
</xsd:complexType>
</xsd:complexType>
</xsd:schema>Thanks youHi,
I have a SOAP servlet, but It is the fist SOAPServlet as I use.
I think that the vsd that developper of SOAP servlet provide is ok.
But, I do not understand which is the XML that I could provide to it.
It is posible that I have a problem with XML, SCHEMA and SOAP.
Could you help me , I attach the VSD, but I need a tool or a sample file in order to call my SOAP servlet.
<xsd:schema xmlns:xsd="http://schemas.xmlsoap.org/soap/encoding">
<xsd:complexType name="STD_TRN1_I_PARM_V_TYPE">
<xsd:sequence>
<xsd:element name="COD_TX_DI">
<xsd:simpleType base="xsd:string">
<maxLength value="00004"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ID_INTERNO_TERM_TN">
<xsd:simpleType base="xsd:string">
<maxLength value="00008"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ID_EMPL_AUT">
<xsd:simpleType base="xsd:string">
<maxLength value="00008"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NUM_SEC">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00007"/>
<fractionDigits value="00"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="COD_TX">
<xsd:simpleType base="xsd:string">
<maxLength value="00008"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TR_CONS_SALDOS_VISTA_EVT_Y_TYPE">
<xsd:sequence>
<xsd:element name="COD_CENT_UO">
<xsd:simpleType base="xsd:string">
<maxLength value="00004"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NUM_SEC_AC">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00010"/>
<fractionDigits value="00"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="COD_NRBE_EN">
<xsd:simpleType base="xsd:string">
<maxLength value="00004"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="STD_TRN1_O_PARM_V_TYPE">
<xsd:sequence>
<xsd:element name="HORA_OPRCN" type="xsd:time"/>
<xsd:element name="FECHA_OPRCN" type="xsd:date"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_DISPO_V_TYPE">
<xsd:sequence>
<xsd:element name="STD_DEC_15Y2">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00015"/>
<fractionDigits value="02"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_SDO_CONTABLE_V_TYPE">
<xsd:sequence>
<xsd:element name="IMP_SDO">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00015"/>
<fractionDigits value="02"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_SDO_RETEN_V_TYPE">
<xsd:sequence>
<xsd:element name="IMP_SDO">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00015"/>
<fractionDigits value="02"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_SDO_AUT_V_TYPE">
<xsd:sequence>
<xsd:element name="IMP_SDO">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00015"/>
<fractionDigits value="02"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_SDO_INCID_V_TYPE">
<xsd:sequence>
<xsd:element name="IMP_SDO">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00015"/>
<fractionDigits value="02"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_BLOQUEOS_V_TYPE">
<xsd:sequence>
<xsd:element name="STD_CHAR_01">
<xsd:simpleType base="xsd:string">
<maxLength value="00001"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_SDO_CONECT_V_TYPE">
<xsd:sequence>
<xsd:element name="IMP_SDO">
<xsd:simpleType base="xsd:decimal">
<totalDigits value="00015"/>
<fractionDigits value="02"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="COD_IDIOMA_V_TYPE">
<xsd:sequence>
<xsd:element name="COD_IDIOMA">
<xsd:simpleType base="xsd:string">
<maxLength value="00002"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PSV_ANOTACIONES_V_TYPE">
<xsd:sequence>
<xsd:element name="STD_CHAR_01">
<xsd:simpleType base="xsd:string">
<maxLength value="00001"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TR_CONS_SALDOS_VISTA_EVT_Z_TYPE">
<xsd:sequence>
<xsd:element name="COD_NUMRCO_MONEDA">
<xsd:simpleType base="xsd:string">
<maxLength value="00003"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PSV_DISPO_V" type="PSV_DISPO_V_TYPE"/>
<xsd:element name="PSV_SDO_CONTABLE_V" type="PSV_SDO_CONTABLE_V_TYPE"/>
<xsd:element name="PSV_SDO_RETEN_V" type="PSV_SDO_RETEN_V_TYPE"/>
<xsd:element name="PSV_SDO_AUT_V" type="PSV_SDO_AUT_V_TYPE"/>
<xsd:element name="PSV_SDO_INCID_V" type="PSV_SDO_INCID_V_TYPE"/>
<xsd:element name="PSV_BLOQUEOS_V" type="PSV_BLOQUEOS_V_TYPE"/>
<xsd:element name="PSV_SDO_CONECT_V" type="PSV_SDO_CONECT_V_TYPE"/>
<xsd:element name="COD_CSB_OF">
<xsd:simpleType base="xsd:string">
<maxLength value="00004"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NOMB_50">
<xsd:simpleType base="xsd:string">
<maxLength value="00050"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="COD_INTERNO_UO">
<xsd:simpleType base="xsd:string">
<maxLength value="00004"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="COD_IDIOMA_V" type="COD_IDIOMA_V_TYPE"/>
<xsd:element name="PSV_ANOTACIONES_V" type="PSV_ANOTACIONES_V_TYPE"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="STD_TRN1_MSJ_PARM_V_TYPE">
<xsd:sequence>
<xsd:element name="TEXT_ARG1">
<xsd:simpleType base="xsd:string">
<maxLength value="00018"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="TEXT_CODE" type="xsd:int"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TR_CONS_SALDOS_VISTA_TRN1">
<xsd:complexType name="TR_CONS_SALDOS_VISTA_TRN1_O_TYPE">
<xsd:sequence>
<xsd:element name="RTRN_CD" type="xsd:int"/>
<xsd:element name="STD_TRN1_O_PARM_V" type="STD_TRN1_O_PARM_V_TYPE"/>
<xsd:element name="TR_CONS_SALDOS_VISTA_EVT_Z" type="TR_CONS_SALDOS_VISTA_EVT_Z_TYPE"/>
<xsd:complexType name="STD_TRN1_MSJ_PARM_V_OCCURS">
<xsd:element name="STD_TRN1_MSJ_PARM_V" type="STD_TRN1_MSJ_PARM_V_TYPE" maxOccurs="000005"/>
</xsd:complexType>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TR_CONS_SALDOS_VISTA_TRN1_I_TYPE">
<xsd:sequence>
<xsd:element name="STD_TRN1_I_PARM_V" type="STD_TRN1_I_PARM_V_TYPE"/>
<xsd:element name="TR_CONS_SALDOS_VISTA_EVT_Y" type="TR_CONS_SALDOS_VISTA_EVT_Y_TYPE"/>
</xsd:sequence>
</xsd:complexType>
</xsd:complexType>
</xsd:schema>Thanks you -
Problem with the input file format to be stored in database
Hi,
I am facing some problem with the input format. I am using the table name as data.employee. But i could not able to process the message forward. I am getting this error,
com.ibm.db2.jcc.c.SqlException: java.sql.Connection.close() requested while a transaction is in progress on the connection.The transaction remains active, and the connection cannot be closed.
Can you please help me prposing a solution for this format.
Thanks,
SOoryaI think you are missing out the COMMIT operation.
At the DB2 end before closing the connection if you do a 'COMMIT' then this may remove your error.
i.e. after you close the Resultset>close the statement object> perform 'COMMIT' operation--> then close the connection.
Also refer :-
http://www.dbforums.com/archive/index.php/t-976407.html
http://www.dbforums.com/showthread.php?t=1628183
I hope this will help you.
Thanks,
Vijaya -
Premiere Pro CC Problem With PNG MOV Quicktime Format
A While Back, i posted a problem with Premiere Pro CC that it would not open MOV with a PNG Type Format. the Error was always "There is No video or Audio Stream".
Frustrated, i reverted back to Premiere Pro CS6 in which the files opened fine. i had Forgotten an effect i used in PRO CC so went pack in and surprisingly the files opened. I finished my Project and moved on until Last night, when editing, the same thing happened in Premiere Pro CC, it wouldnt impoort the PNG Format MOV files i have for traqnsitions (Rampant Media Color transistions) Curious, i again opened PPRO CS6, and low and Behold, when i re-opened PPRO CC, the files were read properly.
So there appears to be some form of Bug in PPRO CC on a windows 7 64 bit Ultimate? i can reproduce this over and over againj. i am just throwing this out there incase this happens to anyone else. hope this helps, i hope Adobe Premiere Pro CC Engineers see this and can fix this bug. thanks, have a happy too da looo, i shall blow you a fanfare!Please submit a bug report, complete with a sample file, or at least attach a sample clip here.
https://www.adobe.com/cfusion/mmform/index.cfm?name=wishform -
Problems with decimal places and formatting
Hi , we are having problems with an add on running on different localization companies. Decimal places separatd by "," differ from other localizations. We dont know if this is a SQL collation setting or somethng related to code or requirements to run add ons on different servers and languages.
Any ideas??
ThanksHello
Follow up with this thread:
[Re: How to get the numeric value of DocTotal from UI API]
Regards,
J. -
Problem with PO output print format
Hello all,
I have a problem with PO print output. When I am creating a new PO and taking the printout, the printout is coming perfectly fine.
But when I am making any changes to the PO and then trying to taking the printout one more time, the system is not showing ANY data in the output. It is showing only the data that is hardcoded.
Our ABAPers have tried to debug this issue, but it looks like there is an issue with the SAP standard program itself. I have also raised an SAP OSS note but till now didn't get any reply from them.
Please suggest me if I am missing any customization activity in this case. I have to resolve this issue ASAP.
Please provide some of your valuable suggestions. I will be thankful to you all.
Regards,
Umakanth.Ramesh,
When I am taking the print of the purchase order after making some changes, the system is not showing data like, material number, vendor number, Bill to address, delivery address, quantity, etc. There are some hardcoded data like country United Kingdom since my client belongs to UK. So only this hardcoded data is displaying in the print preview of the PO after making changes and also the printout.
The output types are triggered in the change mode. I have given a temporary solution to the user saying that once the changes are done to the PO, delete the output types that were triggered automatically in change mode. And enter the output types again manually and fill all the relevant data. In this way the CHANGE field is not ticked and when we save the PO, the printout is coming perfect.
This is a temporary solution as it is practically not possible for the users to enter the output types manually for a lot of POs.
Also Ramesh, I didn't understand your statement "Also check whether the Fine Tuned Control is maintained for Operation 2 under Message Types of PO". Please tell me the importance of this and where do we check this?
Regards,
Umakanth. -
Problem with SOAP Adapter receiver not receiving the proper string
Hi friends
I have a very simple scenario as follows using SOAP Syncronous Call
SENDING SCENARIO
================
ExternalClient --> SOAP ADAPTER --> XI -> RFC ADAPTER --> ZBAPI
RECEIVING SCENARIO
==================
ZBAPI --> RFC ADAPTER --> XI --> SOAP ADAPTER --> ExternalClient
Here External Client is sending a search ID and ZBAPI searches for that record and send the FirstName and LastName.
I am using external Definitions in XSD format as follows.
INPUT XSD is
=========================================
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://cincom.com/xi/socrates/customerSearch" targetNamespace="http://cincom.com/xi/socrates/customerSearch">
<xsd:element name="ZBAPI_GET_NAME">
<xsd:complexType>
<xsd:all>
<xsd:element name="ID" type="xsd:integer" minOccurs="0" />
</xsd:all>
</xsd:complexType>
</xsd:element>
</xsd:schema>
===========================================
Reciving XSD file has
==============================================
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:socrates.cincom.com" targetNamespace="urn:socrates.cincom.com">
<xsd:element name="ZBAPI_GET_NAME_RESPONSE">
<xsd:complexType>
<xsd:all>
<xsd:element name="ADDRESSDATA" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="FNAME" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="LNAME" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:all>
</xsd:complexType>
</xsd:element>
</xsd:schema>
=========================================================
I HAVE TESTED THE ZBAPI AND IT WORKS WELL ON ITS OWN. ALSO I HAVE TESTED THAT THE MESSAGE SENT FROM OUTSIDE CLIENT IS REACHING BAPI. HOWEVER WHEN I GOTO 'SXMB_MONI' AND CHECK THE
XML STRING THAT THE RECIEVER IS GETTING, I SEE JUST THE FOLLOWING TWO LINES
===================================
<?xml version="1.0" encoding="UTF-8" ?>
<ns1:ZBAPI_GET_NAME_RESPONSE xmlns:ns1="urn:socrates.cincom.com" />
======================================
IF YOU NEED ANY FURTHER INFO, PLEASE LET ME KNOW.
HOPE SOME ONE CAN GUIDE ME WITH THIS PROBLEM.
THANKS IN ADVANCE
RAMRam
Can you pls. confirm whether the mapping of your XSD fields & BAPI fields are in same sequence. I mean hierarchy is same or not.
Just to verify, as you said you are using Sync scenario that means you are using ONE Sender Soap & ONE Reciever RFC adapter.
Regards
Lalit -
Problems with SOAP Adapter/Interface
Hi Experts,
we currently try and experiment with XI 3.0 Stack 09 and the SOAP adapter respectively.
We started with a simple interface (foo..., see wsdl attachment) that we want to provide by XI.
All configurations (SLD, Integration Repository, Integration Directory) should have been done accordingly as we suppose, similar to other szenarios we have already implemented.
When we send a SOAP request based on a generated wsdl to XI we get the exception at the bottom of this text, containing e.g.
com.sap.aii.messaging.srt.BubbleException: error during conversion [null "null"];
com.sap.aii.messaging.util.XMLScanException: Parsing an empty source. Root element expected!
For sending the SOAP message we used XMLSpy.
Did someone have similar problems or can give us an working WSDL example, or some hint?
Thanks in advance,
Klaus Lukas
foo.wsdl
<?xml version="1.0" encoding="ISO-8859-1"?>
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:p1="urn://poreceive.xi.pse.siemens.com" targetNamespace="urn://poreceive.xi.pse.siemens.com" name="foo_out_sync">
<wsdl:types>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn://poreceive.xi.pse.siemens.com" targetNamespace="urn://poreceive.xi.pse.siemens.com">
<xsd:element name="foo" type="foo_DT"/>
<xsd:complexType name="foo_DT">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fe0bb241d2a011d9cd15e9729ee2f568
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="item" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fe0bb240d2a011d9acede9729ee2f568
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="foo">
<wsdl:part name="foo" element="p1:foo"/>
</wsdl:message>
<wsdl:portType name="foo_out_sync">
<wsdl:operation name="foo_out_sync">
<wsdl:input message="p1:foo"/>
<wsdl:output message="p1:foo"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="foo_out_syncBinding" type="p1:foo_out_sync">
<soap:binding xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="foo_out_sync">
<wsdl:input>
<soap:body xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="foo_out_syncService">
<wsdl:port name="foo_out_syncPort" binding="p1:foo_out_syncBinding">
<soap:address location="http://xxxxxxxx:8000/XISOAPAdapter/MessageServlet?channel=:Foo_SOAP_Service:SOAP_Foo_out&version=3.0&Sender.Service=Foo_SOAP_Service&Interface=urn%3A%2F%2Fporeceive.xi.pse.siemens.com%5Efoo_out_sync" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
soap message incl. error
<?xml version="1.0"?>
<!-- see thedocumentation -->
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Body>
<SOAP:Fault>
<faultcode>SOAP:Server</faultcode>
<faultstring>error during
conversion</faultstring>
<detail>
<s:SystemError
xmlns:s="http://sap.com/xi/WebService/xi2.0">
<context>XIAdapter</context>
<code>XMLScanException</code>
<text><![CDATA[
com.sap.aii.af.mp.module.ModuleException
at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.process
(XISOAPAdapterBean.java:697)
at
com.sap.aii.af.mp.module.ModuleLocalLocalObjectImpl3.process
(ModuleLocalLocalObjectImpl3.java:103)
at com.sap.aii.af.mp.ejb.ModuleProcessorBean.process
(ModuleProcessorBean.java:221)
at
com.sap.aii.af.mp.processor.ModuleProcessorLocalLocalObjectImpl0.process
(ModuleProcessorLocalLocalObjectImpl0.java:103)
at com.sap.aii.af.mp.soap.web.MessageServlet.doPost
(MessageServlet.java:543)
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:385)
at
com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleReques
t(HttpHandlerImpl.java:263)
at
com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet
(RequestAnalizer.java:340)
at
com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet
(RequestAnalizer.java:318)
at
com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebConta
iner(RequestAnalizer.java:821)
at
com.sap.engine.services.httpserver.server.RequestAnalizer.handle
(RequestAnalizer.java:239)
at com.sap.engine.services.httpserver.server.Client.handle
(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request
(Processor.java:147)
at
com.sap.engine.core.service630.context.cluster.session.ApplicationSessio
nMessageListener.process(ApplicationSessionMessageListener.java:37)
at
com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner
.run(UnorderedChannel.java:71)
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:94)
at com.sap.engine.core.thread.impl3.SingleThread.run
(SingleThread.java:162)
Caused by: com.sap.aii.messaging.srt.BubbleException: error during
conversion [null "null"]; nested exception caused by:
com.sap.aii.messaging.util.XMLScanException: Parsing an empty source.
Root element expected!
at
com.sap.aii.messaging.srt.xmb.XMBWebServiceExtension.onResponseToWS
(XMBWebServiceExtension.java:936)
at
com.sap.aii.messaging.srt.xmb.XMBWebServiceExtension.invokeOnResponse
(XMBWebServiceExtension.java:602)
at com.sap.aii.messaging.srt.ExtensionBubble.onMessage
(ExtensionBubble.java:58)
at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.process
(XISOAPAdapterBean.java:576)
... 20 more
Caused by: com.sap.aii.messaging.util.XMLScanException: Parsing an
empty source. Root element expected!
at com.sap.aii.messaging.util.StreamXMLScannerImpl.open
(StreamXMLScannerImpl.java:104)
at com.sap.aii.messaging.mo.DefaultItem.setData
(DefaultItem.java:294)
at
com.sap.aii.messaging.srt.xmb.XMBWebServiceExtension.makeItemFromPayload
(XMBWebServiceExtension.java:972)
at
com.sap.aii.messaging.srt.xmb.XMBWebServiceExtension.onResponseToWS
(XMBWebServiceExtension.java:879)
... 23 more
]]></text>
</s:SystemError>
</detail>
</SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope>Hi Klaus
In your wsdl file the soap address tag (given below)
<b><soap:address location="http://xxxxxxxx:8000/XISOAPAdapter/MessageServlet?channel=:Foo_SOAP_Service:SOAP_Foo_out&version=3.0&Sender.Service=Foo_SOAP_Service&Interface=urn%3A%2F%2Fporeceive.xi.pse.siemens.com%5Efoo_out_sync" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/></b>
is to be edited as
<b><soap:address location="http://xxxxxxxx:50000//XISOAPAdapter/MessageServlet?channel=:Foo_SOAP_Service:SOAP_Foo_out" /></b>
because the soap address format should be like :
<i>http://host:port/XISOAPAdapter/MessageServlet?channel=party:service:channel</i>
For more information :
http://help.sap.com/saphelp_nw04/helpdata/en/0d/5ab43b274a960de10000000a114084/frameset.htm
Hope this will be helpful.
Regards
Suraj -
Problem with SOAP receiver adapter? Please help!
Hi experts
I have the following scenario:
SAP R/3 -ABAP Proxy>XI--->SOAP --webservice
As you can see, I am sending data from R/3 system to XI via ABAP proxy. XI then sends data or calls a webservice via SOAP adapter.
When I test this scenario I am getting a error in the sxmb_moni that is,
"com.sap.aii.af.ra.ms.api.DeliveryException: TEXT/HTML; HTTP 504 Gateway Time-out"
I have checked the webservice url and it is working fine.
Can somebody tell me why am I getting this error message? How do I resolve this?
Thanks
GopalHi,
Can you please check the settings in Soap Adapter with Module Adapter setting with ModuleTranformBean parameters? There may be some problem. use HTTP Adapter and the message type 'HttpPostIn' to send as HTTP Post.
Also
There is the note 450226 gives an overview over error codes
Probably below solution may help you.........
As an administrator on your portal go to:
System Configuration > Service Configuration >applications
Under: com.sap.portal.ivs.httpservice > Services > Proxy
If any proxy settings are configured you may end up with the problem, so you need to set the "nonProxyHosts" to include the trex host.
regards
Aashish Sinha
PS : reward points if helpful -
Synchronous RFC -- SOAP Scenario: problem with SOAP Response/Fault Mapping
Hi,
I've a synchronous RFC --> PI --> SOAP Scenario. The problem is that the message structure of the sending RFC doesn't match the Webservice Structure.
The (SAP standard) RFC has just a Request / Response message structure. Part of the Response Message structure is a exception structure.
The Webservice has a Request / Response message structure and in case of an error I get a SOAP:Fault.
Problem now is that I cannot configure that scenario without usage of BPM as I will have to map SOAP:Response or SOAP:Fault to the RFC Response structure.
Has anybody another idea to do that synchronous scenario (with usage of message mapping) without BPM?
BR
Holger1)
you maus define 3 mapping.
1)request
2)response
3)Fault
in Interface mapping define at response boths (2-3) mapping. its clear??
2)
otherwise sometjhing is not clear, why do you want fault?? why dont you get only response message. we implement this kind of response:
<response_MT>
<ID> (error ID)
<system> (target system)
<error> (Error Description)
</response>
by this way fault message is not needed. but if you must have it just follow the top of message else, propose second.
Thanks
Rodrigo
Thanks
Rodrigo
Edited by: Rodrigo Pertierra on Feb 25, 2008 11:52 AM -
Problem with SOAP FAULT messages
Hi,
I'm developing the flash interface for a .NET application.
The client side (flash) communicate with server side (.NET) by web
services. The problem is that when the server side send a Fault
message flash breaks telling "Unable to connect to
endpoint........". In this case I need to know the error message
send by the server but the fault.faultstring is undefined.
Here the server Fault message:
HTTP/1.1 500 Internal Server Error.
Date: Wed, 23 Aug 2006 09:07:10 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
X-AspNet-Version: 1.1.4322
Cache-Control: private
Content-Type: text/xml; charset=utf-8
Content-Length: 419
<?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>
<soap:Fault>
<faultcode>SoapHeader</faultcode>
<faultstring>The userid: xxxx is
invalid</faultstring>
<detail />
</soap:Fault>
</soap:Body>
</soap:Envelope>
And this the code that handle the fault case:
pendingcall.onFault = function (fault:Object){
rootObj.gbl_logger.log("WS Fault: "+ fault.faultstring ,
10);
As you can see the real faultstring is "The userid: xxxx is
invalid" but in the faultstring property of the fault object I
found "undefined".
I've read many posts that report that the problem can be
solved in the server side modifing the HTTP HEADER from 500 to 200.
Unfortunately I can't access the server side code. Exists a way to
resolve the problem in the client side? Seems it is a Flash bug as
the SOAP 1.1 specs tells that all SOAP Fault messages must carry a
HTTP 500 header. Exists some patch that solve the problem?
Thanks.Hi ,
Thanks for joining the Community.
Please get in touch so we can resolve this issue for you.
Click here for contact details.
Thanks
James
Maybe you are looking for
-
How do I save a bookmark on the list to a specific folder?
I have amassed a collecti0n of over 1000 bookmarks. is there a tutorial anywhere to learn how to manage those bookmarks. Like in: a.keep them under specific folders... what are the steps to move a bookmark to the inside of a folder. or ... b.list the
-
My gift cards are not being redeemed. Still charging my credit card.
My gift cards are not being redeemed. Still charging my credit card.
-
Hi there, I've had a new update of edge animate.. When i click on "open actions" i now only see a white square instead of the actions window. Does anybody know how can i fix this?
-
Question about creating multiple XML files from same query
I have a query like this: select * from emp; ename empno deptno Scott 10001 10 Tiger 10002 10 Hanson 10003 20 Jason 10004 30 I need to create multiple output files in xml format for each dept example: emp_dept_10.xml emp_dept_20.xml emp_dept_30.xml e
-
Photosmart Essential 3.5 - Can't get all photos into the Library
I'm trying to create a CD label to print on a CD on my HP C5580 using a picture from my Library. But when I go to my Library, only pictures through 2013 are there, and not all of those are there. I've tried to add/update folders from my Pictures fi