oms_error Message:[oms] empty or null xml map request string.

I'm using mapviewer. I create a stored procedure in oracle that uses the utl_http package to make the map request. The omserver response with an error but when i make a map request via internet explorer the server response its ok and show me the correspondent map. This is my pl/sql code it fails in this line:
UTL_HTTP.SET_HEADER(l_http_req, 'Content-Type', 'application/x-www-form-urlencoded');
     UTL_HTTP.SET_HEADER(l_http_req, 'Content-Lenght', LENGTH(map_request));
     UTL_HTTP.SET_HEADER(l_http_req, 'Host', 'cobogis09');
     UTL_HTTP.SET_HEADER(l_http_req, 'Port', '8888');
As you can see it tells to me that the map request string is empty but im sending the map request in the next way:
     UTL_HTTP.WRITE_TEXT(l_http_req, '<?xml version="1.0" encoding="UTF-8"?><map_request datasource="stream" srid="8307" basemap="" width="960" height="768" antialiasing="false" format="GIF_URL" title="Demonstration"></map_request>');
     l_http_resp := utl_http.get_response(l_http_req);
     utl_http.read_text(l_http_resp, l_value);
     response := sys.XMLTYPE.createxml(l_value);
     utl_http.end_response(l_http_resp);
     img_url := response.EXTRACT('/map_response/map_image/map_content/@url').getstringval();
img_url := response.EXTRACT('/map_response/map_image/map_content/@url').getstringval();
obviously because the server response its not ok
the server response is (i get this message in my l_value variable):
<?xml version="1.0" encoding="UTF-8"?><oms_error>Message:[oms] empty or null xml map request string.
Tue Jul 25 10:37:43 GMT-05:00 2006
Severity: 0
Description:
     at oracle.lbs.mapserver.oms.getXMLDocument(oms.java:860)
     at oracle.lbs.mapserver.oms.doPost(oms.java:303)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
     at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:824)
     at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330)
     at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830)
     at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:285)
     at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:126)
     at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
     at java.lang.Thread.run(Thread.java:595)
