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
Similar Messages
-
WLS 5.1 sp8 servlet problems
Ok. I must be just plain stupid..... :-(
My environment:
Win2K advanced server
IIS 5.0
WLS 5.1 sp8
jdk 1.3
standard install directories. The only changes were to use the 1.3 jdk.
I can get jsps to run out of the /public_html/ directory. I've configured
iisproxy to proxy .jhtml, .jsp, and .svlt file extensions ( the .svlt for
servlets :-) ).
The server runs, the console runs, everything seems to be Ok, except, I
can't figure out how to run even the example SnoopServlet. The
weblogic.properties file has the examples registered defaulted.
I also get an evaluation period over on the cloudscape database, when the
server is starting up. So even the BigTel app has problems with the
database.
I also get that same missing javai.dll on startup. It does jump to the
interpreter though. I've seen the explanation on the javai.dll and can
accept that it will be fixed in sp9. I don't understand the cloudscape
thing. And for the life of me I can't figure out how to get the SnoopServlet
to run.
I'm running the version of WLS 5.1 that comes with Visual Cafe EE 4.0. and
have patched it up to sp8.
I thought that by adding the .svlt extension that the iisproxy would call
the Servlet. As in:
http://localhost/SnoopServlet.svlt would call the SnoopServlet from the
examples.
Any help would be appreciated.
GeorgeHi George,
Are you having fun yet? :-)
George Smith wrote:
Ok. I must be just plain stupid..... :-(
My environment:
Win2K advanced server
IIS 5.0
WLS 5.1 sp8
jdk 1.3
standard install directories. The only changes were to use the 1.3 jdk.
I can get jsps to run out of the /public_html/ directory. I've configured
iisproxy to proxy .jhtml, .jsp, and .svlt file extensions ( the .svlt for
servlets :-) ).
The server runs, the console runs, everything seems to be Ok, except, I
can't figure out how to run even the example SnoopServlet. The
weblogic.properties file has the examples registered defaulted.The registeration in the weblogic.properties file looks like this:
weblogic.httpd.register.snoop=examples.servlets.SnoopServlet
You can access it directly using the URL
http://myweblogic.machine.name:7001/snoop
In order to get IIS to proxy this appropriately, you need to specify the .svlt
extension to the URL. However, the above registration does not use this
extension so WLS will not find the servlet if append the extension. Therefore,
you need to do one of the following (but not both):
1.) Change your servlet registration to look like this:
weblogic.httpd.register.snoop.svlt=examples.servlets.SnoopServlet
2.) Change your IIS configuration to proxy by path. For example, configure IIS
to proxy all URLs with /weblogic using the WLForwardPath parameter and the
PathTrim parameter value of /weblogic. This will allow you to enter the
following URL in the browser:
http://myweblogic.machine.name:7001/weblogic/snoop
IIS will forward this because of the /weblogic but it will trim the URL to
/snoop before forwarding it to WLS (allowing WLS to find the servlet registered
with weblogic.httpd.register.snoop=examples.servlets.SnoopServlet).
I also get an evaluation period over on the cloudscape database, when the
server is starting up. So even the BigTel app has problems with the
database.Download and install the Cloudscape updater from the WebLogic 5.1.0 Service Pack
area.
I also get that same missing javai.dll on startup. It does jump to the
interpreter though. I've seen the explanation on the javai.dll and can
accept that it will be fixed in sp9. I don't understand the cloudscape
thing. And for the life of me I can't figure out how to get the SnoopServlet
to run.Hmm... I thought that the reason for the javai.dll thing was because you were
picking up a different version of some JDK files (javai.dll is from JDK 1.1.x).
I'm running the version of WLS 5.1 that comes with Visual Cafe EE 4.0. and
have patched it up to sp8.
I thought that by adding the .svlt extension that the iisproxy would call
the Servlet. As in:
http://localhost/SnoopServlet.svlt would call the SnoopServlet from the
examples.
Any help would be appreciated.
GeorgeHope this helps,
Robert -
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. -
I have two Iphones 5 with different email addresses sharing one Apple ID account.Both are using IOS 8.
I would like to set up a new Apple Id for one of the phones and remove it from the old account.
If I do that, can I move all of the purchased apps and songs to the new Apple account?
Also, will sharing one Apple ID account with two devices cause problems with using messaging and FaceTime?Sharing an iCloud account between two devices can be done without causing issues with iMessage and FaceTime, just go into Settings for each of these functions and designate separate points of contact (i.e. phone number only, or phone number and unique email address). While that works, you'll then face the problem where a phone call to one iPhone will ring both if on the same Wi-Fi network -- but again, that can be avoided by changing each phone's settings.
Rather than do all that, don't fight it -- use separate IDs for iCloud. You can still use a common ID for iTunes purchases (the ID for purchases and iCloud do not have to be the same) or you can use Family Sharing to share purchases from a primary Apple account. -
Problem with Nokia Messaging on my N97 (V22)
Since afew weeks I have a strange problem with Nokia Messaging on my N97.
I receive emails using Nokia Messaging (V10.2.26) with a date shown incorrect as 01.01.0000 and the email then can’t be opened/read.
This happens either on 3G connection as well as WLAN and it seems to be by random, not only HTML-emails or emails with text only.
I have uninstalled Nokia messaging already and reinstalled V10.1.24 but the problem still remains.
Is there any idea how to fix this issue because it is quite annoying and I can’t use the full functionality of my cell phone?millic wrote:
ceroberts75, I remember from your other posts somehow server thinks you already have an account with the email you are trying to configure and you/nokia support is not able to get access to it. Different people have resolved this issue in different ways. For me it was just another way. Thought it might help someone.
absolutely m8. thats why i gave you a kudos.
the challenge is that NM has been unruly as of late...and believe when i say that i have literally been on the phone teching nokias support up to tier 2 and creating, canceling, trying new acounts with different email, different ways of creating them, with wifi, gprs...and praying for hours accross mutliple phone calls
but to no avail, are the devices we are using connecting and syncing...even with thier n900 specialist which i had to help him! lmao.
another option for a solution is alwayhs welcome as there are more then one way to skin a cat.
i hope it works for him and others as i kno9w thesome that are just giving up on it. -
Problem with instant message in clustered environment
Hello, I have some problem with Instant Message service.
We need to use it in our Production Environment (a clustered emvironment with a central instance, two dialog instances and two web dispatchers), some months ago we tested it in Development Environment (not clustered emvironment, just a single system) and it worked fine.
So I did the same configurations on Production Environment but it did not work.
But if I access on my portal (Production Env.) by the central instance (avoiding the dispatchers) the instant message service works.
I think it can be a web dispatcher's configuration problem, in its logs I found the message :
"<i>[Thr 3700] *** ERROR => htmlEncode: called with empty string [icpif.cpp 847]</i>"
I' ve repeated the same configuration done in Dev.Env. (no dispatcher) on the Prod.Env. (with 2 dispatcher), is possible that I'm missing some configurations??
Could someone helps me?
Best Regard
nullHi Alessandro,
unfortunately I got the same problem but I haven't found the solution yet.
Hoping someone will help us.
Regards Nicola -
when i attempt to open Firefox Mail, I get a popup (yellow background) with the heading "There is a problem with this message". We are sorry, but Yahoo Mail has encountered a temporary problem, referring to Temporary Error 4. It goes on to suggest that I might solve the problem by going to Yahoo Help Page. I tried this to no avail. Can you help? Please keep it simple as I am sort of computer impaired. Thanks, Bob Mayfield
Clear the cache and the cookies from sites that cause problems.
"Clear the Cache":
*Tools > Options > Advanced > Network > Offline Storage (Cache): "Clear Now"
"Remove Cookies" from sites causing problems:
*Tools > Options > Privacy > Cookies: "Show Cookies"
*https://support.mozilla.org/kb/clear-cache-history-and-personal-information -
I keep having the same problem with my messages over and over again. My number is not checked in my message settings it just unchecks itself
Dear Tomarshe
I had the same problem a couple of weeks back.
What I did was that I restarted that Ipad of mine and voila!
Problem solved!
hope this helped!
- DASHdotDASHdot -
Does anyone have problems with sent messages not showing in their Mail? I have two sent folders when really I only want one. Any tips?
Not sure if this is a fix, but I tried sending myself a test email from only the Bcc field, and lo and behold it now shows the Bcc field in all sent item previews;
...maybe leaving the 'To' field blank on purpose forced Mail to show it.
Rebooted the Mail program, still there - rebooted the machine, still there. Hope this is still relevant and it works for you too - J. -
Having problems with a message saying,A script in this movie is causing adobe flash player to run slowly if it continues to run, your computer may become unresponsive. Do you want to abort script. And my system seems to freeze. What can I do
Here is the download page for Click-to-PlugIn:
http://hoyois.github.com/safariextensions/clicktoplugin/ -
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 -
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 Attachment in MM7
Hi, I'm developing with Bea Weblogic 7 sp2 a MM7 server. My problem is when I add an attachment to SOAP message, Weblogic can't receive the message and say something as "The ID referenced by .... is unknow" but the href attribute in SOAP Message has the same value as the Content-ID of the attachment.
The attachment is multipart/mixed. Please, I need help.
I add here an old post from other user about this problem.
<i>Hi
I need some help for a problem I have with bea 7.0 sp1 web services.
I'm trying to develop a SOAP Message Handler to intercept a SOAP Messages.It seems
work properly for simple soap requests.
But I need to send attachements so my request is like:
POST /mm7/mm7Service HTTP/1.0
Content-Type: multipart/related; type="text/xml"; start="<2ED4C017A7C250C35409DE82D1A8E6B1>";
boundary="----=_Part_18_90248.1076664111251"
Accept: application/soap+xml, application/dime, multipart/related, text/*
User-Agent: Axis/1.1
Host: xxx.xxx.xxx.xxx
Cache-Control: no-cache
Pragma: no-cache
SOAPAction: "http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-5-MM7-1-2?operation=Deliver"
Content-Length: 5177
------=_Part_18_90248.1076664111251
Content-Type: text/xml; charset=UTF-8
Content-Transfer-Encoding: binary
Content-Id: <2ED4C017A7C250C35409DE82D1A8E6B1>
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header>
<ns1:TransactionID soapenv:mustUnderstand="0" xsi:type="xsd:string" xmlns:ns1="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-5-MM7-1-2">E8D97EC0A80A712B5CF3C7E5A56AF121</ns1:TransactionID>
</soapenv:Header>
<soapenv:Body>
<DeliverReq xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-5-MM7-1-2">
<MM7Version>5.3.0</MM7Version>
<LinkedID>fa571b8e93C0A809513c33d383069dfb</LinkedID>
<Sender>
<RFC2822Address displayOnly="false">[email protected]</RFC2822Address>
</Sender>
<Recipients>
<To>
<Number displayOnly="false">+123454678</Number>
</To>
<Cc>
<RFC2822Address displayOnly="false">[email protected]</RFC2822Address>
</Cc>
<Bcc>
<RFC2822Address displayOnly="false">[email protected]</RFC2822Address>
</Bcc>
</Recipients>
<Priority>High</Priority>
<Content href="cid:74935BFBD687B557CE9C25A591FEE0DA" allowAdaptations="true"/>
</DeliverReq>
</soapenv:Body>
</soapenv:Envelope>
------=_Part_18_90248.1076664111251
Content-Type: multipart/mixed;
boundary="----=_Part_17_2373292.1076664111231"
Content-Transfer-Encoding: binary
Content-Id: <74935BFBD687B557CE9C25A591FEE0DA>
------=_Part_17_2373292.1076664111231
I implemented a simple Handler with a system.out in
public boolean handleRequest(MessageContext mc)
method
But weblogic never gets there. It gives me this error instead:
javax.xml.soap.SOAPException: failed to receive message:
at weblogic.webservice.core.DefaultWebService.invoke(DefaultWebService.java:227)
This seems related to this line
<Content href="cid:74935BFBD687B557CE9C25A591FEE0DA" allowAdaptations="true"/>
If I remove it, it can reach the handleRequest() method.
Unfortunately I need the Content parameter....
Does weblogic support href attributes in soap ?
many thanks to whatever help
(I already lost 3 days on that problem.....)
alan</i>
Thanks.Hello,
Problem 1)
In a previous question about this in SDN, someone (sorry, can't remember who) answered:
"Have you or the user logged into the SAP GUI before? If not, have them login in. Our problems occured
with new users that never logged into the SAP gui and so the user profile was never loaded with the ini
file."
Please try that.
Problem 2)
Are you sure it's running with the same variant in the background?
What if you try every 5 minutes instead - maybe a minute is too short and it gets mixed up.
You could also try copying RSWUWFML2 to ZRSWUWFML2, inserting an infinite loop and then attaching to it in order to debug it in the background.
regards
Rick Bakker
Hanabi Technology -
Trivial problem with SOAP attachments
Hi,
I'm writing a very simple standalone JAXM client which will send a SOAP message with attachments to a listening servlet. I can get the code to work for a SOAP message without attachments with no problems, but when I try to create an AttachmentPart object, there is a problem when running the code (there is an exception when I try to create an AttachmentPart object) even though the code compiles ok.
It must be something really obvious, and I've tried copying examples from the JWSDP tutorial but to no avail! Any ideas welcome!
import javax.xml.soap.*;
import java.util.*;
import java.net.URL;
public class JAXMClient{
public static void main(String[] args){
String me = "Simon";
try{
SOAPConnectionFactory scFactory = SOAPConnectionFactory.newInstance();
SOAPConnection con = scFactory.createConnection();
MessageFactory factory = MessageFactory.newInstance();
SOAPMessage message = factory.createMessage();
// create attachment
AttachmentPart attachment = message.createAttachmentPart();
attachment.setContent(me, "text/plain");
attachment.setContentId("my_name");
message.addAttachmentPart(attachment);
URL endpoint = new URL("http://localhost:8080/EGSO/TestServlet");
System.out.println("Calling service....");
SOAPMessage response = con.call(message,endpoint);
System.out.println("Reply received!");
response.writeTo(System.out);
con.close();
catch(Exception e){
System.out.println("Error somewehere");I use the below code to add attachments (from JWSDP tutorial)
StringBuffer urlSB = new StringBuffer();
urlSB.append(req.getScheme()).append("://").append(req.getServerName());
urlSB.append( ":" ).append( req.getServerPort() ).append( req.getContextPath() );
String reqBase = urlSB.toString();
AttachmentPart apText = msg.createAttachmentPart(new DataHandler(new URL(reqBase + "/test.html")));
apText.setContentType("text/html");
msg.addAttachmentPart(apText);
(where msg is the SOAPMessage, and the "test.html" file resides in your servlet container's ROOT dir (eg $TOMCAT_HOME/webapps/ROOT)
Ben -
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
Maybe you are looking for
-
How do I keep track of how many times a method is called inside anthr clas?
I am writing code for a program that solves a Knight's Tour. A Knight's Tour is a path a Knight Chess piece can take around the board starting at any spot, touching every square once, and only once. I have to write 2 classes and one is provided. The
-
I am having problems opening images renerated in lightroom5 into cs6. Cs6 bridge does not see the lightroom libarary. If I open lightroom and right clik the image, edit in cs6, 6 opens but the picture doesnot follow. What is going on? Give me a hand,
-
How can I download language pack on my 9720?
Hi, I just bought a blackberry 9720, this is my first time use blackberry, and I couldn't typing chinese on my 9720, and I didn't find a language pack on the desktop software either. Will this problem can be solved? Many thanks.
-
AE CS6 and CC won't open after mac osx update?
I just downloaded the latest mac os X update and now my After Effects CS6 and CC software will not open. I've uninstalled and reinstalled, but that didn't help. I get an alert message and it quits on startup. Please help!!
-
What happens if i plug a charger into an iPhone with no battery in it?
i have a 1st gen iPhone that i bought cheap on ebay as it has no battery in it. i am planning on fixing it but i wanted to check out it worked first. i know some phones can work off the mains if theyre plugged in with no battery but these are usually