Trying to pass xml data to a web service

I'm working on an Apex application that is required to pass data to a web service for loading into another (non Oracle) system. The web service expects two stings as input, the first string is simply an ID, the second string is an xml document. I generate an xml 'string' using PL/SQL in an on-submit process prior to invoking the web service. If I pass regular text for the second parameter, the web service returns an error message which is stored in the response collection and displayed on the page as expected. When I pass the the xml data, I get a no data found error and the response collection is empty. I have tried this in our development environment on Apex 3.1.2 (database version 10.2). I also tried this on our Apex 4.0.2 sandbox (with the same Oracle 10.2 database). I have found that once I have nested xml, I get the no data found message, if I pass partial xml data, I get the error response from the web service. Perhaps I am not generating the xml correctly to pass to the web service (this only just occurred to me as I write this)? Or is there an issue passing xml data from Apex to the web service? Any help will be greatly appreciated! here is the code I use to generate the xml string:
declare
  cursor build_data  is
    select u_catt_request_buid,u_catt_request_name,u_catt_cassette_buid,u_catt_cassette_name
      ,u_project_name,u_sub_project,replace(u_nominator,'ERROR ','') u_nominator
      ,replace(replace(u_going_to_vqc,'Yes','true'),'No','false') u_going_to_vqc
      ,u_promoter,u_cds,u_terminator
      ,u_primary_trait,u_source_mat_prvd,u_pro_resistance_1,u_vector_type
      ,nvl(u_my_priority,'Medium') u_my_priority
      ,replace(replace(u_immediate_trafo,'Yes','true'),'No','false') u_immediate_trafo
      ,replace(replace(u_new_bps_cmpnt,'Yes','true'),'No','false') u_new_bps_cmpnt
      ,u_compnt_name,u_new_cmpt_desc,initcap(u_target_crop) u_target_crop,u_corn_line
      ,u_plant_selection,u_num_of_ind_events,u_num_plants_per_event,u_molecular_quality_events
      ,replace(replace(u_field,'Yes','true'),'No','false') u_field
      ,u_t1_seed_request,u_potential_phenotype,u_submission_date
      ,u_sequence_length,u_trait,u_frst_parent,u_frst_parent_vshare_id,u_cds_vshare_id
      ,constructid,cassetteid,description
    from temp_constructs_lims
    order by constructid,description;
  v_xml_info         varchar2(350);
  v_xml_header       varchar2(1000);
  v_xml_data         clob;
  v_xml_footer       varchar2(50);
  v_create_date      varchar2(10);
  v_scientist_name   v_users.full_name%type;
  v_scientist_email  v_users.email_address%type;
  v_primas_code      construct.fkprimas%type;
  v_nominator_name   v_nominators.full_name%type;
  v_file_length      number;
