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
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. -
How to deal with SOAP attachments?
Is there any information available on how to work with SOAP attachments? I am looking
for a feature similar to what is available in other products where you can take a
byte[] and map to image/jpg, application/octet-stream, etc... and have the tool create
the appropriate message formats. How would I do this using WL Workshop? I could
not find anything in the docs... is this supported?
Thanks,
BobEasiest thing is to encode the contents of the binary object in the XML
message as you suggest.
I'd like to hear more about what you are trying to do as well -- we're
planning on adding support for attachments in the next release, and I'd like
to make sure we do it in a way that meets your needs.
-C
"Bob Hayden" <[email protected]> wrote in message
news:[email protected]...
>
I am evaluating the capability of returning and consuming image/fileattachments through
a web service. This is one of our high priority integration requirementsand must
be available somehow through the framework we choose. Other productshave ways
to do this through an IDE... if WorkShop is not going to directly supportthis then
does anyone have any suggestions or examples on how this can be done in away that
is still intuitive for a WorkShop user (in other words without rolling upyour sleeves
and digging into JAX-RPC)? I suppose one could base64 it and add it tothe WorkShop-generated
message as a String using the return XML map, but I would prefer toinvestigate a
more standards-based approach.
Is it just me or does the lack of support for SOAP attachments seem to bea serious
missing piece from WL Workshop?
-Bob
"Raj Alagumalai" <[email protected]> wrote:
Bob,
WebLogic Workshop does not currently support SOAP attachments. However,
please note
that if you are developing your Web services using the APIs and services
provided
by J2EE and WebLogic Server directly, WebLogic Server does support SOAP
attachments.
Please refer to the following document for more Workshop FAQ's
http://dev2dev.bea.com/resourcelibrary/faqdetail.jsp?productType=weblogic+w
orkshop&highlight=faq
>>
Thanks
Raj Alagumalai
WebLogic Workshop Support
"Bob Hayden" <[email protected]> wrote:
Is there any information available on how to work with SOAP attachments?
I am looking
for a feature similar to what is available in other products where youcan
take a
byte[] and map to image/jpg, application/octet-stream, etc... and havethe
tool create
the appropriate message formats. How would I do this using WL Workshop?
I could
not find anything in the docs... is this supported?
Thanks,
Bob -
Problem with PDF attachments on Leopard's mail.
I just found a bug or something in Leoprd's mail . When I try to send a mail with PDF attachments, mail just stuck, nothing happen. The fan start to spin and mail grab all of the processors power nearly 100 %. What's weird, there aren't problem with sending other attachment like JPG for example. I tested it on all of my accounts and on all of them, situation is exactly the same.
The same problem here! Mail.app is behaving weirdly, but eventually it stopped sending e-mail with some filetypes attachments (.doc, .xls, .pdf not working, .jpg working), app just freezes - impossible to quit! HEEEELP!!!
-
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 -
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 -
Problems with opening attachments sent from Microsoft Outlook
I have been using MacBook Pro and I have had problems with opening files from Microsoft Outlook.
The attachments appear as .dat files (text, images etc..) and I am not able to open them.
Does someone have any experience in solving this type of compatability problems on Mac OS ?Get this app or tell the sender to send the attachments using plain text for their emial:
http://www.joshjacob.com/mac-development/tnef.php -
I have an xlsx file I have opened on my iPad and iPhone before, but it won't open on either now. If I go through Safari mail it works fine, how can I open it from my mail again? When I press on the downward arrow nothing happens. Thanks in advance
You have mentioned both xlsx and PDF - confusing!
Anyhow, can you go into your emails via Safari, forward the email in question to yourself again and before trying to open it, delete the existing one on your iPad which you have problems with. Then try the newly forwarded one. -
Problems with opening attachments
Received a 14 page attachment to an email. Playbook Adobe reader only showed first page although it indicated there were 14 pages. ( No problem with reading document on my computer.)
Logging on to my Bank via internet I have been unable to open messages. This was not an issue last week. Now I get a message " file exists Rename this file or press save to replace existing file" Then I get a blank screen. All I am trying to do is open and read the message in my browser..Partially solved the Adobe reader issue. If I simultaneously swipe down from the top and up from the bottom I get to a bar which advances the pages. I have to do this for each page as the bar keeps disappearing. Must be an easier method.
-
Problem with sending attachments over 1mb
anyone faced that
There may be a problem with the mail server or network. Check the settings for account “Gmail” or try again.
The server error encountered was: The connection to the server “pop.gmail.com” on port 995 timed out.
Checked already many options i.e. 465, ssl, no ssl etc.. seems nothing works
No problem on PC with the same accountlizak wrote:
anyone faced that
There may be a problem with the mail server or network. Check the settings for account “Gmail” or try again.
The server error encountered was: The connection to the server “pop.gmail.com” on port 995 timed out.
Checked already many options i.e. 465, ssl, no ssl etc.. seems nothing works
No problem on PC with the same account
welcome to discussions, lizak !
have you tried zipping the file(s) ? -
Problems with Javamail Attachments
Hi,
i've got a major problem with my application and i can't find the answer. Whenever i'm trying to send an attachment i have this error :
javax.mail.internet.ParseException
at javax.mail.internet.ParameterList.<init>(ParameterList.java:77)
at javax.mail.internet.ContentDisposition.<init>(ContentDisposition.java:69)
at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1104)
at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:824)
at javax.mail.internet.MimeMultipart.updateHeaders(MimeMultipart.java:215)
at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1056)
at javax.mail.internet.MimeMessage.updateHeaders(MimeMessage.java:1914)
at javax.mail.internet.MimeMessage.saveChanges(MimeMessage.java:1895)
at javax.mail.Transport.send(Transport.java:79)
at Send$5.run(Send.java:209)
at java.lang.Thread.run(Thread.java:536)
Interactive Session Ended
My source code is :
public class DemoSend implements ActionListener{
public void actionPerformed(ActionEvent evt) {
try {
final Properties props = System.getProperties();
props.put("mail.host", hostField.getText());
final Session mailConnection = Session.getDefaultInstance(props, null);
final MimeMessage msg = new MimeMessage(mailConnection);
final Address to = new InternetAddress(toField.getText());
final Address from = new InternetAddress(fromField.getText());
msg.setContent(message.getText(), "text/plain");
msg.setFrom(from);
msg.setRecipient(Message.RecipientType.TO, to);
msg.setSubject(subjectField.getText());
msg.setSentDate(new java.util.Date());
final MimeBodyPart mbp1 = new MimeBodyPart();
mbp1.setText(message.getText());
final MimeBodyPart mbp2 = new MimeBodyPart();
mbp2.setDisposition(mbp2.ATTACHMENT);
final FileDataSource fds=new FileDataSource(FileName);
mbp2.setDataHandler(new DataHandler(fds));
mbp2.setFileName(fds.getName());
final Multipart mp = new MimeMultipart();
mp.addBodyPart(mbp1);
mp.addBodyPart(mbp2);
msg.setSentDate(new Date());
msg.setContent(mp);
Runnable r = new Runnable() {
public void run() {
try {
Transport.send(msg);
JOptionPane.showMessageDialog(null," Your message has been sent successfuly","G T P Email Client",JOptionPane.INFORMATION_MESSAGE);
catch (Exception e) {
e.printStackTrace();
JOptionPane.showMessageDialog(null," -- E r r o r -- Your message has not been sent!!!!! ","G T P Email Client",JOptionPane.INFORMATION_MESSAGE);
Thread t = new Thread(r);
t.start();
message.setText("");
catch (Exception e) {
e.printStackTrace();
and i define at the beggining the string FileName
public static String FileName = new String();
and thats for the attach button
attachButton.addActionListener(new ActionListener()
public void actionPerformed(ActionEvent e)
if (fc == null) {
fc = new JFileChooser();
fc.addChoosableFileFilter(new ImageFilter());
fc.setAcceptAllFileFilterUsed(true);
fc.setFileView(new ImageFileView());
fc.setAccessory(new ImagePreview(fc));
fc.setMultiSelectionEnabled(true);
int returnVal = fc.showDialog(Send.this,"Attach File");
fc.getSelectedFile();
File file = fc.getSelectedFile();
It would be a great help if you can can help me find an answer to my problem.
Thanks in advance.I tried to set a specific file for the FileChooser but again the same results.I tried without the preview classes again the same mistake.But when i tried without the JFileChooser it worked, but i must use a JFileChooser in order to choose a file to attach.I used a simple FileChooser and again the same mistakes.I don't know where the mistake is.
I will be grateful if you can help me out,this is an emergency it is for my project and i'm desperate.
I include the whole class.
Thanks again and sorry for the long message.
I hope you have some free time to help me out.
Thanks again
import java.awt.*;
import javax.swing.JFileChooser.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import javax.activation.*;
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
import java.util.Properties;
public class Send extends JFrame {
public static void main(String[] args) throws Exception{
Send client = new Send();
client.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
client.show();
public static JLabel fromLabel = new JLabel("From: ");
public static JLabel toLabel = new JLabel("To: ");
public static JLabel hostLabel = new JLabel("SMTP Server: ");
public static JLabel subjectLabel = new JLabel("Subject: ");
public static JTextField fromField = new JTextField(40);
public static JTextField toField = new JTextField(40);
public static JTextField hostField = new JTextField(40);
public static JTextField subjectField = new JTextField(40);
public static JTextArea message = new JTextArea(40, 80);
public static JScrollPane jsp = new JScrollPane(message);
public static JButton sendButton = new JButton("Send Message");
public static JButton clearButton = new JButton("Clear");
public static JButton attachButton = new JButton("Attach File");
public static JButton adbButton = new JButton("AddressBook");
public static JFileChooser fc;
public static String FileName = new String();
public Send() {
super("SMTP Send email");
Container contentPane = this.getContentPane();
contentPane.setLayout(new BorderLayout());
JPanel labels = new JPanel();
labels.setLayout(new GridLayout(4, 1));
labels.add(hostLabel);
JPanel fields = new JPanel();
fields.setLayout(new GridLayout(4, 1));
final String host = System.getProperty("mail.host", hostField.getText());
hostField.setText(host);
fields.add(hostField);
final String to = System.getProperty("mail.to", toField.getText());
labels.add(toLabel);
fields.add(toField);
final String from = System.getProperty("mail.from", fromField.getText());
fromField.setText(from);
labels.add(fromLabel);
fields.add(fromField);
labels.add(subjectLabel);
fields.add(subjectField);
Box north = Box.createHorizontalBox();
north.add(labels);
north.add(fields);
north.add(attachButton);
north.add(adbButton);
contentPane.add(north, BorderLayout.NORTH);
message.setFont(new Font("Arial", Font.PLAIN, 12));
contentPane.add(jsp, BorderLayout.CENTER);
JPanel south = new JPanel(new FlowLayout());
south.setLayout(new FlowLayout(FlowLayout.CENTER));
south.add(sendButton);
south.add(clearButton);
contentPane.add(south, BorderLayout.SOUTH);
this.pack();
adbButton.addActionListener(new ActionListener()
public void actionPerformed(ActionEvent e)
AddressBook adbook = new AddressBook();
clearButton.addActionListener(new ActionListener()
public void actionPerformed(ActionEvent e)
fromField.setText("");
toField.setText("");
hostField.setText("");
subjectField.setText("");
message.setText("");
attachButton.addActionListener(new ActionListener()
public void actionPerformed(ActionEvent e)
if (fc == null) {
fc = new JFileChooser();
fc.addChoosableFileFilter(new ImageFilter());
fc.setAcceptAllFileFilterUsed(true);
fc.setFileView(new ImageFileView());
fc.setAccessory(new ImagePreview(fc));
fc.setMultiSelectionEnabled(true);
int returnVal = fc.showDialog(Send.this,"Attach File");
File file= fc.getSelectedFile();
//fc.getSelectedFile();
/* JFileChooser fc = new JFileChooser();
int retval = fc.showOpenDialog(Send.this);
fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
fc.setMultiSelectionEnabled(true);
File file = fc.getSelectedFile();*/
DemoSend handler = new DemoSend();
sendButton.addActionListener(handler);
addWindowListener(new WindowAdapter()
public void windowClosing (WindowEvent e)
setSize (600, 500);
show();
public class DemoSend implements ActionListener{
public void actionPerformed(ActionEvent evt) {
try {
final Properties props = new Properties();
props.put("mail.host", hostField.getText());
final Session mailConnection = Session.getDefaultInstance(props, null);
final MimeMessage msg = new MimeMessage(mailConnection);
final Address to = new InternetAddress(toField.getText());
final Address from = new InternetAddress(fromField.getText());
//msg.setContent(message.getText(), "Content-Transfer-Encoding ,base64");
msg.setFrom(from);
msg.setRecipient(Message.RecipientType.TO, to);
msg.setSubject(subjectField.getText());
msg.setSentDate(new java.util.Date());
final MimeBodyPart mbp1 = new MimeBodyPart();
final MimeBodyPart mbp2 = new MimeBodyPart();
mbp1.setContent("Content-Transfer-Encoding", "base64");
mbp1.setText(message.getText());
//if (!FileName.equals("")) {
mbp2.setDisposition(mbp2.ATTACHMENT);
mbp2.setContent("Content-Transfer-Encoding", "base64");
final FileDataSource fds=new FileDataSource(FileName);
mbp2.setDataHandler(new DataHandler(fds));
mbp2.setFileName(fds.getName());
final Multipart mp = new MimeMultipart();
mp.addBodyPart(mbp1);
//if (!FileName.equals("")) {
mp.addBodyPart(mbp2);
msg.setSentDate(new Date());
msg.setHeader("Content-Type", "multipart/mixed");
msg.setContent(mp);
Runnable r = new Runnable() {
public void run() {
try {
Transport.send(msg);
JOptionPane.showMessageDialog(null," Your message has been sent successfuly","G T P Email Client",JOptionPane.INFORMATION_MESSAGE);
catch (Exception e) {
e.printStackTrace();
JOptionPane.showMessageDialog(null," -- E r r o r -- Your message has not been sent!!!!! ","G T P Email Client",JOptionPane.INFORMATION_MESSAGE);
Thread t = new Thread(r);
t.start();
catch (Exception e) {
e.printStackTrace();
} -
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 -
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
Maybe you are looking for
-
Section not visible in the report painter
Hi Gurus, I created a report painter report for showing the P&L statement for a company code. I had to added a new section for calculating the statistical key figures. I was able to display the 2 sections initially, but later after changing some layo
-
Photoshop Web Gallery won't link
Hello everyone. I'm trying to upload my Photoshop web gallery to an email and have had no luck. The gallery gets processed fine and works properly on my desktop but when I try to link it thru mac mail I get a dialog box that says "Cannot send message
-
Finding out Concurrent Users to Apache
Hi there. I'm in the middle of doing a sizing or a Ias, and I was trying to find out how many concurrent/total users are using a server, by analizing a nice 800 mb access_log. The thing is that I was able to find out how many users access a parcitula
-
i have problem with my iphone4s in the icloud ; when i wont too make a ID apple free dis messege apear: Accont Limit Reached This device is no longer eligible for creating a free icloud acoont.What i cant 2 doo???.
-
Hi Experts, I am new to CRM and have some basic questions. It would be a great help, if get the answer for all my queries. 1. What is the role of a CRM functional consultant for an implementation project ? Ex : Service. 2. What all are the possible