Xml doc as a return value of an RPC-style SOAP call

Hi all,
Which is the best way of having an xml Document returned as the result of
the execution of an RPC-style SOAP call ?
My distributed service currently returns an xml Document and i would like to
make it web/http available without an unaffordable cost (i.e. double
parsing, two much memory consumtion, etc.).
Is there anyway i can mark my service return as an internal xml in the xml
soap response (and therefore, for instance, be able to apply specific schema
validation processes in the client side).
Thanks in advance

You do need to write xmlReadObj.toXMLString() to file to update it with the new value. Here's how I do it in xtools/xlib/stdlib.js:
Stdlib.writeXMLFile = function(fptr, xml) {
  var rc;
  if (!(xml instanceof XML)) {
    Error.runtimeError(19, "xml"); // "Bad XML parameter";
  var file = Stdlib.convertFptr(fptr);
  file.encoding = "UTF8";
  rc = file.open("w", "TEXT", "????");
  if (!rc && Stdlib.IOEXCEPTIONS_ENABLED) {
    Error.runtimeError(Stdlib.IO_ERROR_CODE, Stdlib.fileError(file));
  // unicode signature, this is UTF16 but will convert to UTF8 "EF BB BF"
  // optional
  //file.write("\uFEFF");
  file.lineFeed = "unix";
  file.writeln('<?xml version="1.0" encoding="utf-8"?>');
  rc = file.write(xml.toXMLString());
  if (!rc && Stdlib.IOEXCEPTIONS_ENABLED) {
    Error.runtimeError(Stdlib.IO_ERROR_CODE, Stdlib.fileError(file));
  rc = file.close();
  if (!rc && Stdlib.IOEXCEPTIONS_ENABLED) {
    Error.runtimeError(Stdlib.IO_ERROR_CODE, Stdlib.fileError(file));
  return file;
The error handling code is in there because it's easier to track down IO problems when they occur.

Similar Messages

  • XML - ORA-19025: EXTRACTVALUE returns value of only one node

    Hi,
    I am new to XML DB. Can somebody help me with the below XML
    I use the following XML ... (I have pasted only a part of it coz i require data only till this section )
    XML
    <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-
    instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><SOAP-ENV:Body>
    <ns:PicklistWS_GetPicklistValues_Output xmlns:ns="urn:crmondemand/ws/picklist/">
    <ListOfParentPicklistValue xmlns="urn:/crmondemand/xml/picklist">
    <ParentPicklistValue>
    <Language>ENU</Language>
    <ParentFieldName>plProduct_Team</ParentFieldName>
    <ParentDisplayValue>Marketing On Demand</ParentDisplayValue>
    <ParentCode>Marketing On Demand</ParentCode>
    <Disabled>N</Disabled>
    <ListOfPicklistValue>
    <PicklistValue>
    <Code>OCP/SME Escalation</Code>
    <DisplayValue>OCP/SME Escalation</DisplayValue>
    <Disabled>N</Disabled>
    </PicklistValue>
    <PicklistValue>
    <Code>Fusion Request</Code>
    <DisplayValue>Fusion Request</DisplayValue>
    <Disabled>N</Disabled>
    </PicklistValue>
    Code
    SELECT distinct
    EXTRACTVALUE(VALUE(SR), '/ParentPicklistValue/ListOfPicklistValue/PicklistValue/Code','xmlns="urn:/crmondemand/xml/picklist"') AS Display,
    EXTRACTVALUE(VALUE(SR),'/ParentPicklistValue/ListOfPicklistValue/PicklistValue/DisplayValue','xmlns="urn:/crmondemand/xml/picklist"') AS Return,
    EXTRACTVALUE(VALUE(SR),'/ParentPicklistValue/ParentDisplayValue','xmlns="urn:/crmondemand/xml/picklist"') AS parent_display,
    EXTRACTVALUE(VALUE(SR),'/ParentPicklistValue/ParentCode','xmlns="urn:/crmondemand/xml/picklist"') AS parent_return
    FROM TABLE(XMLSEQUENCE(EXTRACT(
    WEB_SERVICE('<?xml version="1.0" encoding="UTF-8" standalone="no"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <soap:Body>
    <PicklistWS_GetPicklistValues_Input xmlns="urn:crmondemand/ws/picklist/">
    <FieldName>Type</FieldName>
    <RecordType>Service Request</RecordType>
    </PicklistWS_GetPicklistValues_Input>
    </soap:Body>
    </soap:Envelope>'
    ,'document/urn:crmondemand/ws/picklist/:GetPicklistValues', Sessionid),
    '/soap:Envelope/soap:Body/*/*/*','xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/'))) SR
    ERROR
    ORA-19025: EXTRACTVALUE returns value of only one node
    UNDERSTANDING
    As my Xpath points only until the node - ParentPicklistValue and not the child nodes under it. Hence when i try to query the child nodes - /ParentPicklistValue/ListOfPicklistValue/PicklistValue/Code, I recieve the above mentioned error.
    REQUIREMENT
    Can somebody help me to recieve the Parent values and also its child values based on the above query and xml.

    Hi,
    That's a classic ;)
    You need a second XMLSequence that will shred the collection of PicklistValue into relational rows :
    select extractvalue(value(sr2), '/PicklistValue/Code', 'xmlns="urn:/crmondemand/xml/picklist"') AS Display
         , extractvalue(value(sr2), '/PicklistValue/DisplayValue', 'xmlns="urn:/crmondemand/xml/picklist"') AS Return
         , extractvalue(value(sr1), '/ParentPicklistValue/ParentDisplayValue', 'xmlns="urn:/crmondemand/xml/picklist"') AS parent_display
         , extractvalue(value(sr1), '/ParentPicklistValue/ParentCode', 'xmlns="urn:/crmondemand/xml/picklist"') AS parent_return
    from table(
           xmlsequence(
             extract( WEB_SERVICE( ... )
                    , '/soap:Envelope/soap:Body/ns:PicklistWS_GetPicklistValues_Output/ListOfParentPicklistValue/ParentPicklistValue'
                    , 'xmlns="urn:/crmondemand/xml/picklist"
                       xmlns:ns="urn:crmondemand/ws/picklist/"
                       xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"' )
         ) sr1
       , table(
           xmlsequence(
             extract( value(sr1)
                    , '/ParentPicklistValue/ListOfPicklistValue/PicklistValue'
                    , 'xmlns="urn:/crmondemand/xml/picklist"' )
         ) sr2
    ;What's your database version BTW?
    On 10.2 and up, you may use XMLTable instead.

  • Call script in a workflow and get return value?

    hello
    I want create a workflow to check some attribute in IDM
    like for the home directory, use the workflow call some script to check there is enough space in the server? and the folder is almost there or not?
    then get the return value like if no enought space, call some other form let the admin input some new home directory string
    So I want to know how a workflow work with scipt file?
    I also use some after create action script, but it looks only can get some error message and shows in th IDM.

    This should help you:
    http://www.devdaily.com/java/edu/pj/pj010016/pj010016.shtml
    Note that the command will be executed by the application server user so check if it has sufficient rights.
    Ben

  • Need help on processing XML doc using Java store procedure

    I am currently working on project to read, parse XML document and store data in XML document into database columns. I use JAVA API-OracleXMLSave in my java store procedure to do it, which use URL of XML doc to read, parse doc and store the data to database columns. My java store procedure works fine when XML doc is saved in server, but got "ORA-29532: Java call terminated by uncaught Java exception:
    oracle.xml.sql.OracleXMLSQLException: No such file or directory" if XML doc is in client's PC instead of in server. I think the problem comes from the URL that created using OracleXMLSave
    --createURL(fileName) based on the filename. what will be the filename if XML document located in Client PC like C:\myprojects\xmldoc.xml?
    Thank you in advance if anyone can give some hints.

    I am currently working on project to read, parse XML document and store data in XML document into database columns. I use JAVA API-OracleXMLSave in my java store procedure to do it, which use URL of XML doc to read, parse doc and store the data to database columns. My java store procedure works fine when XML doc is saved in server, but got "ORA-29532: Java call terminated by uncaught Java exception:
    oracle.xml.sql.OracleXMLSQLException: No such file or directory" if XML doc is in client's PC instead of in server. I think the problem comes from the URL that created using OracleXMLSave
    --createURL(fileName) based on the filename. what will be the filename if XML document located in Client PC like C:\myprojects\xmldoc.xml?
    Thank you in advance if anyone can give some hints.

  • PE03 - Cannot directly enter return values

    Hi all,
    I have a simple feature, the first decision is based on field PERSK (employee sub group) with offset 0 length 1.
    I wish to enter directly custom return values such as 1, 2, 3, 4, 5.
    But it is forcing me to pick return values from an F4 style pop up.
    The problem with using the F4 pop up is currently only Employee sub groups 1* and 2* are configured.
    Hence I cannot enter 3, 4 and 5, because 3, 4 5* employee sub groups are not yet configured in the system.
    I've checked other existnig features (e.g. QUOMO) and they do allow my to directly key in custom return values in a pop up box, regardless of whether they exist in the system or not.
    Any idea why I can do this is one feature and not another feature?
    I need to key in directly my own values.
    Thanks
    Kevin

    Problem solved (not really solved but i found the reason why its happening this way).
    Each feature is making use of a different structure
    It is called "Structure name for decision fields"
    (PE03 -> Attributes -> Struct)
    QUOMO uses structure PME87 which had no check table against its PERSK field (SE11)
    My custom feature was using another structure which had a check table against its PERSK field (SE11)
    After debugging PE03 I realize that if there is a check table, it will enforce a F4 style drop down when creating return values from a decision in the feature.
    Thanks all.
    Kevin

  • Format XML doc based on values in another xml doc

    Database version : Oracle 10g
    I have an XML "data" file and an associated error file that is also XML. I want to take the XML data file and highlight visually in a html file only those fields and contents that are there in the "error" file.
    There are many fields in the data file so the error could be just about anywhere. Can someone please tell me what I should read or give me some direction on how I should proceed?
    I built a style sheet for the "data" file - but obviously that is static. Do i need 2 stylesheets and apply them both somehow? I was also thinking that I would use the "error" xml doc and just rewrite the error nodes in the "data" file and then use the style sheet to mark up the data file based on what i rewrite.
    eg
    if the data is say
    <field1>content of field 1</field1>
    and the error file has field1 in it, I would rewrite the data file to have say <error>content of field 1</error> and just mark up the <error> using the stylesheet. Is that a sensible solution? Even then I need help on the actual xml/sql functions i need to rewrite the xml data.
    I am a rank beginner in this and I apologize - This seems such a newbie question that must have been asked before - I just wish I could find it in the forum.
    Thank you!
    Edited by: user13112667 on Oct 15, 2010 12:38 PM

    Thanks for the samples.
    A couple of options I can think of :
    - XSL transformation (as you first thought of too)
    - XQuery
    Below is a test script that implements both solutions :
    DECLARE
    datadoc xmltype := xmltype(
    '<HII>
    <HII_SEQ_NUM>6084997</HII_SEQ_NUM>
    <HII_RECORD_ID>HII</HII_RECORD_ID>
    <HII_DOC_TYPE>INV</HII_DOC_TYPE>
    <HII_WSLR_ID>XXXXX</HII_WSLR_ID>
    <HII_WSLR_ABBR>COM</HII_WSLR_ABBR>
    <HII_CUST_NBR>096636</HII_CUST_NBR>
    <HII_INV_DATE>100203</HII_INV_DATE>
    <HII_INV_NUMB>829608-1102</HII_INV_NUMB>
    <HII_ORD_NUMB>830412</HII_ORD_NUMB>
    <HII_TP_ID>007839602</HII_TP_ID>
    <HII_WSLR_DUNS>000073669</HII_WSLR_DUNS>
    <HII_TRANS_TYPE>DI</HII_TRANS_TYPE>
    <HII_CAVN_ID>77873</HII_CAVN_ID>
    <HII_VER_NUM>22</HII_VER_NUM>
    </HII>'
    errordoc xmltype := xmltype(
    '<document>
    <error>
    <segment>HII</segment>
    <element>HII_INV_DATE(Inv Date)</element>
    <msg>Invoice date must be in the format yyyymmdd</msg>
    <data>100203</data>
    </error>
    <error>
    <segment>HII</segment>
    <element>HII_TP_ID(TP ID)</element>
    <msg>Data must be 12 digits long</msg>
    <data>007839602</data>
    </error>
    </document>'
    xsldoc xmltype := xmltype(
    '<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:output method="html" version="4.0"/>
    <xsl:template match="/">
    <HTML>
      <BODY>
       <STYLE type="text/css">
        <![CDATA[
        TR.err { background-color: red }
        TD { border: 1px solid }
        TABLE { border-collapse: collapse }
        ]]>
       </STYLE>
       <TABLE>
       <xsl:apply-templates select="root/datafile/HII/*"/>
       </TABLE>
      </BODY>
    </HTML>
    </xsl:template>
    <xsl:template match="HII/*">
    <xsl:variable name="msg" select="/root/errorfile/document/error[segment=name(current()/..) and substring-before(element,''('')=name(current())]/msg"/>
    <TR>
      <xsl:if test="$msg"><xsl:attribute name="class">err</xsl:attribute></xsl:if>
      <TD><xsl:value-of select="name(.)"/></TD>
      <TD><xsl:value-of select="."/></TD>
      <TD><xsl:value-of select="$msg"/></TD>
    </TR>
    </xsl:template>
    </xsl:stylesheet>'
    html_res1 clob;
    html_res2 clob;
    BEGIN
    -- XSL Transformation
    SELECT XMLTransform(
      xmlelement("root",
       xmlconcat( xmlelement("datafile",datadoc),
                  xmlelement("errorfile",errordoc) )
      xsldoc
    ).getClobVal()
    INTO html_res1
    FROM dual;
    -- XQuery
    SELECT XMLQuery(
      '<HTML>
        <BODY>
         <STYLE type="text/css">
          TR.err {{ background-color: red }}
          TD {{ border: 1px solid }}
          TABLE {{ border-collapse: collapse }}
         </STYLE>
         <TABLE>
          for $i in $d/HII/*
          let $n := name($i)
          let $v := $i/text()
          let $msg := xs:string($e/document/error[segment=name($i/..) and substring-before(element,"(")=$n]/msg)
          return
            element TR {
              if ($msg) then
                attribute class {"err"}
              else (),
              <TD>{$n}</TD>,
              <TD>{$v}</TD>,
              <TD>{ $msg }</TD>
         </TABLE>
        </BODY>
       </HTML>'
      passing datadoc as "d",
              errordoc as "e"
      returning content
    ).getClobVal()
    INTO html_res2
    FROM dual;
    END;
    /Same principle for the two methods : looping through the data document and searching for a matching occurrence in the error document using XPath.
    It produces an HTML document (html_res1 and html_res2) like this :
    <HTML>
    <BODY>
      <STYLE type="text/css">
        TR.err { background-color: red }
        TD { border: 1px solid }
        TABLE { border-collapse: collapse }
        </STYLE>
      <TABLE>
       <TR>
        <TD>HII_SEQ_NUM</TD>
        <TD>6084997</TD>
        <TD></TD>
       </TR>
       <TR>
        <TD>HII_RECORD_ID</TD>
        <TD>HII</TD>
        <TD></TD>
       </TR>
       <TR>
        <TD>HII_DOC_TYPE</TD>
        <TD>INV</TD>
        <TD></TD>
       </TR>
       <TR>
        <TD>HII_WSLR_ID</TD>
        <TD>XXXXX</TD>
        <TD></TD>
       </TR>
       <TR>
        <TD>HII_WSLR_ABBR</TD>
        <TD>COM</TD>
        <TD></TD>
       </TR>
       <TR>
        <TD>HII_CUST_NBR</TD>
        <TD>096636</TD>
        <TD></TD>
       </TR>
       <TR class="err">
        <TD>HII_INV_DATE</TD>
        <TD>100203</TD>
        <TD>Invoice date must be in the format yyyymmdd</TD>
       </TR>
       <TR>
        <TD>HII_INV_NUMB</TD>
        <TD>829608-1102</TD>
        <TD></TD>
       </TR>
       <TR>
        <TD>HII_ORD_NUMB</TD>
        <TD>830412</TD>
        <TD></TD>
       </TR>
       <TR class="err">
        <TD>HII_TP_ID</TD>
        <TD>007839602</TD>
        <TD>Data must be 12 digits long</TD>
       </TR>
       <TR>
        <TD>HII_WSLR_DUNS</TD>
        <TD>000073669</TD>
        <TD></TD>
       </TR>
       <TR>
        <TD>HII_TRANS_TYPE</TD>
        <TD>DI</TD>
        <TD></TD>
       </TR>
       <TR>
        <TD>HII_CAVN_ID</TD>
        <TD>77873</TD>
        <TD></TD>
       </TR>
       <TR>
        <TD>HII_VER_NUM</TD>
        <TD>22</TD>
        <TD></TD>
       </TR>
      </TABLE>
    </BODY>
    </HTML>Performance-wise, you'll have to test on real documents, but I think XSLT is better.

  • Parsing the return value from a http request into a xml document?

    suppose a url "http;//abc.com/index.asp" that return a string like this:
    <?xml version="1.0" encoding="UTF-8" ?>
    - <bbsend>
    <title>xml testing</title>
    - <record>
    <sender>111111</sender>
    <date>2004-01-05 04:11:44</date>
    <message>yes!</message>
    </record>
    - <record>
    <sender>22222222</sender>
    <date>2004-01-14 01:06:31</date>
    <message>A</message>
    </record>
    </bbsend>
    how can i parsing this return value into a xml document???
    i try something like this:
    URL url = new URL("http://abc.com/index.asp");
    HttpURLConnection http = (HttpURLConnection)url.openConnection();
    DataInputStream in = new DataInputStream(http.getInputStream());               
    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    DocumentBuilder builder = factory.newDocumentBuilder();
    document = builder.parse(in);
    System.out.println(document.getNodeValue());
    But fail , can anyone help

    do u mean get the xml content??
    i am doing a project with BBSend
    [email protected]

  • Calling web service via utl_dbws with unbounded return values

    Hello, everyone.
    I'm trying to use utl_dbws to call web service from Oracle DB 10 g.
    WS has unbounded return value:
    <xs:element maxOccurs='unbounded' minOccurs='0' name='return' type='xs:string'/>
    I'm setting return paramter in web service call handler like this:
    sys.UTL_DBWS.set_return_type(l_h_service_call, cs_qname_type_string);
    and when I'm trying to call it from PL/SQL function I'm getting an error:
    ORA-29532: Java call terminated by uncaught Java exception:
    deserialization error: XML reader error: unexpected character content: "s2"
    ORA-06512: at "SYS.UTL_DBWS", line 388
    ORA-06512: at "SYS.UTL_DBWS", line 385
    ORA-06512: at line 38
    I've tried to return values by out parameters and got the same exception.
    It looks like utl_dbws needs to know parameters count before calling.
    Have anyone succeded in getting arrays from Web Service call?
    This is a part of wsdl:
    <xs:complexType name='getProcessList'>
    <xs:sequence>
    <xs:element minOccurs='0' name='nameMask' type='xs:string'/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name='getProcessListResponse'>
    <xs:sequence>
    <xs:element maxOccurs='unbounded' minOccurs='0' name='return' type='xs:string'/>
    </xs:sequence>
    </xs:complexType>
    Throught SoapUI I can produce such kind of request:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:proc="http://processmanager.argustelecom.ru/">
    <soapenv:Header/>
    <soapenv:Body>
    <proc:getProcessList>
    <processNameMask>*</processNameMask>
    </proc:getProcessList>
    </soapenv:Body>
    </soapenv:Envelope>
    and get a response:
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
    <env:Header/>
    <env:Body>
    <ns2:getProcessListResponse xmlns:ns2="http://processmanager.argustelecom.ru/">
    <return>s1</return>
    <return>s2</return>
    <return>s3</return>
    <return>s4</return>
    </ns2:getProcessListResponse>
    </env:Body>
    </env:Envelope>
    PL/SQL function:
    DECLARE
    cs_qname_type_string CONSTANT sys.UTL_DBWS.qname
    := sys.UTL_DBWS.to_qname('http://www.w3.org/2001/XMLSchema', 'string') ;
    cs_qname_type_int CONSTANT sys.UTL_DBWS.qname := sys.UTL_DBWS.to_qname('http://www.w3.org/2001/XMLSchema', 'int');
    cs_qname_type_any CONSTANT sys.UTL_DBWS.qname
    := sys.UTL_DBWS.to_qname('http://www.w3.org/2001/XMLSchema', 'anyType') ;
    cs_endpoint CONSTANT VARCHAR2(256) := 'http://server:8080/process-manager/ProcessManager';
    l_service sys.UTL_DBWS.service;
    l_service_qname sys.UTL_DBWS.qname;
    l_port_qname sys.UTL_DBWS.qname;
    l_operation_qname sys.UTL_DBWS.qname;
    l_h_service_call sys.UTL_DBWS.call;
    l_params sys.UTL_DBWS.anydata_list;
    l_ret_val SYS.ANYDATA;
    BEGIN
    l_service_qname := sys.UTL_DBWS.to_qname(NULL, 'ProcessManagerService');
    l_service := sys.UTL_DBWS.create_service(l_service_qname);
    l_port_qname := sys.UTL_DBWS.to_qname(NULL, 'ProcessListServiceBinding');
    l_operation_qname := sys.UTL_DBWS.to_qname('http://processmanager.argustelecom.ru/', 'getProcessList');
    l_h_service_call := sys.UTL_DBWS.create_call(l_service, l_port_qname, l_operation_qname);
    sys.UTL_DBWS.set_target_endpoint_address(l_h_service_call, cs_endpoint);
    -- return type
    sys.UTL_DBWS.set_return_type(l_h_service_call, cs_qname_type_any);
    -- param type
    sys.UTL_DBWS.ADD_PARAMETER(l_h_service_call, 'processNameMask', cs_qname_type_string, 'ParameterMode.IN');
    l_params(1) := anydata.convertvarchar2('*');
    l_ret_val := sys.UTL_DBWS.invoke(l_h_service_call, l_params);
    IF l_ret_val IS NULL THEN
    DBMS_OUTPUT.put_line('l_ret_val is null');
    ELSE
    DBMS_OUTPUT.put_line('l_ret_val is not null');
    END IF;
    sys.UTL_DBWS.release_call(l_h_service_call);
    END;
    Edited by: Ilya on 03.12.2008 3:50

    Hi Tony
    I'm not sure if you would have solved your problem by now, but with my recent experience with the utl_dbws package, for doc lits with complex data types, you have to call the service with an XML request, as opposed to passing the param array.
    If you still need details, reply accordingly.
    Ta
    cT

  • SQL Query returns values like "---" and "NA"

    Hi
              When I execute a sql query in MII it returns values like "---" and "NA" for empty Char and numeric fields respectively.
    I have checked the database and made sure that these fields does not have any value. This happens only when I run the query through MII. Can any one know how can we get rid of these values?
    Thanks in advance
    Shaji

    Shaji,
    MII sets those values as a default if it discovers null values in a query result. You can change this default behaviour in several ways.
    First, have a look at the document [Setting custom null values in XML|http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70628af0-8ec4-2c10-7da2-f451e412dd8f?quicklink=index&overridelayout=true]. Then you may also use SQL functions like [NVL|http://www.techonthenet.com/oracle/functions/nvl.php] to change the value directly in the SQL query. You can also change the value inside the MII BLT to whatever you need.
    Michael

  • Generated XML doc file contains comments from MFC source code

    Hello, in my project I use the option /doc to generate XML doc file from my source codes but unfortunately in the output XML file there are mixed also comments from original MFC source codes, see the part of generated xml file:
    Is there a solution to ignore these MFC cpp files?
    Many thanks
    Regards
    Petr Stejskal
    <?xml version="1.0"?>
    <style xmlns="http://www.w3.org/1999/xhtml">@namespace html url(http://www.w3.org/1999/xhtml); :root { font:small Verdana; font-weight: bold; padding: 2em; padding- } * { display: block; padding- } html|style { display: none; } html|span, html|a
    { display: inline; padding: 0; font-weight: normal; text-decoration: none; } html|span.block { display: block; } *[html|hidden], span.block[html|hidden] { display: none; } .expand { display: block; } .expand:before { content: '+'; color: red; } .collapse
    { display: block; } .collapse:before { content: '-'; color: red; } </style><doc><assembly><assembly>       
    "Console"    </assembly></assembly><members><members><member name="T:_RS"><member
    name="T:_RS">Reed-Solomon codec control block</member></member><member name="M:MMask_makeMask(System.Int32,System.Byte*,System.Int32,QRecLevel)"><member
    name="M:MMask_makeMask(System.Int32,System.Byte*,System.Int32,QRecLevel)">Mode indicator. See Table 2 in Appendix 1 of JIS X0510:2004, pp.107.</member></member><member
    name="M:CMFCControlRenderer.IsScaled"><member
    name="M:CMFCControlRenderer.IsScaled"><summary><summary>Tells whether this control
    renderer works with scaled (resized) images.</summary></summary><returns><returns>Returns TRUE if this control
    renderer works with resized (scaled) images.</returns></returns></member></member><member name="M:CMFCControlRenderer.SmoothResize(System.Double)"><member
    name="M:CMFCControlRenderer.SmoothResize(System.Double)"><summary><summary> 
    Smoothly resizes images.</summary></summary><param name="dblScale" /><param
    name="dblScale"> Scale ratio.</param><returns><returns>
    TRUE if resize succeeds; otherwise FALSE.</returns></returns></member></member><member name="M:CDrawingManager.CreateBitmap_32(HBITMAP__*,System.UInt32!System.Runtime.CompilerServices.IsLong)"><member
    name="M:CDrawingManager.CreateBitmap_32(HBITMAP__*,System.UInt32!System.Runtime.CompilerServices.IsLong)"><summary><summary>
    Creates a 32 bit bitmap from the specified bitmap.</summary></summary><returns><returns> A handle to created
    bitmap, or NULL, if creation fails.</returns></returns><param name="bitmap" /><param
    name="bitmap"> A handle to the original bitmap.</param><param name="clrTransparent"
    /><param
    name="clrTransparent"> An RGB value specifying transparent color of the original bitmap.</param></member></member><member
    name="M:CDrawingManager.CreateBitmap_32(CSize!System.Runtime.CompilerServices.IsConst*!System.Runtime.CompilerServices.IsImplicitlyDereferenced,System.Void**)"><member
    name="M:CDrawingManager.CreateBitmap_32(CSize!System.Runtime.CompilerServices.IsConst*!System.Runtime.CompilerServices.IsImplicitlyDereferenced,System.Void**)"><summary><summary>
    Creates an empty 32 bit bitmap.</summary></summary><returns><returns> A handle to created bitmap, or NULL,
    if creation fails.</returns></returns><param name="size" /><param
    name="size">Specifies bitmap size.</param><param name="pBits" /><param
    name="pBits">When the function returns contains a pointer to bitmap bits.</param></member></member><member
    name="M:CDrawingManager.DrawRotated(CRect,CDC*!System.Runtime.CompilerServices.IsImplicitlyDereferenced,System.Int32)"><member
    name="M:CDrawingManager.DrawRotated(CRect,CDC*!System.Runtime.CompilerServices.IsImplicitlyDereferenced,System.Int32)"><summary><summary>Rotates
    a source DC content inside the given rectangle by +/- 90 degrees</summary></summary><param name="rectDest" /><param
    name="rectDest">Destination rectangle</param><param name="dcSrc" /><param
    name="dcSrc">The source device content.</param><param name="bClockWise"
    /><param
    name="bClockWise">TRUE - rotate +90 degrees, FALSE - 90.</param></member></member><member
    name="M:AfxRegDeleteKey(HKEY__*,System.Char!System.Runtime.CompilerServices.IsConst*,ATL.CAtlTransactionManager*)"><member
    name="M:AfxRegDeleteKey(HKEY__*,System.Char!System.Runtime.CompilerServices.IsConst*,ATL.CAtlTransactionManager*)"><summary><summary>Deletes
    the specified registry key.</summary></summary><returns><returns>  If the function succeeds, the return
    value is ERROR_SUCCESS. If the function fails, the return value is a nonzero error code defined in Winerror.h</returns></returns><param name="hKey" /><param
    name="hKey">A handle to an open registry key.</param><param name="lpSubKey"
    /><param
    name="lpSubKey">The name of the key to be deleted.</param><param name="pTM" /><param
    name="pTM">Pointer to CAtlTransactionManager object</param></member></member><member
    name="M:AfxRegOpenKeyEx(HKEY__*,System.Char!System.Runtime.CompilerServices.IsConst*,System.UInt32!System.Runtime.CompilerServices.IsLong,System.UInt32!System.Runtime.CompilerServices.IsLong,HKEY__**,ATL.CAtlTransactionManager*)"><member
    name="M:AfxRegOpenKeyEx(HKEY__*,System.Char!System.Runtime.CompilerServices.IsConst*,System.UInt32!System.Runtime.CompilerServices.IsLong,System.UInt32!System.Runtime.CompilerServices.IsLong,HKEY__**,ATL.CAtlTransactionManager*)"><summary><summary>Opens
    the specified registry key.</summary></summary><returns><returns>  If the function succeeds, the return
    value is ERROR_SUCCESS. If the function fails, the return value is a nonzero error code defined in Winerror.h</returns></returns><param name="hKey" /><param
    name="hKey">A handle to an open registry key.</param><param name="lpSubKey"
    /><param
    name="lpSubKey">The name of a key that this function opens or creates.</param><param name="ulOptions"
    /><param
    name="ulOptions">This parameter is reserved and must be zero.</param><param name="samDesired" /><param
    name="samDesired">A mask that specifies the desired access rights to the key.</param><param
    name="phkResult" /><param
    name="phkResult">A pointer to a variable that receives a handle to the openedkey.</param><param
    name="pTM" /><param
    name="pTM">Pointer to CAtlTransactionManager object</param></member></member></members>

    Hi stejsky,
    Thank you for posting in MSDN forum.
    >>In my project I use the option /doc to generate XML doc file from my source codes but unfortunately in the output XML file there are mixed also comments from original MFC source codes.
    Based on your issue, could you please tell me how you use the option /doc to generate XML doc file from your source codes?
    If you use the option /doc to generate the XML doc file by right-click the your MFC project->Properties->Configuration Properties->C/C++->Output file->set the Generate XML document files as Yes(/doc) like the following screen shot.
    (1)If yes, since we could not reproduce your issue in mu side, so if possible, I suggest you could share me your MFC project so that we will further help you support this issue.
    You could upload your MFC project to the OneDrive and then copy link here.
    (2)If no, please try the above way to generate XML doc file and then check if you still get same issue.
    Best Regards,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Java stored proc performance parsing XML docs

    Hi
    We are using ORACLE 8i(8.1.6). I have a JAVA Stored procedure that parses XML doc and returns tha values. If I am testing on the box, I get an avg. return time of 2 secs. If I have 20 users, my return time for all went to 25 to 35 secs?
    Are there any parameters on ORACLE I can modify to increase the performance. We are developing app for 1000 to 1500 users. I dont want to guess the time based on my test with 20 users.
    Any help will be greatly appreciated.
    Thank You
    Raju

    Raju,
    Oracle 8.1.7 should be better choice for you since it does have the XML stuff
    natively compiled.
    Regarding scaleability the JVM should scale
    very well. However let us know what you find.
    - Stefan

  • Web service return value

    I have a web service and I'm cfdumping the return variable, but I don't know how to get the value out.  This is what it is giving me.
    1
    object of com.nextaxiom.www.soapservice.xsd1.APApprovalList
    Class Name
    com.nextaxiom.www.soapservice.xsd1.APApprovalList
    Methods
    Method
    Return Type
    equals(java.lang.Object)
    boolean
    getAlertDate()
    java.lang.String
    getDescription()
    java.lang.String
    getDeserializer(java.lang.String, java.lang.Class, javax.xml.namespace.QName)
    org.apache.axis.encoding.Deserializer
    getInvoiceAmount()
    java.lang.Double
    getPaymentReferenceNumber()
    java.lang.String
    getSerializer(java.lang.String, java.lang.Class, javax.xml.namespace.QName)
    org.apache.axis.encoding.Serializer
    getTypeDesc()
    org.apache.axis.description.TypeDesc
    getUserName()
    java.lang.String
    getVendorName()
    java.lang.String
    hashCode()
    int
    setAlertDate(java.lang.String)
    void
    setDescription(java.lang.String)
    void
    setInvoiceAmount(java.lang.Double)
    void
    setPaymentReferenceNumber(java.lang.String)
    void
    setUserName(java.lang.String)
    void
    setVendorName(java.lang.String)
    void
    So some of this is the fields I want, but I want the value: description, alert date, invoice amt, etc.  Can anyone help me.  What do I need to do next to get the values?
    Here is my CF statement and the WSDL file.
    thanks for the help,
    BJ
    Invoke statement
                <cfinvoke
                                             webservice="http://127.0.0.1:8500/APApproval/GetAPApprovalList.wsdl"
                                             method="GetAPApprovalList" refreshwsdl="true"
                                             returnvariable="response">
                                                      <cfinvokeargument name="UserName" value="DAVBRY"/>
                                  </cfinvoke>
                <cfoutput>#response#</cfoutput>
    WSDL FILE
    <?xml version="1.0"?>
    <!--Automatically generated 10/07/2011 by Hyperservice Business Platform, NextAxiom Technology, Inc.-->
    <definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
        name="BSAPrototype.APApproval.GetAPApprovalList"
        targetNamespace="http://www.nextaxiom.com/soapservice/BSAPrototype.APApproval.GetAPApprovalList/wsdl"
        xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
        xmlns:tns="http://www.nextaxiom.com/soapservice/BSAPrototype.APApproval.GetAPApprovalList/wsdl"
        xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsd1="http://www.nextaxiom.com/soapservice/xsd1">
        <types>
            <schema xmlns="http://www.w3.org/2001/XMLSchema"
                elementFormDefault="qualified" targetNamespace="http://www.nextaxiom.com/soapservice/xsd1">
                <element name="GetAPApprovalList">
                    <complexType>
                        <sequence>
                            <element name="UserName" type="string"/>
                        </sequence>
                    </complexType>
                </element>
                <element name="GetAPApprovalListResult">
                    <complexType>
                        <sequence>
                            <element maxOccurs="unbounded"
                                name="APApprovalList" type="xsd1:APApprovalList"/>
                        </sequence>
                    </complexType>
                </element>
                <complexType name="APApprovalList">
                    <sequence>
                        <element minOccurs="0" name="UserName" type="string"/>
                        <element minOccurs="0" name="AlertDate" type="string"/>
                        <element minOccurs="0" name="Description" type="string"/>
                        <element minOccurs="0" name="PaymentReferenceNumber" type="string"/>
                        <element minOccurs="0" name="InvoiceAmount" type="double"/>
                        <element minOccurs="0" name="VendorName" type="string"/>
                    </sequence>
                </complexType>
            </schema>
        </types>
        <message name="GetAPApprovalListRequest">
            <part element="xsd1:GetAPApprovalList" name="GetAPApprovalList"/>
        </message>
        <message name="GetAPApprovalListResponse">
            <part element="xsd1:GetAPApprovalListResult" name="GetAPApprovalListResult"/>
        </message>
        <portType name="BSAPrototype.APApproval.GetAPApprovalListSoapPort">
            <operation name="GetAPApprovalList">
                <input message="tns:GetAPApprovalListRequest"/>
                <output message="tns:GetAPApprovalListResponse"/>
            </operation>
        </portType>
        <binding name="BSAPrototype.APApproval.GetAPApprovalListSoapBinding" type="tns:BSAPrototype.APApproval.GetAPApprovalListSoapPort">
            <soap:binding xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
                style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
            <operation name="GetAPApprovalList">
                <soap:operation
                    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" soapAction="urn:doc?in=GetAPApprovalList?out=GetAPApprovalListResult?path=BSAPrototype.AP Approval.GetAPApprovalList"/>
                <input>
                    <soap:body use="literal"/>
                </input>
                <output>
                    <soap:body use="literal"/>
                </output>
            </operation>
        </binding>
        <service name="BSAPrototype.APApproval.GetAPApprovalList">
            <port
                binding="tns:BSAPrototype.APApproval.GetAPApprovalListSoapBinding" name="BSAPrototype.APApproval.GetAPApprovalListPort">
                <soap:address
                    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" location="http://nextaxb:7777/NXAServer/NextAxiomServer"/>
            </port>
        </service>
    </definitions>

    Getting complex objects back from web service calls are always tricky  - especially when they've been desearialized as an object.  We've found its a lot easier to deal with the Raw SOAP messages so at least we're working with an XML document, rather than a series of Getter functions, any of which that may return a NULL value (which does really unpleasant things to a CF variable).
    When you absolutely have to deal with a complex non-CF originating object in CF, we've found that you can actually use the underlying Java classes to identify and automatically execute the getter functions to effective dump out the variables.  We've rolled it up into a custom tag.  The base code for the logic is below:
    <cfset objVar = VARIABLE_CONTAINING_OBJECT_FROM_WEB_SERVICE>
    <cfset arrMethods = objVar.getClass().getMethods()>
    <cfoutput>
     <cfif isDefined("arrMethods") AND isArray(arrMethods) AND ArrayLen(arrMethods) gt 0>
     <table border="1" cellspacing="0" cellpadding="5" style="border-collapse:collapse;border:1px solid black;">
     <tr>
     <td colspan="3" style="background-color:##CCCCCC;">RESULT</td>
     </tr>
     <tr>
     <td>Method</td>
     <td>Class</td>
     <td>Return Value</td>
     </tr>
     <cfset sComplexMethods = "">
    <cfloop from="1" to="#ArrayLen(arrMethods)#" index="iMethod"> 
     <cfset sReturnType = arrMethods[iMethod].getReturnType().toString()>
    <cfif ListFindNoCase("int,java.lang.String,class java.lang.String,double,float,char", sReturnType)> 
     <tr>
     <td>#arrMethods[iMethod].getName()#</td>
     <td>#sReturnType#</td>
     <cfset sReturnValue = EVALUATE("objVar." & arrMethods[iMethod].getName() & "()")>
     <td><cfif isDefined("sReturnValue") AND sReturnValue neq "">#sReturnValue#<cfelse> </cfif></td>
     </tr>
    </cfif>
    #sComplexMethods#
    </cfloop>
     </table>
    </cfif>
    </cfoutput>

  • Transform XML Docs

    I have two XMLType tables and would like to transform the data from both of these tables and end up with one xmldocument and returned by a query.
    It appears that there are several ways to accomplish this.
    1. Write a query that uses xmlelement, xmlforest, etc. functions.
    2. Use XMLQuery to accomplish this
    3. Use XSLT.
    I would like to use XSLT but I can't seem to figure out how to access the conents of one XMLTable from within a stylesheet. I know the document function is for opening files but I need the data to come from a XMLTable.
    I am currently using 10.2.0.3
    Thanks

    Hi,
    I was looking for something similar a few days ago and found 'CardPaymentGatewayApplication' in the sample code page for XMLDB.
    I pasted a few lines of the SQL code from CPGA below. If it looks useful and need more details then you might want to download the code from http://www.oracle.com/technology/sample_code/tech/xml/xmldb/cpga/index.html
    -Uma
    1) register the XML schema
    declare
    doc varchar2(2000) := '<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb
    ">
    <xs:element name="ACCOUNT">
    </xs:element>
    </xs:schema>';
    begin
    dbms_xmlschema.registerSchema('http://otn.oracle.com/account.xsd', doc);
    end;
    2) create XMLType table
    CREATE TABLE CPG_ACCOUNTS of XMLType
    XMLSCHEMA "http://otn.oracle.com/account.xsd"
    ELEMENT "ACCOUNT";
    3) Insert some values into the table
    accxmldoc := XMLType.CREATEXML('
    <ACCOUNT xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="http://otn.oracle.com/account.xsd">
    </ACCOUNT>');
    INSERT INTO cpg_accounts VALUES(accxmldoc);
    4) create table to store the XSL files
    CREATE TABLE CPG_XSL_TABLE(
    FILENAME VARCHAR2(30) Unique ,
    XSLDOC XMLTYPE
    5) load the XSL stylesheet
    DECLARE
    xslsheet CLOB;
    xmldoc XMLType;
    BEGIN
    xslsheet := '<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www
    .w3.org/1999/XSL/Format">
    <xsl:template match="EMPTY">
    xmldoc:= XMLType.createXML(xslsheet);
    INSERT INTO cpg_xsl_table VALUES ('updateAccountCard.xsl',xmldoc);
    END;
    6) sample transformation
    FUNCTION getAccountDetailsHTML(accNo IN NUMBER) RETURN CLOB IS
    -- Define the local variables
    xslFile XMLTYPE;
    acctXML XMLTYPE;
    html XMLTYPE;
    BEGIN
    -- Retreive the XMLType account details into the 'acctXML' variable.
    SELECT value(t) INTO acctXML
    FROM cpg_accounts t
    WHERE extractValue(value(t),'/ACCOUNT/ACC_NO') = accNo;
    -- Retreive the XSLT stylesheet from the database that needs to be applied
    -- to the 'acctXML' value retreived above.
    SELECT xsldoc INTO xslFile FROM cpg_xsl_table
    WHERE filename='account.xsl';
    -- Apply the XMLtype.transform() function to get the transformed XML instance.
    -- This function takes in an XMLType instance and an XSLT stylesheet.
    -- It applies the stylesheet to the XML document and returns a transformed
    -- XML instance.
    html := acctXML.transform(xslFile);
    -- Return the transformed XML instance as a CLOB value.
    RETURN html.getCLOBVal();
    END getAccountDetailsHTML;

  • Is it possible to create indexes & use them on xml docs with namespaces?

    I have put an XML doc in a BDBXML container which looks like this:
    *<ns1:note xmlns:ns1="http://www.testsch.org/ns">*
    *<ns1:to>Eric</ns1:to>*
    *<ns1:from>Brendan</ns1:from>*
    *<ns1:msg>How r u?</ns1:msg>*
    *</ns1:note>*
    Now, I am creating an index on the element "to", as:
    addIndex "ns1" "to" node-element-equality-string
    Though the index has been shown as getting created using the listIndexes command, if I lookup that index with the following command:
    lookupIndex node-element-equality-string "ns1" "to"
    the output is:
    *0 objects returned for eager index lookup 'node-element-equality-string'*
    Whereas, if I do the whole procedure without the namespaces in the document & the commands, the result is fine:
    *1 object returned for eager index lookup 'node-element-equality-string'*
    Can someone please tell me whether using namespaces, the indexes can be created or not? If yes, how?
    Thanks,
    Dev
    Edited by: user11871332 on Sep 7, 2009 3:53 PM

    Hi Dev,
    When using XML, the prefix for the namespace is really just syntactic sugar. The actual namespace in your example is "http://www.testsch.org/ns", and that's the value that you need to use when creating your index:
    addIndex "http://www.testsch.org/ns" "to" node-element-equality-stringJohn

  • Remote Object - not able to get the returned value from java method

         Hi ,
    I am developing one sample flex aplication that connects to the java code and displays the returned value from the
    java method in flex client. Here I am able to invoke the java method but not able to collect the returned value.
    lastResult is giving null .  I am able to see the sysout messages in server console.
    I am using flex 3.2 and blazeds server  and java 1.5
    Here is the code what I have written.
    <?xml version="1.0" encoding="utf-8"?><mx:WindowedApplication  xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" backgroundColor="#FFFFFF" initialize="initApp()">
     <mx:Script><![CDATA[
    import mx.controls.Alert; 
    import mx.binding.utils.ChangeWatcher; 
    import mx.rpc.events.ResultEvent; 
    import mx.messaging.*; 
    import mx.messaging.channels.* 
    public function initApp():void { 
         var cs:ChannelSet = new ChannelSet(); 
         var customChannel:Channel = new AMFChannel("my-amf", "http://localhost:8400/blazeds/messagebroker/amf");     cs.addChannel(customChannel);
         remoteObj.channelSet = cs;
    public function writeToConsole():void {      remoteObj.writeToConsole(
    "hello from Flash client");
          var returnedVal:String = remoteObj.setName().lastResult;     Alert.show(returnedVal);
    //[Bindable] 
    // private var returnedVal:String; 
    ]]>
    </mx:Script>
    <mx:RemoteObject id="remoteObj" destination="sro" /> 
    <mx:Form width="437" height="281">
     <mx:FormItem>  
    </mx:FormItem>  
    <mx:Button label="Write To Server Console" click="writeToConsole()"/>
     </mx:Form>
     </mx:WindowedApplication>
    Java code
    public  
         public SimpleRemoteObject(){  
              super();     }
      class SimpleRemoteObject { 
         public void writeToConsole(String msg) {          System.out.println("SimpleRemoteObject.write: " + msg);     }
         public String setName(){          System.
    out.println("Name changed in Java"); 
              return "Name changed in Java";
    And I have configured destination in  remote-config.xml
    <destination id="sro">
       <properties>    
        <source>SimpleRemoteObject</source>
        <scope>application</scope>
       </properties>
      </destination>
    Please help me .

    You are not able to get the returned value because if you see the Remote object help you will realise you have to use result="resultfn()" and fault = "faultfn()"
    In this you define what you wish to do.
    More importantly in the remote object you need to define which method you wish to call using the method class like this
    <mx:RemoteObject id="remoteObj" destination="sro" result="r1" fault="f1"  >
         <Method name="javaMethodName" result="r2" fault="f2"/>
    <mx:RemoteObject>
    r2 is the function where you get the result back from java and can use it to send the alert.

Maybe you are looking for

  • Disk Repair Errors

    I generally run the Disk Repair Utility when I install new software due to some software not abiding by the rules. When I did this a few days ago I came up with the following errors: Warning: SUID file "System/Library/CoreServices/Finder.app/Contents

  • Payment terms vs GL Account

    Hi, Currently all discount in 3 payment terms are posted to same GL account for vendors and cost centre.Now my requirement is that all the discount in the above 3 payment terms should post to different cost centre and GL account. How to achieve this

  • Using Regular Expressions to Find Quoted Text

    I have run into a couple problems with the following code. 1) Slash-Star and Slash-Slash commented text must be ignored. 2) It does not detect backslashed quotes, or if that backslash is backslashed. Can this be accomplished with Regular Expressions,

  • How to drop a schema?

    Hi, I need to drop a schema un oracle. can you please provide query and your suggestions? Thanks Sathya

  • ABAP Client Proxy to File (File is not getting generated)

    Hi All, I'm trying out a scenario ABAP proxy --> XI  --> FILE. I have followed the given blog to create ABAP client proxy. /people/ravikumar.allampallam/blog/2005/03/14/abap-proxies-in-xiclient-proxy While executing the ABAP client proxy, the values