begin
  -- initialize variables
  v_create_date := to_char(sysdate,'YYYY-MM-DD');
  v_xml_data := null;
  -- get name and email address
  begin
    select full_name,email_address
    into v_scientist_name,v_scientist_email
    from v_users
    where ldap_account = :F140_USER_ID; 
  exception when no_data_found then
    v_scientist_name := '';
    v_scientist_email := '';
    v_scientist_name := 'Test, Christine';
    v_scientist_email := '[email protected]';
  end;
  -- set up xml file 
  if :OWNER like '%DEV%' then
    v_xml_info := '
      <?xml version="1.0" encoding="utf-8"?>
      <exchange xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xmlns="deService"
                xsi:schemaLocation="deService http://mycompany.com/webservices/apexdataexchange/schemas/RTPCATT.xsd">
  else
    v_xml_info := '
      <?xml version="1.0" encoding="utf-8"?>
      <exchange xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xmlns="deService"
                xsi:schemaLocation="deService http://mycompanyprod.com/webservices/apexdataexchange/schemas/RTPCATT.xsd">
  end if;
  -- populate xml header records
  v_xml_header := '<header xmlns="">
    <stdXmlVer>2.0</stdXmlVer>
    <sendingUnit>'||:P36_UNIT_NUMBER||'</sendingUnit>
    <sendingPerson>'||v_scientist_name||'</sendingPerson>
    <notification>'||v_scientist_email||'</notification>
    <creationDate>'||v_create_date||'</creationDate>
  </header>
  <entities xmlns="">
  for rec in build_data loop
    begin
      -- get primas code for current construct
      select fkprimas
      into v_primas_code
      from construct
      where constructid = rec.constructid;
    exception when no_data_found then
      v_primas_code := null;
    end;
    begin
      -- get nominator name for current construct
      select full_name
      into v_nominator_name
      from v_nominators
      where nominator_id = rec.u_nominator;
    exception
      when no_data_found then
        v_nominator_name := null;
      when invalid_number then
        v_nominator_name := catt_pkg.full_name_from_user_id(p_user_id => rec.u_nominator);
        v_nominator_name := 'Test, Christine';
    end;
    v_xml_data := v_xml_data||'
      <Construct>
      <requestBUID>'||rec.u_catt_request_buid||'</requestBUID>
      <requestName>'||rec.u_catt_request_name||'</requestName>
      <cassetteBUID>'||rec.u_catt_cassette_buid||'</cassetteBUID>
      <cassetteName>'||rec.u_catt_cassette_name||'</cassetteName>
      <scientist>'||v_scientist_name||'</scientist>
      <projectNumber>'||v_primas_code||'</projectNumber>
      <subProject>'||rec.u_sub_project||'</subProject>
      <comments>'||rec.description||'</comments>
      <nominator>'||v_nominator_name||'</nominator>
      <goingToVqc>'||rec.u_going_to_vqc||'</goingToVqc>
      <primaryTrait>'||rec.u_primary_trait||'</primaryTrait>
      <sourceMatPrvd>'||rec.u_source_mat_prvd||'</sourceMatPrvd>
      <prokaryoticResistance>'||rec.u_pro_resistance_1||'</prokaryoticResistance>
      <vectorType>'||rec.u_vector_type||'</vectorType>
      <priority>'||rec.u_my_priority||'</priority>
      <immediateTrafo>'||rec.u_immediate_trafo||'</immediateTrafo>
      <newComponent>'||rec.u_new_bps_cmpnt||'</newComponent>
      <componentName>'||rec.u_compnt_name||'</componentName>
      <newComponentDescription>'||rec.u_new_cmpt_desc||'</newComponentDescription>
      <targetCrop>'||rec.u_target_crop||'</targetCrop>
      <Line>'||rec.u_corn_line||'</Line>
      <plantSelection>'||rec.u_plant_selection||'</plantSelection>
      <numOfIndEvents>'||rec.u_num_of_ind_events||'</numOfIndEvents>
      <numOfPlantsPerEvent>'||rec.u_num_plants_per_event||'</numOfPlantsPerEvent>
      <molecularQualityEvents>'||rec.u_molecular_quality_events||'</molecularQualityEvents>
      <toField>'||rec.u_field||'</toField>
      <potentialPhenotype>'||rec.u_potential_phenotype||'</potentialPhenotype>
      </Construct>
  end loop;
  -- complete xml data   
  v_xml_footer := '
      </entities>
    </exchange>
  -- complete submission data
  :P36_XML_SUBMISSION := null;   
  :P36_XML_SUBMISSION := v_xml_info||v_xml_header||v_xml_data||v_xml_footer;
  :P36_XML_SUBMISSION := trim(:P36_XML_SUBMISSION);
end;Here is an example of :P36_XML_SUBMISSION:
<?xml version="1.0" encoding="utf-8"?> <exchange xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="deService" xsi:schemaLocation="deService http://mycompany.com/webservices/apexdataexchange/schemas/RTPCATT.xsd"> <header xmlns=""> <stdXmlVer>2.0</stdXmlVer> <sendingUnit>10</sendingUnit> <sendingPerson>Test, Christine</sendingPerson> <notification>[email protected]</notification> <creationDate>2011-12-20</creationDate> </header> <entities xmlns=""> <Construct> <requestBUID>150000123</requestBUID> <requestName>AA0000123</requestName> <cassetteBUID>160000123</cassetteBUID> <cassetteName>AB000123</cassetteName> <scientist>Test, Christine</scientist> <projectNumber>T000123</projectNumber> <subProject>Discovery Plus</subProject> <comments>AA0000123 From CATT on 20-DEC-11 </comments> <nominator>Test, Christine</nominator> <goingToVqc>true</goingToVqc> <primaryTrait>promoter::intron::transit:gene::terminator</primaryTrait> <sourceMatPrvd>seed - stuff</sourceMatPrvd> <prokaryoticResistance></prokaryoticResistance> <vectorType>Plant Vector</vectorType> <priority>Medium</priority> <immediateTrafo>true</immediateTrafo> <newComponent></newComponent> <componentName>gene</componentName> <newComponentDescription>unknown function; sequence has some similarity to others</newComponentDescription> <targetCrop>Crop</targetCrop> <Line>Inbred</Line> <plantSelection>smidge ver2</plantSelection> <numOfIndEvents>6</numOfIndEvents> <numOfPlantsPerEvent>1</numOfPlantsPerEvent> <molecularQualityEvents>NA</molecularQualityEvents> <toField>true</toField> <potentialPhenotype></potentialPhenotype> </Construct> </entities> </exchange>My application page is accessed by an action from another page. The user reviews the data in a sql report region. When the use clicks on the Upload (SUBMIT) button, the xml string is generated first and then the web service is invoked. I have tried passing a simple string as the second parameter ("dummydata") and partial data in the xml string ("<sendingPerson>Test, Christine</sendingPerson>") the web service returns this error in both cases:
Error[Validate Data]: (XML) = Data at the root level is invalid. Line 1, position 1.. Cannot validate the XML! Data Exchange not accepted!Once I pass the entire xml string above, I get an Oracle-01403: no data found error. I have opened the web service in IE and pasted my xml input string and received a valid, verified result, so I am sure that the generated xml is correct. I have spoken with the web service developer; there are no log entries created by the web service when I submit the full xml string, so I suspect the failure is in the Apex application.
Thanks,
Christine
I should add that once I have nested tags in the xml, I get the Oracle no data found error ("<header xmlns=""> <stdXmlVer>2.0</stdXmlVer> <sendingUnit>10</sendingUnit> </header>"). I f I do not have nested tags in the xml ("<notification>[email protected]</notification> <creationDate>2011-12-20</creationDate>"), I get the web service response (error).
Edited by: ChristineD on Dec 20, 2011 9:54 AM