</oms_error>
What i want to know its why the server says that the map request string is empty. As you can see the map request is not empty, but when i send to the server something happens that sends this map request string empty to the server.
The next is the console of the omserver:
C:\oc4j_extended>cd\
C:\>cd C:\oc4j_extended\j2ee\home
C:\oc4j_extended\j2ee\home>java -hotspot -Xmx512M -jar oc4j.jar
06/07/25 11:00:49 INFO [oracle.lbs.mapserver.oms] oms root path: C:\oc4j_extended\j2ee\home\lbs\mapviewer\web\
06/07/25 11:00:49 Oracle Application Server Containers for J2EE 10g (10.1.2.0.2) initialized
06/07/25 11:00:49 INFO [oracle.lbs.mapserver.core.MapperConfig] using default config file: C:\oc4j_extended\j2ee\home\lbs\mapviewer\web\WEB-INF\conf\mapViewerConfig.xml
06/07/25 11:00:49 WARN [oracle.lbs.mapserver.core.MapperPool] destroying ALL mapmaker instances.
06/07/25 11:00:50 INFO [oracle.lbs.mapserver.core.MapperConfig] setting logging level to finest
06/07/25 11:00:50 Tue Jul 25 11:00:50 GMT-05:00 2006 INFO [oracle.sdovis.CacheMgr2] In memory cache limit set to: 512MB
06/07/25 11:00:50 Tue Jul 25 11:00:50 GMT-05:00 2006 INFO [oracle.lbs.mapserver.core.MapperConfig] Disk-based cache is no longer supported.
06/07/25 11:00:50 Tue Jul 25 11:00:50 GMT-05:00 2006 INFO [oracle.lbs.mapserver.core.MapperConfig] setting proxy to: coboisa01.ag.ad.local:8080
06/07/25 11:00:50 Tue Jul 25 11:00:50 GMT-05:00 2006 FINEST [oracle.lbs.mapserver.core.MapperConfig]
Allowed IPs:
Excluded IPs:
06/07/25 11:00:50 Tue Jul 25 11:00:50 GMT-05:00 2006 ERROR [oracle.lbs.mapserver.core.MapperConfig] ###### [MapperConfig] clear-text passwords in the mapViewrConfig.xml file must be prefixed with a '!' (exclamation mark).
06/07/25 11:00:50 Tue Jul 25 11:00:50 GMT-05:00 2006 INFO [oracle.lbs.mapserver.core.MapperConfig] Map Recycling thread started.
06/07/25 11:00:50 Tue Jul 25 11:00:50 GMT-05:00 2006 INFO [oracle.lbs.mapserver.oms] *** Oracle MapViewer started. ***
06/07/25 11:01:03 Tue Jul 25 11:01:03 GMT-05:00 2006 FINEST [oracle.lbs.mapserver.oms] request.getRemoteUser = jazn.com/admin
06/07/25 11:01:03 Tue Jul 25 11:01:03 GMT-05:00 2006 FINEST [oracle.lbs.mapserver.oms] request= <?xml version="1.0" standalone="yes"?>
<non_map_request>
<add_data_source name="stream"
jdbc_host="cobodata01"
jdbc_sid="stream"
jdbc_port="1521"
jdbc_user="***"
jdbc_password="***"
jdbc_mode="thin"
number_of_mappers="3"/>
</non_map_request>
06/07/25 11:01:03 Tue Jul 25 11:01:03 GMT-05:00 2006 FINEST [oracle.lbs.mapserver.oms] getRequestType: nodeName=add_data_source
06/07/25 11:01:03 Tue Jul 25 11:01:03 GMT-05:00 2006 INFO [oracle.lbs.mapserver.MapServerImpl] adding a map data src [name=stream]
06/07/25 11:01:05 Tue Jul 25 11:01:05 GMT-05:00 2006 FINEST [oracle.sdovis.SRS] loaded 748 geodetic srids.
06/07/25 11:01:05 Tue Jul 25 11:01:05 GMT-05:00 2006 INFO [oracle.sdovis.CacheMgr2] Spatial Data Cache opened. Region=SDOVIS_DATA.
06/07/25 11:01:05 Tue Jul 25 11:01:05 GMT-05:00 2006 INFO [oracle.sdovis.CacheMgr2] max_cache_size=512 MB.
06/07/25 11:01:05 Tue Jul 25 11:01:05 GMT-05:00 2006 INFO [oracle.sdovis.CacheMgr2] sub region sdovis_subreg_gis_jdbc:oracle:thin:@cobodata01:1521:stream created in cache.
06/07/25 11:01:05 Tue Jul 25 11:01:05 GMT-05:00 2006 INFO [oracle.lbs.mapserver.core.MapperPool] added a mapper instance to the pool [data src=stream]
06/07/25 11:01:05 Tue Jul 25 11:01:05 GMT-05:00 2006 INFO [oracle.lbs.mapserver.core.MapperPool] added a mapper instance to the pool [data src=stream]
06/07/25 11:01:06 Tue Jul 25 11:01:06 GMT-05:00 2006 INFO [oracle.lbs.mapserver.core.MapperPool] added a mapper instance to the pool [data src=stream]
06/07/25 11:01:36 Tue Jul 25 11:01:36 GMT-05:00 2006 FINEST [oracle.lbs.mapserver.oms] request.getRemoteUser = null
06/07/25 11:01:36 Tue Jul 25 11:01:36 GMT-05:00 2006 FINEST [oracle.lbs.mapserver.oms] request= null
As you can see the arrive empty to the server, what can be wrong

Hi,
in this map request, it looks that the basemap string is empty.
UTL_HTTP.WRITE_TEXT(l_http_req, '<?xml version="1.0" encoding="UTF-8"?><map_request datasource="stream" srid="8307" basemap="" width="960" height="768" antialiasing="false" format="GIF_URL" title="Demonstration"></map_request>');