Ok, I think I'm getting closer to thinking this all the way through. When I have used clobs in the past, I've always used the DBMS_CLOB package. I use this to create a temp clob and then make the above calls. I had to go find an example in my own code to remember all of this. So, here is another suggestion... feel free to disregard all the previous code snippets..
declare
  cursor build_data  is
    select u_catt_request_buid,u_catt_request_name,u_catt_cassette_buid,u_catt_cassette_name
      ,u_project_name,u_sub_project,replace(u_nominator,'ERROR ','') u_nominator
      ,replace(replace(u_going_to_vqc,'Yes','true'),'No','false') u_going_to_vqc
      ,u_promoter,u_cds,u_terminator
      ,u_primary_trait,u_source_mat_prvd,u_pro_resistance_1,u_vector_type
      ,nvl(u_my_priority,'Medium') u_my_priority
      ,replace(replace(u_immediate_trafo,'Yes','true'),'No','false') u_immediate_trafo
      ,replace(replace(u_new_bps_cmpnt,'Yes','true'),'No','false') u_new_bps_cmpnt
      ,u_compnt_name,u_new_cmpt_desc,initcap(u_target_crop) u_target_crop,u_corn_line
      ,u_plant_selection,u_num_of_ind_events,u_num_plants_per_event,u_molecular_quality_events
      ,replace(replace(u_field,'Yes','true'),'No','false') u_field
      ,u_t1_seed_request,u_potential_phenotype,u_submission_date
      ,u_sequence_length,u_trait,u_frst_parent,u_frst_parent_vshare_id,u_cds_vshare_id
      ,constructid,cassetteid,description
    from temp_constructs_lims
    order by constructid,description;
  v_xml_info         varchar2(350);
  v_xml_header       varchar2(1000);
  v_xml_data         clob;
  v_xml_footer       varchar2(50);
  v_create_date      varchar2(10);
  v_scientist_name   v_users.full_name%type;
  v_scientist_email  v_users.email_address%type;
  v_primas_code      construct.fkprimas%type;
  v_nominator_name   v_nominators.full_name%type;
  v_file_length      number;
  v_xml_body    varchar2(32767); --added by AustinJ
  v_page_item    varchar2(32767);  --added by AustinJ