Similar Messages

  • XML MAP REQUEST

    hi, I'm using map request on mapviewer this is my XML:
    <map_request
    title="CALI"
    basemap="BASE_CALI"
    datasource = "GEODBSID"
    width="640"
    height="480"
    bgcolor="#a6cae0"
    antialiase="true"
    format="PNG_STREAM">
    <center size="0.15">
    <geoFeature render_style="THEME_DEMO_STATES_LINE"
    radius="1600,4800"
    label="CENTRO"
    text_style="THEME_PRUEBA" >
    <geometricProperty typeName="center">
    <Point>
    <coordinates>-115.156486623806, 41.0518463048808</coordinates>
    </Point>
    </geometricProperty>
    </geoFeature>
    </center>
    When i do click on submit I can see the center point, background (blue) and the tittle but no more, I want to know if I show with a simple XML one table anybody help me ?
    Message was edited by:
    karo

    Hi, its works whit this code
    <?xml version="1.0" standalone="yes"?>
    <map_request
    title="MAPA CALI"
    datasource = "GEODBSID"
    width="504"
    height="594"
    bgcolor="#a6cae0"
    antialiase="false"
    format="PNG_STREAM">
    <themes>
    <theme name="TEMA_VIAL_CALI">
    <jdbc_query
    datasource="GEODBSID"
    jdbc_srid="8307"
    spatial_column="geom"
    render_style="MDSYS:C.RED"
    SELECT geom, CALI_ID from CALI</jdbc_query></theme>
    </themes>
    </map_request>
    be careful whit jdbc_srid, width and height
    Message was edited by:
    karo

  • XML document - request string

    Hi Experts,
    Could you please tell me, how to pass XML document as a request string to the webservice scenario. Inside the service, I have to do the schema validation for the request . Please guide me, how to proceed further?
    Regards
    Sara

    Hi SARA,
    use following Code written in SAX parsing .this will fulfil your requirment.This handle Special character also.
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.io.OutputStreamWriter;
    import java.io.Writer;
    import java.util.ArrayList;
    import java.util.Calendar;
    import java.util.GregorianCalendar;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    import javax.xml.parsers.FactoryConfigurationError;
    import javax.xml.parsers.ParserConfigurationException;
    import javax.xml.parsers.SAXParser;
    import javax.xml.parsers.SAXParserFactory;
    import org.xml.sax.Attributes;
    import org.xml.sax.helpers.DefaultHandler;
    import org.xml.sax.SAXException;
    import com.sap.aii.mapping.api.StreamTransformation;
    import com.sap.aii.mapping.api.StreamTransformationException;
    public class SimpleForwardMappingString extends DefaultHandler implements StreamTransformation
         private List m_arlCurrent = new ArrayList();
         private List m_arlBOList = new ArrayList();
         private List m_arlObjectList = new ArrayList();
        public static int counter = 0;
         String listName = "newList";
         public  StringBuffer m_totalElementsBuffer = new StringBuffer();
         String startData = "<inCanonStream>";
         String endData = "</inCanonStream>";
         private Map param = null;
         /** Constant Strings used in Forward Mapping */
         public static void main(String args[])
              try {
                      InputStream in = new FileInputStream(new File("C:
    Documents and Settings
    281152
    Desktop
    Cannonical12321.xml"));
                   OutputStream out = new FileOutputStream(new File("C:
    Documents and Settings
    281152
    Desktop
    Cannonical21.xmlOut.xml"));               
                   SimpleForwardMappingString myMapping = new SimpleForwardMappingString();
              catch (Exception e)
                   e.printStackTrace();
         public void execute(InputStream arg0, OutputStream arg1)
         throws StreamTransformationException
              Writer out;
              try
                   out = new OutputStreamWriter(arg1, "UTF16");
                   /** Building the SAX parser */
                   getXMLDoc(arg0, arg1);
                   arg1.write(m_totalElementsBuffer.toString().getBytes("UTF16"));
              catch (IOException e)
                   System.out.println("Error : io" + e.getMessage());
              catch (Exception e)
                   System.out.println("Error :" + e.getMessage());
         /* (non-Javadoc)
    @see com.sap.aii.mapping.api.StreamTransformation#setParameter(java.util.Map)
         public void setParameter(Map arg0)
         public void getXMLDoc(InputStream inputStream, OutputStream outputStream)
    Defines a factory API that enables applications to configure and
    obtain a SAX based parser to parse XML documents. Once an application
    has obtained a reference to a SAXParserFactory it can use the
    factory to configure and obtain parser instances.
              SAXParserFactory factory = SAXParserFactory.newInstance();
              try
                   factory.setNamespaceAware(true);
                   factory.setValidating(true);
                   SAXParser saxParser = factory.newSAXParser();
    Parse the content of the given {@link java.io.InputStream}
    instance as XML using the specified
    {@link org.xml.sax.helpers.DefaultHandler}.
    @param inputstream InputStream containing the content to be parsed.
    @param cobject The SAX DefaultHandler to use.
    @exception IOException If any IO errors occur.
    @exception IllegalArgumentException If the given InputStream is null.
    @exception SAXException If the underlying parser throws a
    SAXException while parsing.               
                   saxParser.parse(inputStream, this);
              catch (FactoryConfigurationError e)
                   System.out.println("Error");
              catch (ParserConfigurationException e)
                   e.printStackTrace();
              catch (SAXException e)
                   e.printStackTrace();
              catch (IOException e)
                   e.printStackTrace();
         /** ===========================================================
                             Methods Overriding in SAX Default Handler
              ===========================================================
    Receive notification of the beginning of the document.
    By overriding this method in a subclass to take specific actions
    at the beginning of a document (such as allocating the root node
    of a tree or creating an output file)     
         public void startDocument()throws SAXException
              if(m_totalElementsBuffer.length()>0)
                                m_totalElementsBuffer = new StringBuffer();
                                counter = 0;
              m_totalElementsBuffer.append(m_prologue);
              m_totalElementsBuffer.append(m_nameSpace);
              m_totalElementsBuffer.append(startData);     }
    Receive notification of the end of the document.
    By overriding this method in a subclass to take specific
    actions at the end of a document (such as finalising a tree
    or closing an output file)     
         public void endDocument()throws SAXException
              m_totalElementsBuffer.append(endData);
              m_totalElementsBuffer.append(m_rootElementEnd);
    Receive notification of the start of an element.
    By overriding this method in a subclass to take specific
    actions at the start of each element (such as allocating
    a new tree node or writing output to a file)
         public void startElement(String namespaceURI, String name, String qName, Attributes attrs)
              throws SAXException
              /** If current List is not empty then append node to StringBuffer */
                   m_totalElementsBuffer.append("&lt;" + name + "&gt;");
    Receive notification of the end of an element.
    By overriding this method in a subclass to take specific
    actions at the end of each element (such as finalising
    a tree node or writing output to a file)
         public void endElement(String uri, String name, String qName) throws SAXException
                   m_totalElementsBuffer.append("&lt;/" + name + "&gt;");
    Receive notification of character data inside an element.
    By overriding this method to take specific actions for each
    chunk of character data (such as adding the data to a node
    or buffer, or printing it to a file)     
         public void characters(char buf[], int offset, int len)
              throws SAXException
              String s = new String(buf, offset, len);
              if (null != s && s.length() >0)
                   if(s.equalsIgnoreCase("&"))
                         //System.out.println("FOUND AND SYMBOL");
                         String s1 = s.replaceAll("&","_-#_");
                         //System.out.println("s= " +s1);
                         s = s1;
                   if(s.equalsIgnoreCase("<"))
                         //System.out.println("FOUND AND SYMBOL");
                         String s1 = s.replaceAll("<","_#-_");
                         //System.out.println("s= " +s1);
                         s = s1;
                   m_totalElementsBuffer.append(s);
    Thanks
    Sunil Singh

  • Display Error message in Empty grid

    Hi All,
    A query again !!!
    I have an AdvancedDataGrid , in which I want to show an error msg , No Records found , if my dataprovider is null.
    I dont want to show an alert.
    Want to display a message in empty grid.
    How can I do that,if someone can help?
    Thanks in Advance
    Ashudeep

    It depends on why the dataProvider is null.
    If your remote object has not returned data, you can detect that in its result handler, and then manually construct a data item that has a message in one of the fields, but null in the rest.
    If this post answers your question or helps, please mark it as such.

  • Question about XML mapping to ABAP internal table

    Hi experts.
    I'm trying to XML mapping. But it doesn't work well. Assume there are XML file as below.
    <HEADER>
      <ITEM>
        <FOO>123</FOO>
        <BAR>ABC</BAR>
      </ITEM>
      <ITEM>
        <FOO>456</FOO>
        <BAR>DEF</BAR>
      </ITEM>
    <HEADER>
    and I want to trasformation it as below.
    ITAB
    FOO       |      BAR
    123         |  ABC
    456         | DEF
    How could I trasformation using "call transformation"?
    Regards.

    Hi,
    REPORT  zind_xml_to_sap NO STANDARD PAGE HEADING.
    Data Declaration                                                    *
    DATA: client      TYPE REF TO if_http_client, "Interface
          host        TYPE string,
          port        TYPE string,
          proxy_host  TYPE string,
          proxy_port  TYPE string,
          path        TYPE string,
          scheme      TYPE i,
          xml         TYPE xstring,
          response    TYPE string.
    DATA: t_xml       TYPE smum_xmltb OCCURS 0 WITH HEADER LINE.  "XML Table structure used
                                                                  "for retreive and output XML doc
    DATA: g_stream_factory TYPE REF TO if_ixml_stream_factory.    "Interface
    DATA : return  LIKE  bapiret2 OCCURS 0 WITH HEADER LINE.      "XML Table structure used for retreive
                                                                  "and output XML doc
    Parameters                                                          *
    PARAMETER : p_add TYPE string LOWER CASE ,
                p_dfile   LIKE rlgrap-filename.
    AT Selection-Screen on value-request for file                       *
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_dfile.
    Get file
      PERFORM 100_get_file.
    Start-of-Selection                                                  *
    START-OF-SELECTION.
    Perform to upload xml data from URL to SAP internal table
      PERFORM 200_xml_upload.
      IF t_xml[] IS NOT INITIAL.
      Perform to Download data from Internal Table to a text file in local drive
        PERFORM 300_download.
        write : / 'Data Uploaded to Internal Table Successfully'.
        write : / 'XML Data Downloaded to Local path', p_dfile.
      else.
        write : / 'No Data for upload'.
      ENDIF.
    *if t_xml[] is INITIAL.
    WRITE : address, 'Given URl cannot be Converted' .
    else.
    LOOP AT t_xml .
       WRITE:  t_xml-cname, t_xml-cvalue.
    ENDLOOP.
    endif.
    *&      Form  get_file
          Get File
    FORM 100_get_file .
      CALL FUNCTION 'F4_FILENAME'
      EXPORTING
        PROGRAM_NAME        = SYST-CPROG
        DYNPRO_NUMBER       = SYST-DYNNR
        FIELD_NAME          = ' '
       IMPORTING
         file_name           = p_dfile
    ENDFORM.                    " 100_get_file
    *&      Form  200_xml_upload
          form to upload xml data from URL to SAP internal table
    FORM 200_xml_upload .
    *Check HTTP:// and concatenate
      IF p_add NS 'http://' OR p_add NS 'HTTP://'.
        CONCATENATE 'http://' p_add
                    INTO p_add.
      ENDIF.
    Fetching the address of the URL
      CALL METHOD cl_http_client=>create_by_url
        EXPORTING
          url    = p_add
        IMPORTING
          client = client.
    *Structure of HTTP Connection and Dispatch of Data
      client->send( ).
    *Receipt of HTTP Response
      CALL METHOD client->receive
        EXCEPTIONS
          http_communication_failure = 1
          http_invalid_state         = 2
          http_processing_failed     = 3
          OTHERS                     = 4.
      IF sy-subrc <> 0.
        IF sy-subrc = 1.
          MESSAGE 'HTTP COMMUNICATION FAILURE' TYPE 'I' DISPLAY LIKE 'E'.
          EXIT.
        ELSEIF sy-subrc = 2.
          MESSAGE 'HTTP INVALID STATE' TYPE 'I' DISPLAY LIKE 'E'.
          EXIT.
        ELSEIF sy-subrc = 3.
          MESSAGE 'HTTP PROCESSING FAILED' TYPE 'I' DISPLAY LIKE 'E'.
          EXIT.
        ELSE.
          MESSAGE 'Problem in HTTP Request' TYPE 'I' DISPLAY LIKE 'E'.
          EXIT.
        ENDIF.
      ENDIF.
    Get data of the xml to Response
      response = client->response->get_cdata( ).
    *FM converting the XML format to abap
      CALL FUNCTION 'SCMS_STRING_TO_XSTRING'
        EXPORTING
          text   = response
        IMPORTING
          buffer = xml.
    *FM converting XMl to readable format to a internal table.
      CALL FUNCTION 'SMUM_XML_PARSE'
        EXPORTING
          xml_input = xml
        TABLES
          xml_table = t_xml
          return    = return.
    ENDFORM.                    " 200_xml_upload
    *&      Form  300_download
    *form to Download data from Internal Table to a text file in local drive
    FORM 300_download .
      DATA filename TYPE string.
      filename = p_dfile.
      CALL FUNCTION 'GUI_DOWNLOAD'
      EXPORTING
        filename                        = filename
        WRITE_FIELD_SEPARATOR           = 'X'
      TABLES
        data_tab                        = t_xml
    EXCEPTIONS
       FILE_WRITE_ERROR                = 1
       NO_BATCH                        = 2
       GUI_REFUSE_FILETRANSFER         = 3
       INVALID_TYPE                    = 4
       NO_AUTHORITY                    = 5
       UNKNOWN_ERROR                   = 6
       HEADER_NOT_ALLOWED              = 7
       SEPARATOR_NOT_ALLOWED           = 8
       FILESIZE_NOT_ALLOWED            = 9
       HEADER_TOO_LONG                 = 10
       DP_ERROR_CREATE                 = 11
       DP_ERROR_SEND                   = 12
       DP_ERROR_WRITE                  = 13
       UNKNOWN_DP_ERROR                = 14
       ACCESS_DENIED                   = 15
       DP_OUT_OF_MEMORY                = 16
       DISK_FULL                       = 17
       DP_TIMEOUT                      = 18
       FILE_NOT_FOUND                  = 19
       DATAPROVIDER_EXCEPTION          = 20
       CONTROL_FLUSH_ERROR             = 21
       OTHERS                          = 22
      IF sy-subrc <> 0.
         MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.

  • ExcelXML mapping---problem with XML maps in Excel sheet

    Hi Friends,
    I have one issue with ExcelXML mapping in Xcelsius.
    The problem is I have designed one dashboard using ExcelXML mapping and everything is working fine but I was afraid that  I could not able to find the mappings which were embedded in Excel.It happened many times.What I was doing is everytime Im re-mapping.I could be a big problem for me to do this procedire for everytime.How to recover my XML maps into excel sheet.Can anyone please provide the solution to achieve this.

    Shouldnt it be equivalent ? I mean, as far as I know the ns0: shouldnt be a problem
    when you have a namespace in the message then you need to associate it with some prefix....since ns0 (or any other prefix) is not present you are getting the error....having the namespace but not ns0 is the problem.
    XMLAnonymizer bean may help you to add the namespace prefix...

  • InterConnect - FTP adapter:Message queue empty

    Hi,
    I have installed oracle InterConnect 9.0.4.
    The send point and receive end point are configured as separate folders
    ota.send.endpoint=ftp://hcsdlx01/interexample/sender/
    ota.receive.endpoint=ftp://hcsdlx01/interexample/receiver
    We have placed an xml file at the sender location.
    And trying to retrieve at reciever end point
    But we are getting a message saying message queue empty in the oailog.txt
    can anyone shed the possible sources of error.
    Regards
    Venkat

    Finally succeeded in spotting error.
    The FTP adapter.ini file was not configured properly
    The point is that The send point and receive points should be as per the file system.
    In our case the endpoint as we see in browser say:
    ftp://example/endpoint
    but in the file in Unix server was
    <dir1>/<dir2>/endpoint
    In the adapter.ini we changed to endpoint = <dir1>/<dir2>/endpoint.
    It started working properly,
    Thank u marcus

  • How to check if message is empty in Integration Process

    Hi!
    I have Integration Process with container object OUT_CR This type of message I get from another message using xsl-mapping. The point is that result message can be empty (only message header - "<MT_1C_BXY_CR/>").
    In Integration Process I place the step Switch where I use condition to determine if my message is empty and if it's not - to send it to receiver system.
    I'm beginner in PI and it's the first time I try to use Condition Editor. I tried to put condition like "EX OUT_CR./p1:MT_1C_BXY_CR/ONE" but it doesn't work.
    Could you advise me how can I check If the message is empty using Condition Editor in IP? Or may be any tutorial on working with Condition Editor in PI?

    you might have to try the XSL function exists - http://www.w3schools.com/xpath/xpath_functions.asp
    Try the EX operator as shown in this blog Customise your 'XPATH' Expressions in Receiver Determination

  • XML MAPPING - swf not updating

    When I make a change to the xml file it is not picking up the change in my published swf file.  When I open the project in CX and refresh the mapping updates.
    So it is connected but when I click on "refresh" on the sxf it is not updating.
    I have xml maps, added in the data connection manager, with a refresh button tied to the xml connection.  I also have the refresh on load checked in the connection manager.
    Need help.
    Thanks
    Mark

    Shamim my scenario was that I wanted the SWF on a network so that a call center employee could access the file from a mapped drive, open the file direct on her/his client machine.  My problem was that I developed the file on the server machine and mapped the data connection path to the XML initially from the server, not the scenario of a client machine's path looking for the file. (not sure if cache is the right term)
    Initial Path from server development..  D:\Datafiles\data.xml
    The client machine(s) network path, mapped drive was Z: for example.  In the excelsius model you need to bind the data path to the excel model and hardcode the Path that the client machines will go thru to access the data.  This solved my issue perfectly.  Z or name of the mapped drive mapped to the server.
    Z:\Datafiles\data.xml
    So now if your on the server machine and try to open the file from the swf you will incur the error message that correlates to the swf not being able to find the data.  From the clients works fine but not from the server machine as the path has to be exact for the swf to find the data file.
    Hope this helps.
    I have a question for trying to deploy this same example on th server embedded into a swf movie player to the web.  Might have been my path issue, cross domain policy file... But I could not get it to be deployed in a website, live.  If you are familiar with this please explain to me.
    Regards,
    Mark

  • Xpath Debatching in Orchestration -The part 'part' of message 'Message_In_Copy' contained a null value at the end of the construct block

    Hi ,
    Facing strange issue in Xpath debatching in Orchestration.
    Getting following error in construct shape:
    The part 'part' of message 'Message_In_Copy' contained a null value at the end of the construct block
    Code inside the construct block:
    sXpath = System.String.Format("/*[local-name()='Customers' and namespace-uri()='http://Debatch.Customer']/*[local-name()='Customer' and namespace-uri()='http://Debatch.Customer' and position()={0}]", nLoopCount);
    System.Diagnostics.Debug.WriteLine(sXpath);
    Message_In_Copy= xpath(Message_In, sXpath);
    Schema used:
    <?xml version="1.0" encoding="utf-16"?>
    <xs:schema xmlns="http://Debatch.Customer" xmlns:b="http://schemas.microsoft.com/BizTalk/2003" targetNamespace="http://Debatch.Customer" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="Customers">
    <xs:complexType>
    <xs:sequence>
    <xs:element minOccurs="0" maxOccurs="unbounded" name="Customer">
    <xs:complexType>
    <xs:sequence>
    <xs:element name="name" type="xs:string" />
    <xs:element name="id" type="xs:string" />
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    </xs:schema>
    Can anyone help me out ? to identify the root cause for above issue.
    Thanks,
    Kind Regards,
    girsh
    girishkumar.a

    I agree with Shankycheil here, querying XPath will return XMLNode and thus can't be assigned to XMLNode.
    But for debatching in Orchestration using Xpath is not a very good idea. 
    Because using XPATH loads the complete message in memory(XML Structure) and then performs processing.
    This approach is always prone to throwing Out of Memory exception and low in performance also.
    Therefore I would suggest you to perform debatching by calling XML Disassembler(XMLReceive) pipeline.
    As pipeline works with Stream it will have better performance and you will also get complete control over the messages.
    Refer the below samples for debatching using XML Receive pipeline within Orchestration.
    Comparrison between XPATH and ReceivePipeline for Debatching:-
    De-batching within an orchestration using XPath or calling a pipeline
    Debatching within Orchestration using Pipeline-
    http://tech-findings.blogspot.in/2013/07/debatchingsplitting-xml-message-in.html 
    https://jeremyronk.wordpress.com/2011/10/03/how-to-debatch-into-an-orchestration-with-a-pipeline/
    Thanks,
    Prashant
    Please mark this post accordingly if it answers your query or is helpful.

  • How to handle source empty field in FDM maps

    Dear all,
    In our projects, data was extracted from EBS with ERPi adapters to HFM through FDM. In this case, some source fields are empty after the data extraction from EBS. The problem is, how can I deal with the empty field in the maps. For now, the workaround is using wildcard (like *->[None]), sth like that. But there is a risk in it, it may happen to ignore some records with error. Do your guys know any special characters stand for the Null in the mapping?
    Thanks!

    We have had a workaround solution since moving to V11. This was not a problem in System 9.
    The issue with blanks not defaulting to [None] is that some values escape the test. Such as forcing default values using "Like (* = [None])". If a new code is in your data that is not in your map, the Validation process foiled since [None] is valid and all blanks are now [None]. Only then do you either have an intersection violation that shows up during Export or you get bad data in HFM.
    I don't like this new "feature" in S11 FDM. We will be submitting a request to have the default functionality added back. Perhaps as an option?
    Mike

  • XML mapped directly into dbtable

    Hi guys,
    I've one doubt related to xml mapping. I've searched and read lots of posts on the forum about XML, but the doubt is still remaining...
    Imagine I have a XML response to an webservice and I'd like to pass it to an dbtable.
    I know I can use DOM to parse the xml, and I've even seen I can build a table based on hierarchies nodes, but what I'd like to know is if it's possible to pass all the content from the XML directly to my dbtable.
    Why do I want to do this? Because the xml which is sent is really huge, and if I'd have to parse it, there would be tons of abap code.... So, I'd like to pass it directly to my table...
    I could validate the xml with a DTD and then if there were no errors, I would pass it directly to the dbtable...
    Is there any way of doing it?
    I'm really thankful for your answers....

    Hi,
    If you are looking at passing the whole XML response into a field in the target, this would be simple.
    Convert the InputStream ( In Java Mapping) into a string and pass it to the String.
    You can use this code to convert InputStream to string,
    In this code, <b>in</b> is the inputstream to the execute() of java mapping,
    BufferedReader inp = new BufferedReader(new InputStreamReader(in));
    StringBuffer buffer = new StringBuffer();
    String line="";
    while ((line = inp.readLine()) != null) {
    buffer.append(line);
    String  source=buffer.toString();
    is this what you are looning at?
    Regards,
    Bhavesh

  • Copy of source message to an element with graphical mapping

    Hi all,
    Is there a way to copy the complete source message of a mapping to an element of the destination message (with CDATA) with the graphical mapping (or UDF, but I want to avoid XSL) ?
    For example, from this message:
    <source>
      <element>test</element>
      <element2>test2</element2>
    </source>
    I expect the following result:
    <dest>
      <data><![CDATA[<source><element>test</element><element2>test2</element2></source>]]>
      </data>
    </dest>
    Thanks for your help.
    Greg

    Hi,
    Use this Simple Concept
    XML node into a string with graphical mapping
    /people/michal.krawczyk2/blog/2005/11/01/xi-xml-node-into-a-string-with-graphical-mapping
    Regards
    Seshagiri

  • Source selection is empty due to inverse mapping

    Hi Experts,
    When execute data collection task, one of Cons unit got the below error.
    "Source selection is empty due to inverse mapping" Message no. UCT8250.
    I checked BI mapping rules and also compare mapping rules in LDS with other cons unit.  There is no change in mapping rules in LDS and nothing had changed in BI mapping rules.
    This is error is shown for one cons unit only, for all remaining task run successfully.  Please explain me how to overcome from this.
    NB: Data collection method was Load from data streams.

    Hi Madhu,
    Please could you elaborate on the master data field in BI (RSA1) as I could see SAP note 751686 to bypass the error message, as the error could be due to incomplete data for the respective company.
    Awaiting your early response
    Regards,

  • Xml-map

    Hi,
    Could somebody help me to create an xml-map for this
    Input Soap Message:
    <ns1:processPaymentRequestElement xmlns:ns1="http://globalops.hp.com/card">
    <ns1:CardHolderName></ns1:CardHolderName>
    <ns1:CreditCardNumber></ns1:CreditCardNumber>
    <ns1:ExpirationMonth></ns1:ExpirationMonth>
    <ns1:ExpirationYear></ns1:ExpirationYear>
    <ns1:ProcessAmount></ns1:ProcessAmount>
    </ns1:processPaymentRequestElement>
    Method Signature:
    public Document processRequest(Document dom)
    Any help will be deeply appreciated..
    Thanks,
    Ranjith Pillai

    Hi, its works whit this code
    <?xml version="1.0" standalone="yes"?>
    <map_request
    title="MAPA CALI"
    datasource = "GEODBSID"
    width="504"
    height="594"
    bgcolor="#a6cae0"
    antialiase="false"
    format="PNG_STREAM">
    <themes>
    <theme name="TEMA_VIAL_CALI">
    <jdbc_query
    datasource="GEODBSID"
    jdbc_srid="8307"
    spatial_column="geom"
    render_style="MDSYS:C.RED"
    SELECT geom, CALI_ID from CALI</jdbc_query></theme>
    </themes>
    </map_request>
    be careful whit jdbc_srid, width and height
    Message was edited by:
    karo

Maybe you are looking for