begin
  -- initialize variables
  v_create_date := to_char(sysdate,'YYYY-MM-DD');
  --v_xml_data := null;   --commented out by AustinJ
  dbms_lob.createtemporary( v_xml_data, FALSE, dbms_lob.session );  --added by AustinJ
  dbms_lob.open( v_xml_data, dbms_lob.lob_readwrite );  --added by AustinJ
  -- get name and email address
  begin
    select full_name,email_address
    into v_scientist_name,v_scientist_email
    from v_users
    where ldap_account = :F140_USER_ID; 
  exception when no_data_found then
    v_scientist_name := '';
    v_scientist_email := '';
    v_scientist_name := 'Test, Christine';
    v_scientist_email := '[email protected]';
  end;
  -- set up xml file 
  if :OWNER like '%DEV%' then
    v_xml_info := '
      <?xml version="1.0" encoding="utf-8"?>
      <exchange xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xmlns="deService"
                xsi:schemaLocation="deService http://mycompany.com/webservices/apexdataexchange/schemas/RTPCATT.xsd">
  else
    v_xml_info := '
      <?xml version="1.0" encoding="utf-8"?>
      <exchange xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xmlns="deService"
                xsi:schemaLocation="deService http://mycompanyprod.com/webservices/apexdataexchange/schemas/RTPCATT.xsd">
  end if;
  -- populate xml header records
  v_xml_header := '<header xmlns="">
    <stdXmlVer>2.0</stdXmlVer>
    <sendingUnit>'||:P36_UNIT_NUMBER||'</sendingUnit>
    <sendingPerson>'||v_scientist_name||'</sendingPerson>
    <notification>'||v_scientist_email||'</notification>
    <creationDate>'||v_create_date||'</creationDate>
  </header>
  <entities xmlns="">
  for rec in build_data loop
    begin
      -- get primas code for current construct
      select fkprimas
      into v_primas_code
      from construct
      where constructid = rec.constructid;
    exception when no_data_found then
      v_primas_code := null;
    end;
    begin
      -- get nominator name for current construct
      select full_name
      into v_nominator_name
      from v_nominators
      where nominator_id = rec.u_nominator;
    exception
      when no_data_found then
        v_nominator_name := null;
      when invalid_number then
        v_nominator_name := catt_pkg.full_name_from_user_id(p_user_id => rec.u_nominator);
        v_nominator_name := 'Test, Christine';
    end;
    v_xml_body := '
      <Construct>
      <requestBUID>'||rec.u_catt_request_buid||'</requestBUID>
      <requestName>'||rec.u_catt_request_name||'</requestName>
      <cassetteBUID>'||rec.u_catt_cassette_buid||'</cassetteBUID>
      <cassetteName>'||rec.u_catt_cassette_name||'</cassetteName>
      <scientist>'||v_scientist_name||'</scientist>
      <projectNumber>'||v_primas_code||'</projectNumber>
      <subProject>'||rec.u_sub_project||'</subProject>
      <comments>'||rec.description||'</comments>
      <nominator>'||v_nominator_name||'</nominator>
      <goingToVqc>'||rec.u_going_to_vqc||'</goingToVqc>
      <primaryTrait>'||rec.u_primary_trait||'</primaryTrait>
      <sourceMatPrvd>'||rec.u_source_mat_prvd||'</sourceMatPrvd>
      <prokaryoticResistance>'||rec.u_pro_resistance_1||'</prokaryoticResistance>
      <vectorType>'||rec.u_vector_type||'</vectorType>
      <priority>'||rec.u_my_priority||'</priority>
      <immediateTrafo>'||rec.u_immediate_trafo||'</immediateTrafo>
      <newComponent>'||rec.u_new_bps_cmpnt||'</newComponent>
      <componentName>'||rec.u_compnt_name||'</componentName>
      <newComponentDescription>'||rec.u_new_cmpt_desc||'</newComponentDescription>
      <targetCrop>'||rec.u_target_crop||'</targetCrop>
      <Line>'||rec.u_corn_line||'</Line>
      <plantSelection>'||rec.u_plant_selection||'</plantSelection>
      <numOfIndEvents>'||rec.u_num_of_ind_events||'</numOfIndEvents>
      <numOfPlantsPerEvent>'||rec.u_num_plants_per_event||'</numOfPlantsPerEvent>
      <molecularQualityEvents>'||rec.u_molecular_quality_events||'</molecularQualityEvents>
      <toField>'||rec.u_field||'</toField>
      <potentialPhenotype>'||rec.u_potential_phenotype||'</potentialPhenotype>
      </Construct>
    ';    --modified by AustinJ
    dbms_lob.writeappend( v_xml_data, length(v_xml_body), v_xml_body);   --added by AustinJ
  end loop;
  -- complete xml data   
  v_xml_footer := '
      </entities>
    </exchange>
  -- complete submission data
  v_page_item := null;   
  v_page_item := v_xml_info||v_xml_header||wwv_flow.do_substitutions(wwv_flow_utilities.clob_to_varchar2(v_xml_data))||v_xml_footer;   --added by AustinJ
  :P36_XML_SUBMISSION := trim(v_page_item);   --added by AustinJ
    dbms_lob.close( v_xml_data);  --added by AustinJ
    if v_xml_data is not null then   
        dbms_lob.freetemporary(v_xml_data);   --added by AustinJ
    end if;  --added by AustinJ
end;This code will use the Database to construct your clob and then convert it back to a varchar2 for output to your webservice. This makes more sense to me now and hopefully you can follow what the process is doing.
You don't technically need the two varchar2(36767) variables. I used two for naming convention clarity sake. You could use just one multipurpose variable instead.
If you have any questions, just ask. I'll help if I can.
Austin
Edited by: AustinJ on Dec 20, 2011 12:17 PM
Fixed spelling mistakes.

Similar Messages

  • Get xml data from a web service into Forms?

    Hello folks! I am reading active directory info from a web service into forms via imported java classes. I can read from functions that return strings just fine, but I have to get the output from getGroupUsers which returns an XmlDataDocument. How do I read this in and parse it in Forms?
    I will be grateful if y'all could point me to an example.
    Thank you,
    Gary
    P.S. Here is a snippet of how I get the full name by passing an ID:
    DECLARE
    jo ora_java.jobject;
    rv varchar2(100);
    BEGIN
    jo := ADSoapClient.new;
    rv := ADSoapClient.getUserName(jo, 'user_ID');
    :block3.fullname := rv;

    Hello,
    Since you are already dealing with server-side JAVA, I would suggest you create a method that would do the parsing server-side and what your PL/SQL will be dealing with is just the return string.
    Here is a method I use to read an XML file (actually, it is an Oracle Reports file converted to XML) and from the string version, I will do search, replace and other things.
    So, from getGroupUsers which returns an XmlDataDocument, you can adapt this method to get your data server-side and let the form module read the output data.
    <blockquote>
    private String processFileXml(String fileName, int iFile) throws ParserConfigurationException, SAXException,
    IOException, XPathExpressionException{
    try{                
    DocumentBuilderFactory domFactory = DocumentBuilderFactory.newInstance();
    domFactory.setNamespaceAware(true);
    InputStream inputStream = new FileInputStream(new File(fileName));
    DocumentBuilder builder = domFactory.newDocumentBuilder();
    Document doc = builder.parse(inputStream);
    StringWriter stw = new StringWriter();
    Transformer serializer = TransformerFactory.newInstance().newTransformer();
    serializer.transform(new DOMSource(doc), new StreamResult(stw));
    return stw.toString();
    catch (Exception e){
    System.err.println(e);
    System.exit(0);
    return "OK";
    </blockquote>
    Let me know if this is of nay help.
    Thanks.

  • XML data from a Web Service sometimes missing fields I need, any ideas on a trap?

    I get reports from our ERP via a web service to SSRS.  Just got asked to make a tweak in a report and find that the WebService only sends data that is needed for this transaction.  My issue is our entire system is based around EACH item we make. 
    New Trading Partner got Case Price.  We put two of our items together in a box for them is all that happened.
    Need to identify package column that had "ea" hard coded. 
    When I get a cs item there are more elements that identify conversion factor UOM etc.  They are only sent down for CASE items.  How do I trap for a column not being there 99.98555% of the time?
    _conv =  conversion factor.  I only receive it with a 2,4,6 in it whe4n the item is not an each. 
     =iif(Len(Fields!tcibd003_conv.Value) >0  , Fields!inh4470_qshp.Value / Fields!tcibd003_conv.Value , Fields!inh4470_qshp.Value  )
    How do I trap for this?  I tried Fields!tcibd003_conv.IsMissing but that didn't seem to work as expected.
    TIA

    Hello,
    Sorry, I cannot get your requirment and report design structure currently. Can you post the following information to us ? It is benefite us for further analysis.
    1. The fields in your dataset. You can post the dataset with sample data if it is convenient.
    2. The Report design structure: Table or Matrix and Group inforamation
    3. It seems that you want to filter the report data based on a expression, please post more details about the filter logic and expected result.
    Regards,
    Fanny Liu
    Fanny Liu
    TechNet Community Support

  • How to retrieve data from a web service

    Hi
    i am at very beginner level about web services.
    I am searching for a simple example of retrieving data from a web services, but cant find.
    How can i get xml data from a web service. i dont need to develop the web service it is already ready, i just need how could i fetch data from it.
    Can somebody point out or give an example?
    Thanks in advance

    Hi,
    just create a skeleton for the Web Service. In JDeveloper, create a new project and then use the "NEW" context menu option.
    Navigate to "Business Tier" --> Web Services and select "Web Service Proxy"
    In teh following, provide the WSDL reference to create the Java proxy. This gives you accss to the WS without having to parse the XML yourself
    Frank

  • How to pass XML data between applications

    Hi,
    can any one tell me how to pass XML data between applications
    Thanks in advance
    Sudheer

    Steve,
    I tried the code in the http package in the Appendix A section of your book. Each time i try a POST I get a HTTP/1.1 400 Bad Request error from the server. I can successfully do a GET from URLs. I have pretty much copied your code verbatim. Any ideas?
    Thanks,
    Sunder
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Steven Muench ([email protected]):
    See the "Working with XML Messages" section starting on page 242 of my Building Oracle XML Applications. It covers how to Send and Receive XML messages over the web through HTTP GET and HTTP POST as well as specifically Example 6-30 that illustrates how to receive a posted XML message in a servlet and process it.
    Hope this helps.<HR></BLOCKQUOTE>
    null

  • Trying to bind XML data and form fields

    I have a fairly simple PDF - and I am trying to bind XML data to he form fields.
    In the designer I can bring up the data connection and
    select Global - for the binding method - and as I understand it - this will link Form Fields and XML data fields with the same name - (sounds logical to me)
    but all that happens is :
    I see the name of the field in the form field rahter than seeing the actual data
    should I select : None as the binding or normal ....
    but Normal doesnt show Anything - even after i select it .
    I can't quite seem to make this work -
    Any help here would be appreciated
    Thanks :)

    This is on a stand - alone system
    Using Designer ES ......
    I saved the Form as an xdp form
    and it seems as if all goes well until
    View the data and nothing appears - or
    just the names of the fields appear

  • Unzip data received from web service?

    In my Apex 3.0.1 application I am trying to obtain data from a web service. The problem is that the returned data is first zipped and then encoded using base 64 coding.
    I can decode the data using the utl_encode package and if I download the result, I can unzip it using winzip to get the original XML message. However, I need to unzip the message within Apex in order to process the content. The Oracle package utl_compress provides uncompression functions for the LZ compression algorithm but this does not seem to be the same as winzip etc.
    Thanks for any suggestions anyone might have.

    One way would be to use a Java stored procedure to perform the unzipping.

  • Connecting to Data via a web service:  WSDL vs HTTP REST

    I created an app and easily was able to get my data from my web service via connecting using the WSDL file.  I then added RESTful to my web service and tested it via SOAPUI and then I created a copy of my original app and deleted the link to my service and then added it but this time using the HTTP connection and I was able to connect, I was able to get my value objects created via the xml parser.  However, for some reason, my date fields are not working.  I went into debug and it says they are invalid.  I checked the xml for both the web service WSDL version and the HTTP RESTful and they look the same.  So why all of the sudden does my dates not work?
    SOAPui from web service
    <endDate>2011-05-30T09:53:00-06:00</endDate>
    RESTful address
    <endDate>2011-05-30T09:53:00-06:00</endDate>
    RESTful Flash
    endDate:Date
    WSDL Flash
    endDate:Date

    DS Version: 14.2.1.224 (14 sp1)
    Job Server 14.2.2.5xx (14 sp2)
    Configuration on the Web Service:
    URL:
    https://maxcvservices.dnb.com/Company/V4.0?wsdl
    https://maxcvservices.dnb.com/FirmographicsProduct/V3.2?wsdl
    WSS User: provided the name
    WSS Pass: provided the pass
    Timeout set to 500
    All other settings are blank.
    Does something need to be defined on the job server?
    The WSDL does not even open on the workstation unless I use an adapter. I had found an article/help/note (something) that the web service in SAP DS does not work with HTTPS and it does with an HTTP Adapter.
    I do not have access to Job Server, will have to schedule some changes if there is config that has to happen there.
    Thanks for your input.
    Cheers,
    Ryan

  • Dates coming from web service

    Hi,
    I'm currently trying to consume in VC a CAF Application Service exposed as a Web Service. I'm able to retrieve what I want but I have a problem with dates format.
    The web service returns dates in the following format: YYYY-MM-DDTHH:NN:SS
    When I test my data service in VC it works fine. When I run my iview, VC swap the month and the day and compute the new date...
    It's not just a problem of formatting with DVAL and DSTR because the date is already computed.
    Example:
    Date returned from web service: 2007-09-21T00:00:01
    Date returned from test data service in VC: 21.09.2007
    Date returned at runtime: 09.09.2008
    VC understand 21.09.2007 not like DD.MM.YYYY but like MM.DD.YYYY so 21.09.2007 becomes 09.09.2008
    I also tried to check on the server Regional and Language option but it doesn't come from there.
    Have you ever faced this problem?
    Thx

    Hi,
    It is a Web Service generated by NWDS (to expose my CAF Application Service)and deployed on the server.
    The url si like http://<hostname>:<port>/mywebservice/Config1?wsdl
    The Web Service runs correctly.
    When I call a method of my web service to retrieve a list of objects (CAF Entity Services) and their attributes, it returns attributes of type String and Dates of type 'java.util.GregorianCalendar'.
    It seems that VC doesn't correctly understand this type of Date at runtime
    Regards,
    Thomas

  • Deliver data to external web service possible in OBIEE 11g?

    Hi all,
    I'm looking into the possibility of "pushing" data from OBIEE and out to an external web service, e.g. through executing a scheduled report that instead of delivering the result on screen, it would call an external web service that would consume the generated data for storage in an external system.
    Does anyone know if this is possible to implement in OBIEE 11g? (So far, all I've found is how to display data in OBIEE through consumation of web service(s), but I'd like to "push out" data to a web service from OBIEE).
    Regards,
    -Haakon-

    Action Links 11g - Invoke webservice you can try out..... I never tried... Just sharing my views.
    http://www.oracle.com/webfolder/technetwork/tutorials/obe/fmw/bi/bi1113/actionframework/actionframework.htm

  • Retrieve data from a web service.

    Hi,
    I need to retrieve the data from Oracle CRM On Demand therefore I downloaded the web service "CustomObject15" from Oracle CRM On Demand then used the netbeans Tool to generate XML files then call Web Service "CustomObject15" then I created small java code to retrieve the data through a web service but the data did not retrieved.
    Only retrieved "CustomObject15Data.CustomObject15Data@1be0799a"
    Kindly, Can you help me and provide me small java code to the data through a web service "CustomObject15".
    Best Regards.

    Hi,
    just create a skeleton for the Web Service. In JDeveloper, create a new project and then use the "NEW" context menu option.
    Navigate to "Business Tier" --> Web Services and select "Web Service Proxy"
    In teh following, provide the WSDL reference to create the Java proxy. This gives you accss to the WS without having to parse the XML yourself
    Frank

  • How to display an image in FORM 10g/11g data recovered through Web Services

    I need to show in a FORM 10g/11g an image that is recovered from a Web Service (XML format).
    (The Web Service retrieves several images from SQL Server database).
    versions previous 6i... one use field type ActiveX Control, and there showed the respective images, even with previous and next controls. Aspect that new versions of form 10g & 11g is obsolete.
    Any help thank you.
    Edited by: 859272 on 16/05/2011 03:06 PM
    Edited by: 859272 on 17/05/2011 07:15 AM

    I tried it doing it this way and it worked -
    1. copy the image into the directory aliased in 9iAS configuration file as '/images/'.
    2. In the PL/SQL code section after header, I write the following code -
    begin
    htp.p('<img src="/images/pobexp.gif"/>');
    end;

  • Error in testing XML query result set web service

    Hi
    I was trying to test a <b>XML query result set web service</b> in BW system with tcode wsadmin but getting error like
    <b>Cannot download WSDL from http://ibmbtsb02.megacenter.de.ibm.com:8070/sap/bw/xml/soap/queyview?sap-client=001&wsdl=1.1&mode=sap_wsdl: F:\usr\sap\W70\DVEBMGS70\j2ee\cluster\server0\apps\sap.com\com.sap.engine.services.webservices.tool\servlet_jsp\wsnavigator\root\WEB-INF\temp\ws1139464945296\wsdls\wsdlroot.wsdl (The system cannot find the path specified)</b>
    I had tried it first time few days ago and was able to test it successfully with the same configuration settings.
    Could any one of you please provide any suggestion on this?
    Thanks in advance
    Sudip

    hi
    check this links it may help u.
    http://help.sap.com/saphelp_nw04/helpdata/en/c3/e3072e65f04445a010847aa970b68b/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/d8/3bfc3f8fc2c542e10000000a1550b0/frameset.htm
    Regards,
    Manoseelan

  • How can i records with date format using web services?

    Hello
    I can't record date records using web services. I get no message errors.
    I can import string values but no dates (YYYY-MM-DD). Do you have any clue about that?
    Regards
    Arturo

    hello,
    That's the code I'm using to update an opportunity. In the date fields (e.g. dFecha_de_entrega_al_cliente) I've tried to put an specific date in the correct format (If i put it in another format i've got an error message due the wrong format). The CRM accepted the code but it didn't update the values that are different of string.
    I don´t know if there is something missing in teh program or if the developer environment is not the adequate.
    Regards for your comments
    Arturo
    Private Sub ActualizarOportunidad(ByVal fila As Data.DataRow, ByVal TipoPersona As String)
    Dim oLog As New Log()
    Dim IdLog As Integer
    Dim NumSerie As String = ""
    Try
    oLog.Insert_Log("Activación Garantía - Crear Oportunidad", oLog.GetLastIdProceso())
    IdLog = oLog.GetLastId()
    Dim sr_input As Opportunity.OpportunityUpdate_Input
    Dim sr_output As Opportunity.OpportunityUpdate_Output
    sr_input = New Opportunity.OpportunityUpdate_Input
    Dim sr(1) As Opportunity.OpportunityData
    sr(0) = New Opportunity.OpportunityData
    NumSerie = fila("NumeroSerie").ToString().Trim()
    sr(0).ExternalSystemId = NumSerie
    sr(0).OpportunityName = fila("NumeroSerie").ToString().Trim()
    sr(0).SalesStage = "Deseo" '"Cerrada/Ganada"
    sr(0).dFecha_de_entrega_al_cliente = fila("FechaEmision").ToString().Trim()
    sr(0).dFecha_de_facturacin_al_cliente = fila("FechaCompra").ToString().Trim()
    sr(0).stNro_Factura = fila("NumeroFactura").ToString().Trim()
    sr(0).plActividad_Economica = fila("IdActividad").ToString().Trim()
    sr(0).plTipo_de_Venta = fila("TipoCompra").ToString().Trim()
    sr(0).CustomObject8ExternalSystemId = fila("ApellidoVendedor").ToString.Trim()
    'sr(0).CustomObject8ExternalSystemId = IIf(TipoPersona = "J", fila("DocumentoE").ToString().Trim(), fila("Documento").ToString.Trim())
    'sr(0).CustomObject7ExternalSystemId = fila("")
    Dim lofsr As Opportunity.ListOfOpportunityData
    lofsr = New Opportunity.ListOfOpportunityData
    lofsr.Opportunity = sr
    sr_input.ListOfOpportunity = lofsr
    sr_output = oOpportunity.OpportunityUpdate(sr_input)
    oLog.Update_Log(IdLog, "Si", NumSerie, "")
    Catch ex As SoapException
    Me.txtError.Text = ex.Detail.InnerText.ToString()
    oLog.Update_Log(IdLog, "No", NumSerie, ex.Detail.InnerText.ToString())
    End Try
    End Sub
    ************************************************************************

  • How to Use SOAPArray to Exchanged Data with a Web Service

    The method of a prototype Web service I created is defined to take many parameters
    and return an object of a user defined class. Furthermore, the user defined class
    includes data elements of another user defined class and the Java ArrayList class.
    This works with a Java client referencing the WebLogic created client.jar file
    but I don't know how well it will work with a non-Java client. In particular,
    with Perl which is the language that will be used by the developer who first will
    test with the prototype.
    In posts to this newsgroup use of "language-specific, generic containers" has
    been discouraged and the "language-agnostic" SOAPArray recommended. I have searched
    this newgsroup and the Web for examples of how to use a SOAPArray in a Web service
    EJB to receive parameters and return results but found none.
    Will someone refer me to an example or give an overview of how a Java Web service
    EJB running in WebLogic 6.1 would use SOAPArray to get parameter values and return
    results?
    Also, I would like confirmation that it is best to use SOAPArray to exchange data
    with a Web service to achieve the goal of a service accessible by any language.
    Thank you.

    Replies in-line:
    How are the structures, e.g. gltrans-workType, defined in the Web service?The structure is made up of nested Java Beans, but this does not mean that the
    client for your web service has to be written in Java. The WSDL that I sent contains
    everything that a .NET-based (or Perl-based, or Python-based, or VB-based, or
    C++ based) Web Service Stack needs to correctly create all the data types in the
    web services' signature! That's the beauty of XML Schema! It's programming language
    independent :-)
    In
    other words, what definition in Java resulted in the WSDL statements?The WSDL wasn't produced by WLS 6.1, but it (WLS 6.1) can consume it.
    What is the signature of method submitGLTransWorkAsJavaBean() in the
    Web service?public void submitGLTransWorkAsJavaBean(GlTransactionsCpyType glTransactionsCpyType)
    GlTransactionsCpyType is the outer-most Java Bean. WLS 6.1 does not generate
    Java Beans for you, but it will use ones that you defined. See the Java Bean tutorial
    on the Javasoft sitem for details on how to create a Java Bean.
    Was the WSDL generated using the WL tools for creating a Web service?No.
    Conclusion:
    You asked for someone to provide you with an example of how to use SOAP array
    in a WSDL, which is what the attached file contained :-) What you want to do now
    is find a tool that can generate Java Bean code from this WSDL (Apache Axis has
    a wsdl2java tool that should work), or create the Java Beans yourself. Afterwards,
    create a WLS 6.1 Web Service a expose it for a Perl or .NET client.
    Regards,
    Mike Wooten
    "Jeff Carey" <[email protected]> wrote:
    >
    Please elaborate.
    How are the structures, e.g. gltrans-workType, defined in the Web service?
    In
    other words, what definition in Java resulted in the WSDL statements?
    What is the signature of method submitGLTransWorkAsJavaBean() in the
    Web service?
    Was the WSDL generated using the WL tools for creating a Web service?
    Thank you.
    "Michael Wooten" <[email protected]> wrote:
    Hi Jeff,
    Sounds like a pretty cool prototype :-)
    I have attached a WSDL (at the bottom of this post) that contains a<schema>
    that
    uses a SOAPArray to create an array of a <complexType>.
    HTH,
    Mike Wooten
    "Jeff Carey" <[email protected]> wrote:
    The method of a prototype Web service I created is defined to take
    many
    parameters
    and return an object of a user defined class. Furthermore, the user
    defined class
    includes data elements of another user defined class and the Java ArrayList
    class.
    This works with a Java client referencing the WebLogic created client.jar
    file
    but I don't know how well it will work with a non-Java client. Inparticular,
    with Perl which is the language that will be used by the developerwho
    first will
    test with the prototype.
    In posts to this newsgroup use of "language-specific, generic containers"
    has
    been discouraged and the "language-agnostic" SOAPArray recommended.
    I have searched
    this newgsroup and the Web for examples of how to use a SOAPArray in
    a Web service
    EJB to receive parameters and return results but found none.
    Will someone refer me to an example or give an overview of how a Java
    Web service
    EJB running in WebLogic 6.1 would use SOAPArray to get parameter values
    and return
    results?
    Also, I would like confirmation that it is best to use SOAPArray toexchange
    data
    with a Web service to achieve the goal of a service accessible by any
    language.
    Thank you.

Maybe you are looking for