Handling result ciontaining xml nodes from  c# web service method call in flex

I have read a article headed: Handling results as XML with
the e4x result format
Using this I have build a test application.But facing lot of
problems.
Here are the details of my code.I have used first example of
using namespace.
private namespace tempNamespace = "TEST1.WebServices";
use namespace tempNamespace;
I have specified result type as 'e4x' :
<mx:WebService id="myTestService" showBusyCursor="true"
wsdl="
http://localhost/TEST/TestFlexWS.asmx?WSDL"
useProxy="false">
<mx:operation name="HelloWorldEx" resultFormat="e4x"
result="Hello_Result_New(event);"
fault="Hello_fault_New(event);">
<mx:request>
<strProductName>Test</strProductName>
</mx:request>
</mx:operation>
</mx:WebService>
In result handler:
o/p of myTestService.HelloWorldEx.lastResult is:
<HelloWorldExResponse xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="
http://www.w3.org/2001/XMLSchema"
xmlns="TEST1.WebServices" xmlns:soap="
http://schemas.xmlsoap.org/soap/envelope/">
<HelloWorldExResult>&lt;PRODUCTCOLLECTION&gt;
&lt;PRODUCT&gt;
&lt;PRODUCTNAME&gt;Test Product
121&lt;/PRODUCTNAME&gt;
&lt;/PRODUCT&gt;&lt;/PRODUCTCOLLECTION&gt;</HelloWorldExResult>
<TestResult></TestResult>
</HelloWorldExResponse>
When I display alert for :
Alert.show(
myTestService.HelloWorldEx.lastResult.HelloWorldExResult);
It's showing me result as:
<PRODUCTCOLLECTION>
<PRODUCT>
<PRODUCTNAME>NEW DAM</PRODUCTNAME>
</PRODUCT>
</PRODUCTCOLLECTION>
But when I display alert for inner node it doesn't show me
anything:
Alert.show(
myTestService.HelloWorldEx.lastResult.HelloWorldExResult.PRODUCTCOLLECTION.PRODUCT.PRODUC TNAME);
Can anybody help me out?
It will be gr8 help for me.

I have read a article headed: Handling results as XML with
the e4x result format
Using this I have build a test application.But facing lot of
problems.
Here are the details of my code.I have used first example of
using namespace.
private namespace tempNamespace = "TEST1.WebServices";
use namespace tempNamespace;
I have specified result type as 'e4x' :
<mx:WebService id="myTestService" showBusyCursor="true"
wsdl="
http://localhost/TEST/TestFlexWS.asmx?WSDL"
useProxy="false">
<mx:operation name="HelloWorldEx" resultFormat="e4x"
result="Hello_Result_New(event);"
fault="Hello_fault_New(event);">
<mx:request>
<strProductName>Test</strProductName>
</mx:request>
</mx:operation>
</mx:WebService>
In result handler:
o/p of myTestService.HelloWorldEx.lastResult is:
<HelloWorldExResponse xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="
http://www.w3.org/2001/XMLSchema"
xmlns="TEST1.WebServices" xmlns:soap="
http://schemas.xmlsoap.org/soap/envelope/">
<HelloWorldExResult>&lt;PRODUCTCOLLECTION&gt;
&lt;PRODUCT&gt;
&lt;PRODUCTNAME&gt;Test Product
121&lt;/PRODUCTNAME&gt;
&lt;/PRODUCT&gt;&lt;/PRODUCTCOLLECTION&gt;</HelloWorldExResult>
<TestResult></TestResult>
</HelloWorldExResponse>
When I display alert for :
Alert.show(
myTestService.HelloWorldEx.lastResult.HelloWorldExResult);
It's showing me result as:
<PRODUCTCOLLECTION>
<PRODUCT>
<PRODUCTNAME>NEW DAM</PRODUCTNAME>
</PRODUCT>
</PRODUCTCOLLECTION>
But when I display alert for inner node it doesn't show me
anything:
Alert.show(
myTestService.HelloWorldEx.lastResult.HelloWorldExResult.PRODUCTCOLLECTION.PRODUCT.PRODUC TNAME);
Can anybody help me out?
It will be gr8 help for me.

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.

  • Reading XML file from java web service

    Hi
    I am developing web service using Netbeans and the application server is glassfish.
    but I am facing a problem
    I have folder called "config" which will include the xml files. What I need to do setting path into that folder
    but it will read from another location when I am deploying it
    How to set our own path ?
    Error
    DPL5306:Servlet Web Service Endpoint [NewWebService] listening at address [http://kapila.epic.lk:8080/WebApplication2/NewWebServiceService]
    deployed with moduleid = WebApplication2
    java.io.FileNotFoundException: /root/MyWorks/glassfish-v2/domains/domain1/config/OSconfig/MConfig.xml (No such file or directory)
    at java.io.FileInputStream.open(Native Method)
    My "conifg" folder, i have put in to working directory but it will read from "/root/MyWorks/glassfish-v2/domains/domain1/config/OSconfig/MConfig.xm"
    below method is used for getting its contain value
    public String getMainCofig() {
                String v ="";
            try{
              DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory
                        .newInstance();
              DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder();
              Document doc = docBuilder.parse(new File("OSconfig/MConfig.xml"));
              doc.getDocumentElement().normalize();
              NodeList listOfSPRMs = doc.getElementsByTagName("MainConfig");
              Node firstSPRMNode = listOfSPRMs.item(0);
              if (firstSPRMNode.getNodeType() == Node.ELEMENT_NODE) {
                   Element firstSPRAMElement = (Element) firstSPRMNode;
                   // Getting platform
                   NodeList server_port = firstSPRAMElement
                             .getElementsByTagName("RunningPlatform");
                   Element server_port_el = (Element) server_port.item(0);
                   NodeList server_port_List = server_port_el.getChildNodes();
                    v= ((Node) server_port_List.item(0))
                             .getNodeValue().trim();
            }catch (Exception e){
            e.printStackTrace();
                    return v;
    Regards
       

    I didn't quite get what the problem is but if the the desired file is in custom directory why don't you just use absolute path to reference it?
    Like: "/home/my/OSconfig/MConfig.xml"

  • 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 remove actual XML content from Weather Web Service Client's standard output?

    Hi,
    I tried web service example examples.webservices.rpc.weatherEJB.Weather with WLS6.1,
    it works fine, but on client side, ( either Client or DClient ), I always see
    the actual XML content being sent and received from standard output, like
    "------------- RECEIVING XML -------------", and I can't find any related System.out.println
    statement in client source code, Please explain how to remove it, may there is
    a configurable parameter for this? any help will be highly appreciated.
    Thanks
    Naichen

    Hi Naichen,
    To suppress showing the actual SOAP request and response going to standard out,
    change the following line in the Client.java:
    h.put("weblogic.soap.verbose", "true" );
    to read:
    h.put("weblogic.soap.verbose", "false" );
    Regards,
    Mike Wooten
    "Naichen Liu" <[email protected]> wrote:
    >
    Hi,
    I tried web service example examples.webservices.rpc.weatherEJB.Weather
    with WLS6.1,
    it works fine, but on client side, ( either Client or DClient ), I always
    see
    the actual XML content being sent and received from standard output,
    like
    "------------- RECEIVING XML -------------", and I can't find any related
    System.out.println
    statement in client source code, Please explain how to remove it, may
    there is
    a configurable parameter for this? any help will be highly appreciated.
    Thanks
    Naichen

  • 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

  • Is there any way to read XML directly from a Web Page ??

    i have a url, which on sending request, shows XML in browser.
    Now i need to read this XML in browser and then manipulate it according to my need and display it on another page.
    actually the process is. :
    1) i have to first retrieve an xml from other site. (XML will only be shown in browser)
    2.)then i have to read the Xml and show it in according to my requirements.
    Is there any way to read XML directly from a Web Page ??
    is their logic to accomplish this.
    e.g in Servlet i can do somewhat like this :
    String wholeXml=Somemethod(url);
    Please Advice

    the average Java XML parser will accept an InputStream, so just open an URLConnection to the webpage, get the inputstream from it and feed that inputstream to the XML parser. If the URL has valid XML data, it will get parsed without problems.

  • How to create XML data source/ and load data from a web service to BI

    All,
    I m trying to find a 'how to' document (or any document) that shows how to create an XML data source to load data directly from a web service or from an XML file.
    I appreciate any help.

    Hi Mike,
    Two more for you:----
    /thread/111488 [original link is broken]
    http://help.sap.com/saphelp_nw70/helpdata/en/e6/1dd53bb90cbb1ae10000000a11402f/content.htm
    Regards,
    Suman

  • Converting string data from a web service respons into XML structure of XI

    Hi,
    We receive a string structure from a web service.
    The string structure has an xml type format, that is all the tags and its content are in one line .
    The WSDL file of the webservice defines its response structure as a string type.
    How do i convert this string into proper XML structure (predefined by me in Integration repository).
    OR how do i make XI understand this string as an XML structure for further processing.
    Later i have to map this XML message type into IDoc.
    Himani

    Hi Himani,
    Please find the code for ur requirement -
    String need to parse -<response_webservice><from_date>20080101</from_date><to_date>20080202</to_date></response_webservice>
    Below mentioned code will convert it to -<MT_DATA><FROMDATE>20080202</FROMDATE><TODATE>20080101</TODATE></MT_DATA>
    Create a Message type and map it like this using java mapping ( no need to use Graphical mapping).
    Use MT_DATA as source and map it to your target structure .
    import java.io.FileInputStream;
    import java.io.IOException;
    import java.io.StringReader;
    import java.util.HashMap;
    import java.util.Map;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import javax.xml.parsers.FactoryConfigurationError;
    import javax.xml.parsers.ParserConfigurationException;
    import javax.xml.transform.TransformerFactoryConfigurationError;
    import org.w3c.dom.DOMException;
    import org.w3c.dom.Document;
    import org.w3c.dom.Element;
    import org.w3c.dom.NodeList;
    import org.w3c.dom.Text;
    import org.xml.sax.InputSource;
    import org.xml.sax.SAXException;
    public class XMLParser {
         private Map param = null;
         public static void main(String[] args) {
              try {
                   XMLParser wdb = new XMLParser();
                   wdb.parse();
              } catch (Exception e) {
                   e.printStackTrace();
         public void setParameter(Map param) {
              this.param = param;
              if (param == null) {
                   this.param = new HashMap();
         public void parse() {
              String document = "<response_webservice><from_date>20080101</from_date><to_date>20080202</to_date></response_webservice>";
              try {
                   Document sdoc;
                   DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
                   // Using factory get an instance of document builder
                   DocumentBuilder db = dbf.newDocumentBuilder();
                   // parse using builder to get DOM representation of the XML file
                   sdoc = db.parse(new InputSource(new StringReader(document)));
                   Element docEle = sdoc.getDocumentElement();
                   NodeList nl = docEle.getElementsByTagName("from_date");
                   Element lstElmnt = (Element) nl.item(0);
                   NodeList nl1 = docEle.getElementsByTagName("to_date");
                   Element fstElmnt = (Element) nl1.item(0);
                   System.out.println(fstElmnt.getFirstChild().getNodeValue());
                   System.out.println(lstElmnt.getFirstChild().getNodeValue());
                   Document tdoc = db.newDocument();
                   Element structure = createElement("MT_DATA", null, tdoc);
                   tdoc.appendChild(structure);
                   Element statement = createElement("FROMDATE", fstElmnt.getFirstChild().getNodeValue(), tdoc);
                   structure.appendChild(statement);
                   Element statement2 = createElement("TODATE", lstElmnt.getFirstChild().getNodeValue(), tdoc);
                   structure.appendChild(statement2);
                   System.out.println("Struct is :::"+tdoc.getDocumentElement().toString());               
              } catch (DOMException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
              }  catch (IOException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
              } catch (FactoryConfigurationError e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
              } catch (ParserConfigurationException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
              } catch (SAXException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
              } catch (TransformerFactoryConfigurationError e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
         static Element createElement(String elementName, String content,
                   Document document) {
              Element returnElement;
              returnElement = document.createElement(elementName);
              if (content != null) {
                   Text T = document.createTextNode(content);
                   returnElement.appendChild(T);
              return returnElement;
         static Element createElement(String elementName, String content,
                   String attributeName, String attributeValue, Document document) {
              Element returnElement = createElement(elementName, content, document);
              returnElement.setAttribute(attributeName, attributeValue);
              return returnElement;
    Regards,
    Kishore

  • Extracting Tag Value from XML returned when a web service via PL/SQL

    All,
    Good afternoon.
    I have a PL/SQL that called a web service. The code is as below:
    create or replace procedure soap3 as
    soap_request varchar2(30000);
    soap_respond varchar2(30000);
    http_req utl_http.req;
    http_resp utl_http.resp;
    resp XMLType;
    i integer;
    bra number := 205;
    cus number := 134988;
    cur number := 1;
    led number := 0;
    sub number := 0;
    chq number := 1;
    n number;
    v_raw RAW(32767);
    buff RAW(32767);
    http_res UTL_HTTP.resp;
    blob_length INTEGER;
    chunk_size BINARY_INTEGER := 32767;
    blob_position INTEGER := 1;
    out_file UTL_FILE.FILE_TYPE;
    name VARCHAR2(256);
    value VARCHAR2(1024);
    v_buffer RAW(32767);
    begin
    soap_request := '<?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
    <Validate_Mandate xmlns="http://tempuri.org/Clearing_Workflow/Service1">
    <Bra_code>205</Bra_code>
    <Cus_num>134988</Cus_num>
    <Cur_code>0</Cur_code>
    <Led_code>0</Led_code>
    <sub_acct_Code>0</sub_acct_Code>
    </Validate_Mandate>
    </soap:Body>
    </soap:Envelope>';
    --DBMS_LOB.CREATETEMPORARY(buff,true);
    http_req := utl_http.begin_request('http://10.99.0.13/clearinginwards/InwardCheques.asmx',
    'POST',
    'HTTP/1.1');
    utl_http.set_header(http_req, 'Content-Type', 'text/xml'); -- since we are dealing with plain text in XML documents
    utl_http.set_header(http_req, 'Content-Length', length(soap_request));
    utl_http.set_header(http_req,
    'SOAPAction',
    'http://tempuri.org/Clearing_Workflow/Service1/Validate_Mandate'); -- required to specify this is a SOAP communication
    utl_http.write_text(http_req, soap_request);
    http_resp := utl_http.get_response(http_req);
    dbms_output.put_line('HTTP response status code: ' || http_resp.status_code);
    dbms_output.put_line('HTTP response reason phrase: ' || http_resp.reason_phrase);
    UTL_HTTP.read_raw(http_resp, buff, 32767);
    end;
    The response gotten from the web service is as below :
    open=F, temp=T, length=13256, chunksize=8132, data=3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D227574662D38223F3E3C736F61703A456E76656C6F706520786D6C6E733A736F61703D22687474703A2F2F736368656D61732E786D6C736F61702E6F72672F736F61702F656E76656C6F70652F2220786D6C6E733A7873693D22687474703A2F2F7777772E77332E6F72672F323030312F584D4C536368656D612D696E7374616E63652220786D6C6E733A7873643D22687474703A2F2F7777772E77332E6F72672F323030312F584D4C536368656D61223E3C736F61703A426F64793E3C56616C69646174655F4D616E64617465526573706F6E736520786D6C6E733D2268747470
    I do not understand what this output actually means as what the webservice returns is meant tio be a XML with a signature tag that contain an image of customers signature.
    Please I need help.

    Thanks for the responses thus far , but I think i need to properly define my problem so will be able to help me better.
    I have a webservice with the definition below :
    POST /NigMailService/nigmailservice.asmx HTTP/1.1
    Host: 10.2.15.157
    Content-Type: text/xml; charset=utf-8
    Content-Length: length
    SOAPAction: "http://tempuri.org/GetImageDataTable_HT"
    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
    <GetImageDataTable_HT xmlns="http://tempuri.org/">
    <BranchCode>int</BranchCode>
    <CustomerNumber>int</CustomerNumber>
    <CurrencyCode>int</CurrencyCode>
    <LedgerCode>int</LedgerCode>
    <SubAccountCode>int</SubAccountCode>
    <ChequeNumber>int</ChequeNumber>
    <ClientCode>string</ClientCode>
    <wantedImageTypes>int</wantedImageTypes>
    <wantedImageSize_InPercent>int</wantedImageSize_InPercent>
    </GetImageDataTable_HT>
    </soap:Body>
    </soap:Envelope>
    and sample response :
    HTTP/1.1 200 OK
    Content-Type: text/xml; charset=utf-8
    Content-Length: length
    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
    <GetImageDataTable_HTResponse xmlns="http://tempuri.org/">
    <GetImageDataTable_HTResult>xmlxml</GetImageDataTable_HTResult>
    </GetImageDataTable_HTResponse>
    </soap:Body>
    </soap:Envelope>
    My aim is to write a PL/SQL that will call the webservice and recieve the response which is definately a XML with an image that is meant to be written to a file in PL/SQL.
    Please how can i achieve this ?

  • Bad XML from external web service and would like to change the content

    I am getting a bad XML(not valid) from external web service and I would like to change the content of the body in OSB proxy service to make it valid.
    For example
    <g:Information xsi:schemaLocation="http:// bad schema" xmlns:g="http://abc.com/t.xsd">
    <test>Test Data</test>
    </g:Information>
    should become
    <g:Information xmlns:g="http://abc.com/t.xsd">
    <test>Test Data</test>
    </g:Information>
    Do you how can I do this?

    I don't think it would be the best solution but you may try -
    1. Conver the incoming XML to string using fn-bea:serialize() function
    2. Replace the not-required content with a blank
    3. Covert the string back to XML using fn-bea:inlinedXML
    If you find any other solution, please let us know.
    Regards,
    Anuj

  • Erro while recieving a signed response from a web service

    i'm not sure whether this is the right forum to post this topic, but anyways i'm going fwd as i was not able to find a rite one, if any body knows, plz redirect me to that, anyways below is my issue.
    i'm using axis as a web service engine on my client side and getting a signed response from a web service.
    But while recieving the response im gettng the following error.
    Verification failed for URI "#id-13753285"
    org.apache.ws.security.WSSecurityException: The signature verification failed
         at org.apache.ws.security.processor.SignatureProcessor.verifyXMLSignature(SignatureProcessor.java:332)
         at org.apache.ws.security.processor.SignatureProcessor.handleToken(SignatureProcessor.java:79)
         at org.apache.ws.security.WSSecurityEngine.processSecurityHeader(WSSecurityEngine.java:279)
         at org.apache.ws.security.WSSecurityEngine.processSecurityHeader(WSSecurityEngine.java:201)
         at org.apache.ws.axis.security.WSDoAllReceiver.invoke(WSDoAllReceiver.java:159)
         at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:190)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
         at org.apache.axis.client.Call.invoke(Call.java:2767)
         at org.apache.axis.client.Call.invoke(Call.java:2443)
         at org.apache.axis.client.Call.invoke(Call.java:2366)
         at org.apache.axis.client.Call.invoke(Call.java:1812)
         at com.sterlingcommerce.www.mesa.GISBindingStub.executeLightweightJDBCAdapterQuery(GISBindingStub.java:210)
         at client.MyClient.makeRequest(MyClient.java:105)
         at client.MyClient.main(MyClient.java:134)
    failed becoz of remote exception: org.apache.ws.security.WSSecurityException: The signature verification failed
    Exception in thread "main" org.apache.ws.security.WSSecurityException: The signature verification failed
         at org.apache.ws.security.processor.SignatureProcessor.verifyXMLSignature(SignatureProcessor.java:332)
         at org.apache.ws.security.processor.SignatureProcessor.handleToken(SignatureProcessor.java:79)
         at org.apache.ws.security.WSSecurityEngine.processSecurityHeader(WSSecurityEngine.java:279)
         at org.apache.ws.security.WSSecurityEngine.processSecurityHeader(WSSecurityEngine.java:201)
         at org.apache.ws.axis.security.WSDoAllReceiver.invoke(WSDoAllReceiver.java:159)
         at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:190)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
         at org.apache.axis.client.Call.invoke(Call.java:2767)
         at org.apache.axis.client.Call.invoke(Call.java:2443)
         at org.apache.axis.client.Call.invoke(Call.java:2366)
         at org.apache.axis.client.Call.invoke(Call.java:1812)
         at com.sterlingcommerce.www.mesa.GISBindingStub.executeLightweightJDBCAdapterQuery(GISBindingStub.java:210)
         at client.MyClient.makeRequest(MyClient.java:105)
         at client.MyClient.main(MyClient.java:134)
    below are my hadler configurations and properties file
    <handler type="java:org.apache.ws.axis.security.WSDoAllReceiver" >          
                        <parameter name="action" value="Signature"/>
                        <parameter name="user" value="signverf"/>
                        <parameter name="passwordCallbackClass" value="client.PWCallback"/>
                        <parameter name="passwordType" value="PasswordDigest"/>
                        <parameter name="signaturePropFile" value = "signatureVerifyCrypto.properties"/>
                        <parameter name="signatureKeyIdentifier" value="DirectReference"/>
                   </handler>properties file
    org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
    org.apache.ws.security.crypto.merlin.keystore.type=jks
    org.apache.ws.security.crypto.merlin.keystore.password=password
    org.apache.ws.security.crypto.merlin.keystore.alias=signverf
    org.apache.ws.security.crypto.merlin.alias.password=password
    org.apache.ws.security.crypto.merlin.file=certs/signverf/signverf_pubkeystore
    commands i used to generate keystore:
    keytool -import -alias signverf -file privCert4Sign.cer -keystore signverf_pubkeystore -storepass password
    keytool -list -alias signverf -keystore signverf_pubkeystore
    i tried goggling for this error,in one thread i got this is because of some issue in axis 1.4 which i'm using and if i try using axis 1.2, this will not come,
    for the time i'm not able to download axis 1.2 from any of the apache mirrors :( ,
    if some one can provide me the link,it will be really helpful.
    also if anyone as faced similar issue or can see whats going wrong here, please reply.
    also below is my soap response capture using tcpmon
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Header>
    <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><ds:Signature Id="Signature-18290758" xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
    <ds:SignedInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
    <ds:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/>
    <ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/>
    <ds:Reference URI="#id-13753285" xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
    <ds:Transforms xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
    <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/>
    </ds:Transforms>
    <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/>
    <ds:DigestValue xmlns:ds="http://www.w3.org/2000/09/xmldsig#">jAaM4xp/2ZOch7iqyyLynojMpV0=</ds:DigestValue>
    </ds:Reference>
    </ds:SignedInfo>
    <ds:SignatureValue xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
    JiOjIFgJ2qMvzJsirbjgV7AeDWfsS0Ak3xzue1nK+LXELM3tZ/h/eFyxCLZfLk+553vJbmnlU423
    8NgjgngYcYa+bB6yTovZJKB66LdQEHLpmTX4WNteLrcVOBfHyZcJCKemF2XyaF4yX03XGAIdNnFV
    1d8wZQcBgakPIrjJGAZtwo94bYBlL/MJedBP819Ecf/N6hEmafFxHD46Xapi+HdcDjQmCqxaol/I
    bQuM3ikJJ2v+46bQNKEWavdG7lIicjUsvH3xpyzZthj26nAHV6nAOEe8tybKhKLga6KDM+3eAJNq
    3s52yZTz68n7z5AijdmhMkc7ivCxELBx5TQYsw==
    </ds:SignatureValue>
    <ds:KeyInfo Id="KeyId-20631690" xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
    <wsse:SecurityTokenReference wsu:Id="STRId-5317380" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"><wsse:KeyIdentifier EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3">MIIDLDCCAhSgAwIBAgICBNIwDQYJKoZIhvcNAQEFBQAwTzEWMBQGA1UEAwwNcHJpdkNlcnQ0U2lnbjEMMAoGA1UECgwDYWJzMQswCQYDVQQGEwJVUzEaMBgGCSqGSIb3DQEJARYLeHl6QGFiYy5jb20wHhcNMDcwOTA0MDQzNzMxWhcNMDgwMzAyMDQzNzMxWjBPMRYwFAYDVQQDDA1wcml2Q2VydDRTaWduMQwwCgYDVQQKDANhYnMxCzAJBgNVBAYTAlVTMRowGAYJKoZIhvcNAQkBFgt4eXpAYWJjLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJSG2UR8nMAxctBlR5YSnEVeuHNFMM7t8YQX6J8GRausKPXyDT4pIfPHRaeag62K4cUhBDYBLyUmZqYTZBHpKISgYkYsXqYHoB4gif664rZvpMKw+cTpD/3WzViOeHHWfQM5/XUatLBPXzRUB78PcM9RnCEeznKUEPoWxTfl2qsR0d4CxOVzH9dHn6JCEaQQWzntH61YCw4Qm6Kq78+sLfnv7CBrg/NYewFX9JozZk7UzlmPZWCm7pp2d4UDn1KB7nLnLFxD6aMgjAikWKAU4h15ihJxu6Appc+ggAdAV/jQiaIeAtokfe2Iw1bUh8SOOR8iUa9lK0Jf6C/N9ZTnxCcCAwEAAaMSMBAwDgYDVR0PAQH/BAQDAgTwMA0GCSqGSIb3DQEBBQUAA4IBAQCKfRu1cXkwwnNZ+0brwT4iI1q/Ti/OVMWpP15Ob7bDE5rUjwpNUJXXlqKdOh7pkk1gLTiebQrMkd0ozpbi/Xdmea1xf9diCc4IApg6K9G4KACR2sLeXcKy7d4hakYqMLeaPJwBcd3V6DGiJgfP2S8Ui8rQzDpslTBM1+YaBdUVIv1/VCFO/K5I4lkPkjGDp/qDm4lXn3Mup9HG9INgklA02hPnYHWunVZm/5MZpEn4BYks+B3VqCXSAkRVD9aAuM3Tv4atblHDs3oKTV1awoVQbKkw+Eonnc/+Mex8A5sJ/8eUnQ3UPdT77U0+WcrvwFxoFP2e0J8xHW8N8b2fIr8H</wsse:KeyIdentifier></wsse:SecurityTokenReference>
    </ds:KeyInfo>
    </ds:Signature></wsse:Security></soapenv:Header>
    <soapenv:Body wsu:Id="id-13753285" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    <mesa:processData xmlns:mesa="http://www.sterlingcommerce.com/mesa" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <ProcessData>
    <service>Test_Web2</service>
    <b2b-protocol>http</b2b-protocol>
    <transport-instance-id>MESAHttpServerAdapter_HttpServerAdapter_node1</transport-instance-id>
    <SyncModeBP>false</SyncModeBP>
    <http-request-uri>/soap-new</http-request-uri>
    <transport-session-id>Fri Aug 31 14:04:57 IST 2007:110</transport-session-id>
    <incomingSOAPTransportMode>http</incomingSOAPTransportMode>
    <VERIFICATION_KEY/>
    <DECRYPTION_KEY/>
    <SECURITY_TOKEN_NAME>ST1</SECURITY_TOKEN_NAME>
    <SIGNING_CERTIFICATE>blrgislin13:10.11.23.37:114bb0fb841:12328</SIGNING_CERTIFICATE>
    <SIGNING_ALGO>http://www.w3.org/2000/09/xmldsig#rsa-sha1</SIGNING_ALGO>
    <SIGNING_KEY_IDENTIFIER_TYPE>3</SIGNING_KEY_IDENTIFIER_TYPE>
    <CANONICALIZATION_ALGO>http://www.w3.org/TR/2001/REC-xml-c14n-20010315</CANONICALIZATION_ALGO>
    <SIGNATURE_ENCRYPTION_ORDER>-1</SIGNATURE_ENCRYPTION_ORDER>
    <SOAP_URI>/soap-new</SOAP_URI>
    <SOAPEnvNSPrefix>soapenv</SOAPEnvNSPrefix>
    <SOAPEnvNSURI>http://schemas.xmlsoap.org/soap/envelope/</SOAPEnvNSURI>
    <messageMode>1</messageMode>
    <query_type>SELECT</query_type>
    <result_name>result</result_name>
    <pool>mysqlPool</pool>
    <row_name>row</row_name>
    <sql>SELECT * FROM MBX_MAILBOX</sql>
    <serviceMode>1</serviceMode>
    <typeName>LightweightJDBCAdapterQuery</typeName>
    <PrimaryDocument SCIObjectID="blrgislin13:10.11.23.37:114bb0fb841:19200"/>
    <ADD_SOAP_ENVELOPING>false</ADD_SOAP_ENVELOPING>
    <INSERT_SECURITY_HEADER>false</INSERT_SECURITY_HEADER>
    </ProcessData>
    </mesa:processData>
    </soapenv:Body>
    </soapenv:Envelope>
    sorry for this long mail, but we are really stuck and need to move forward,
    looking for your help.

    Hi,
    The Service Control Manager will generate an event if a service does not respond within the defined timeout period (the default timeout period is 30000 milliseconds). You could modify the registry to increase the default time-out value for the service control
    manager.
    For more detailed information, please see:
    Event ID 7011: Service Timeout
    http://social.technet.microsoft.com/wiki/contents/articles/13765.event-id-7011-service-timeout.aspx
    The Event 12362 indicates that a destination LUN could not be located or could not be restarted. You could refer to the article below to troubleshoot the issue:
    Event ID 12362 — VSS Shadow Copy Provider Operations
    http://technet.microsoft.com/en-us/library/ee264223(v=ws.10).aspx
    Best Regards,
    Mandy
    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.

  • Null Values From MS Web Services Toolkit Client

    Hi,
    I've been bashing my head against a wall on this one for too long now.
    I've got a JAX-WS web service deployed to Glassfish v2 b33 which works fine when called by a Java client. It also works fine when methods with no parameters are called from the MS client, i.e. simple and complex types are returned as they should be. However the problem I am having is that when the web service methods that take parameters are called from the MS client, the values received by the service are always null. I've montitored the service and values are being sent in the soap request, but a simple System.out.println statement in the first line of the method indicates a null value. I've captured a request from the Java client and the MS client to show the difference:
    A java request:
    <soapenv:Envelope
         xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
         xmlns:xsd="http://www.w3.org/2001/XMLSchema"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        <soapenv:Header/>
        <soapenv:Body>
         <ns0:getConfig xmlns:ns0="http://ws.firestorm.alternativenetworks.com/">
                 <arg0>Inbound</arg0>
         </ns0:getConfig>
        </soapenv:Body>
    </soapenv:Envelope>and a request from the web services toolkit:
    <SOAP-ENV:Envelope
         xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
         xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
         xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/">
         <SOAP-ENV:Header/>
         <SOAP-ENV:Body>
               <SOAPSDK4:getConfig xmlns:SOAPSDK4="http://ws.firestorm.alternativenetworks.com/">
              <SOAPSDK4:arg0>Inbound</SOAPSDK4:arg0>
         </SOAPSDK4:getConfig>
         </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>I've tried everything I can think of, including changing the style from RPC/LITERAL to DOCUMENT/LITERAL, but the Java web service just seem to like the way the SOAP message is wrapped up.
    Any help on this would be greatly appreciated.
    Cheers
    Tony

    Thanks Milan, your suggestion put me on the right track, however I've hit another snag.
    I decided the best way to solve the problem was to use the Glassfish Transformation Rules feature to take the SOAP request and transform it to a valid format before reaching the code. The XSLT file I created looks like this (I'm no XSLT guru so this will definitely need some tidying up, but for now it works): <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsl:stylesheet  version="1.0"
         xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
         xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
         xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
         xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/">
         <xsl:output method="xml" indent="yes"/>
         <xsl:template match="*">
              <xsl:copy><xsl:copy-of select="@*"/><xsl:apply-templates/></xsl:copy>
         </xsl:template>
         <xsl:template match="/SOAP-ENV:Envelope/SOAP-ENV:Body/*">
              <xsl:copy>
                   <xsl:copy-of select="@*"/>
                   <xsl:for-each select="*">
                        <xsl:text disable-output-escaping="yes"><arg</xsl:text>
                        <xsl:value-of select="position() - 1"/>
                        <xsl:text disable-output-escaping="yes">></xsl:text>
                        <xsl:value-of select="."/>
                        <xsl:text disable-output-escaping="yes"></arg</xsl:text>
                        <xsl:value-of select="position() - 1"/>
                        <xsl:text disable-output-escaping="yes">></xsl:text>
                   </xsl:for-each>
              </xsl:copy>
         </xsl:template>
    </xsl:stylesheet> which transforms the problem SOAP request: <SOAP-ENV:Envelope
         xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
         xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
         xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/">
         <SOAP-ENV:Header/>
         <SOAP-ENV:Body>
               <SOAPSDK4:getConfig xmlns:SOAPSDK4="http://ws.firestorm.alternativenetworks.com/">
              <SOAPSDK4:arg0>Inbound</SOAPSDK4:arg0>
         </SOAPSDK4:getConfig>
         </SOAP-ENV:Body>
    </SOAP-ENV:Envelope> to the following valid format: <?xml version="1.0" encoding="utf-8"?>
    <SOAP-ENV:Envelope
         xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
         xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
         xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/">
       <SOAP-ENV:Header/>
       <SOAP-ENV:Body>
          <SOAPSDK4:getConfig xmlns:SOAPSDK4="http://ws.firestorm.alternativenetworks.com/">
         <arg0>Inbound</arg0>
          </SOAPSDK4:getConfig>
       </SOAP-ENV:Body>
    </SOAP-ENV:Envelope> But when I load the .xsl file using the Transformation Rules page and call the web service using the Microsoft Web Services Toolkit, I'm getting the following exception: [#|2007-05-11T09:23:46.530+0100|INFO|sun-appserver9.1|javax.enterprise.system.tools.admin|_ThreadID=15;_ThreadName=Thread-15;com.sun.enterprise.admin.event.wsmgmt.TransformationRuleEvent -- server [1 Change(s), Id:1, ts:1178871826530];|ADM1041:Sent the event to instance:[com.sun.enterprise.admin.event.wsmgmt.TransformationRuleEvent -- server [1 Change(s), Id:1, ts:1178871826530]]|#]
    [#|2007-05-11T09:27:31.675+0100|INFO|sun-appserver9.1|javax.enterprise.system.tools.admin|_ThreadID=12;_ThreadName=httpWorkerThread-4848-0;com.sun.enterprise.admin.event.wsmgmt.TransformationRuleEvent -- server [1 Change(s), Id:2, ts:1178872051675];|ADM1041:Sent the event to instance:[com.sun.enterprise.admin.event.wsmgmt.TransformationRuleEvent -- server [1 Change(s), Id:2, ts:1178872051675]]|#]
    [#|2007-05-11T09:28:00.269+0100|WARNING|sun-appserver9.1|javax.enterprise.system.stream.err|_ThreadID=13;_ThreadName=httpSSLWorkerThread-8080-0;_RequestID=89eadb09-2894-4ace-95f6-75043c1e6988;|
    ERROR:  ''|#]
    [#|2007-05-11T09:28:00.285+0100|WARNING|sun-appserver9.1|javax.enterprise.system.stream.err|_ThreadID=13;_ThreadName=httpSSLWorkerThread-8080-0;_RequestID=89eadb09-2894-4ace-95f6-75043c1e6988;|
    com.sun.enterprise.admin.wsmgmt.transform.TransformException: javax.xml.transform.TransformerException: java.lang.NullPointerException
         at com.sun.enterprise.admin.wsmgmt.transform.FilterChain.process(FilterChain.java:238)
         at com.sun.enterprise.admin.wsmgmt.transform.TransformFilter.process(TransformFilter.java:144)
         at com.sun.enterprise.admin.wsmgmt.filter.spi.FilterRouter.applyFilters(FilterRouter.java:69)
         at com.sun.enterprise.admin.wsmgmt.agent.GlobalMessageListenerImpl.processRequest(GlobalMessageListenerImpl.java:181)
         at com.sun.enterprise.webservice.monitoring.WebServiceEngineImpl.processRequest(WebServiceEngineImpl.java:265)
         at com.sun.enterprise.webservice.monitoring.JAXWSEndpointImpl.processRequest(JAXWSEndpointImpl.java:53)
         at com.sun.enterprise.webservice.MonitoringPipe.process(MonitoringPipe.java:127)
         at com.sun.xml.ws.api.pipe.helper.PipeAdapter.processRequest(PipeAdapter.java:79)
         at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:559)
         at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:518)
         at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:503)
         at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:400)
         at com.sun.xml.ws.api.pipe.helper.AbstractTubeImpl.process(AbstractTubeImpl.java:70)
         at com.sun.xml.ws.mex.server.MetadataServerPipe.process(MetadataServerPipe.java:97)
         at com.sun.enterprise.webservice.CommonServerSecurityPipe.processRequest(CommonServerSecurityPipe.java:191)
         at com.sun.enterprise.webservice.CommonServerSecurityPipe.process(CommonServerSecurityPipe.java:113)
         at com.sun.xml.ws.api.pipe.helper.PipeAdapter.processRequest(PipeAdapter.java:79)
         at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:559)
         at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:518)
         at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:503)
         at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:400)
         at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:208)
         at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:374)
         at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:175)
         at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:134)
         at com.sun.enterprise.webservice.Ejb3MessageDispatcher.handlePost(Ejb3MessageDispatcher.java:100)
         at com.sun.enterprise.webservice.Ejb3MessageDispatcher.invoke(Ejb3MessageDispatcher.java:74)
         at com.sun.enterprise.webservice.EjbWebServiceServlet.dispatchToEjbEndpoint(EjbWebServiceServlet.java:187)
         at com.sun.enterprise.webservice.EjbWebServiceServlet.service(EjbWebServiceServlet.java:116)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
         at com.sun.enterprise.web.AdHocContextValve.invoke(AdHocContextValve.java:101)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:611)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:564)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:558)
         at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:74)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:207)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:611)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:564)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:558)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1067)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:611)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:564)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:558)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1067)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:249)
         at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:618)
         at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:549)
         at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:790)
         at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:326)
         at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:248)
         at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:199)
         at com.sun.enterprise.web.portunif.PortUnificationPipeline$PUTask.doTask(PortUnificationPipeline.java:328)
         at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
         at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:93)
    Caused by: javax.xml.transform.TransformerException: java.lang.NullPointerException
         at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:651)
         at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:281)
         at com.sun.enterprise.admin.wsmgmt.transform.FilterChain.process(FilterChain.java:224)
         ... 54 more
    Caused by: java.lang.NullPointerException
         at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1235)
         at com.sun.org.apache.xalan.internal.xsltc.trax.TrAXFilter.parse(TrAXFilter.java:105)
         at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:588)
         at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:642)
         ... 56 moreCould this be a bug or am I doing something wrong?
    Cheers again,
    Tony

  • Error when trying to create a types jar from a web service WSDL

    Hi,
    I generated a WSDL from a web service. When I try to generate a types jar from that WSDL in another project, I get an error:
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    com.bea.workshop.webservices.servicecontrol.ui.except.TypeGenerationFailedException: Buildfile: C:\eclipsews\.metadata\com.bea.workshop.webservices.servicecontrol.ui\build-dir\build.xml
    Trying to override old definition of task wsgen
    build:
    build-types:
    clean-types:
    [echo] Deleting types directory c:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474
    [echo] Deleting types jar C:\eclipsews\AAATest\WebContent\WEB-INF\lib\CaregiverEBillingMasterServiceServiceTypes_xmlbeans_apache.jar
    [mkdir] Created dir: C:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474
    generate-src-code:
    [echo] Generating types of family xmlbeans_apache from WSDL at file:/C:/eclipsews/AAATest/src/test/CaregiverEBillingMasterServiceService.wsdl, all services. Outputting to c:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474
    [typesGen] Generating complex Java types for schema types in WSDL file:/C:/eclipsews/AAATest/src/test/CaregiverEBillingMasterServiceService.wsdl. Outputting to C:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474 ...
    [typesGen] [WARNING] Generating array which is non-compliant with JaxRPC 1.1 for XML name: t=ArrayOfTreatmentDetailItem@http://org/abc/claims/caregiver/ebilling/services
    [typesGen] [WARNING] Generating array which is non-compliant with JaxRPC 1.1 for XML name: t=ArrayOfDocumentTypeAutoPayWrapper_literal@java:org.abc.claims.caregiver.ebilling.services.util
    [typesGen] [WARNING] Generating array which is non-compliant with JaxRPC 1.1 for XML name: t=ArrayOfJavaLangint_literal@java:org.abc.claims.caregiver.ebilling.services
    [typesGen] [WARNING] Generating array which is non-compliant with JaxRPC 1.1 for XML name: t=ArrayOfDocumentSubmissionHierarchy@http://org/abc/claims/caregiver/ebilling/services
    [typesGen] [WARNING] Generating array which is non-compliant with JaxRPC 1.1 for XML name: t=ArrayOfMessageCode@http://org/abc/claims/caregiver/ebilling/services
    [typesGen] [WARNING] Generating array which is non-compliant with JaxRPC 1.1 for XML name: t=ArrayOfFeeCodeType@http://org/abc/claims/caregiver/ebilling/services
    [typesGen] [WARNING] Generating array which is non-compliant with JaxRPC 1.1 for XML name: t=ArrayOfBatchMessage@http://org/abc/claims/caregiver/ebilling/services
    [typesGen] [WARNING] Generating array which is non-compliant with JaxRPC 1.1 for XML name: t=ArrayOfArrayOfJavaLangstring_literal@java:org.abc.claims.caregiver.ebilling.services.util
    [typesGen] [WARNING] Generating array which is non-compliant with JaxRPC 1.1 for XML name: t=ArrayOfJavaLangstring_literal@java:org.abc.claims.caregiver.ebilling.services.util
    compile-src-code:
    [echo] Compiling source files from c:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474 to c:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474
    [javac] Compiling 298 source files to C:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474
    [javac] ----------
    [javac] 1. ERROR in C:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474\com\abc\claims\caregiver\ebilling\FeeCodeDocument.java (at line 51)
    [javac]      public static com.abc.claims.caregiver.ebilling.FeeCodeDocument parse(java.lang.String xmlAsString) throws org.apache.xmlbeans.XmlException {
    [javac]      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    [javac] No exception of type XmlException can be thrown; an exception type must be a subclass of Throwable
    [javac] ----------
    [javac] 2. ERROR in C:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474\com\abc\claims\caregiver\ebilling\FeeCodeDocument.java (at line 54)
    [javac]      public static com.abc.claims.caregiver.ebilling.FeeCodeDocument parse(java.lang.String xmlAsString, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException {
    [javac]      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    [javac] No exception of type XmlException can be thrown; an exception type must be a subclass of Throwable
    [javac] ----------
    [javac] 3. ERROR in C:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474\com\abc\claims\caregiver\ebilling\FeeCodeDocument.java (at line 58)
    [javac]      public static com.abc.claims.caregiver.ebilling.FeeCodeDocument parse(java.io.File file) throws org.apache.xmlbeans.XmlException, java.io.IOException {
    [javac]      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    [javac] No exception of type XmlException can be thrown; an exception type must be a subclass of Throwable
    [javac] ----------
    [javac] 4. ERROR in C:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474\com\abc\claims\caregiver\ebilling\FeeCodeDocument.java (at line 61)
    [javac]      public static com.abc.claims.caregiver.ebilling.FeeCodeDocument parse(java.io.File file, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
    [javac]      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    [javac] No exception of type XmlException can be thrown; an exception type must be a subclass of Throwable
    [javac] ----------
    [javac] 5. ERROR in C:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474\com\abc\claims\caregiver\ebilling\FeeCodeDocument.java (at line 64)
    [javac]      public static com.abc.claims.caregiver.ebilling.FeeCodeDocument parse(java.net.URL u) throws org.apache.xmlbeans.XmlException, java.io.IOException {
    [javac]      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    [javac] No exception of type XmlException can be thrown; an exception type must be a subclass of Throwable
    [javac] ----------
    [javac] 6. ERROR in C:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474\com\abc\claims\caregiver\ebilling\FeeCodeDocument.java (at line 67)
    [javac]      public static com.abc.claims.caregiver.ebilling.FeeCodeDocument parse(java.net.URL u, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
    [javac]      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    [javac] No exception of type XmlException can be thrown; an exception type must be a subclass of Throwable
    === snipped here due to huge file size ===
    [javac] 2680. ERROR in C:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474\org\xfa\schema\xfaData\x10\SignatureDocument.java (at line 99)
    [javac]      public static org.xfa.schema.xfaData.x10.SignatureDocument parse(org.apache.xmlbeans.xml.stream.XMLInputStream xis, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
    [javac]      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    [javac] No exception of type XmlException can be thrown; an exception type must be a subclass of Throwable
    [javac] ----------
    [javac] 2681. ERROR in C:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474\org\xfa\schema\xfaData\x10\SignatureDocument.java (at line 103)
    [javac]      public static org.apache.xmlbeans.xml.stream.XMLInputStream newValidatingXMLInputStream(org.apache.xmlbeans.xml.stream.XMLInputStream xis) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
    [javac]      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    [javac] No exception of type XmlException can be thrown; an exception type must be a subclass of Throwable
    [javac] ----------
    [javac] 2682. ERROR in C:\development\wlwBuild\XCaregiverEBillingMasterServiceService1297810259474\org\xfa\schema\xfaData\x10\SignatureDocument.java (at line 107)
    [javac]      public static org.apache.xmlbeans.xml.stream.XMLInputStream newValidatingXMLInputStream(org.apache.xmlbeans.xml.stream.XMLInputStream xis, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
    [javac]      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    [javac] No exception of type XmlException can be thrown; an exception type must be a subclass of Throwable
    [javac] ----------
    [javac] 2682 problems (2682 errors)
    BUILD FAILED
    C:\eclipsews\.metadata\com.bea.workshop.webservices.servicecontrol.ui\build-dir\build.xml:73: The following error occurred while executing this line:
    C:\eclipsews\.metadata\com.bea.workshop.webservices.servicecontrol.ui\build-dir\build.xml:107: The following error occurred while executing this line:
    C:\eclipsews\.metadata\com.bea.workshop.webservices.servicecontrol.ui\build-dir\build.xml:181: Compile failed; see the compiler error output for details.
    Total time: 17 seconds
         at com.bea.workshop.webservices.servicecontrol.ui.util.TypesGenerationScript.run(TypesGenerationScript.java:197)
         at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:113)
    Caused by: org.eclipse.core.runtime.CoreException: C:\eclipsews\.metadata\com.bea.workshop.webservices.servicecontrol.ui\build-dir\build.xml:73: The following error occurred while executing this line:
    C:\eclipsews\.metadata\com.bea.workshop.webservices.servicecontrol.ui\build-dir\build.xml:107: The following error occurred while executing this line:
    C:\eclipsews\.metadata\com.bea.workshop.webservices.servicecontrol.ui\build-dir\build.xml:181: Compile failed; see the compiler error output for details.
         at org.eclipse.ant.core.AntRunner.handleInvocationTargetException(AntRunner.java:451)
         at org.eclipse.ant.core.AntRunner.run(AntRunner.java:383)
         at com.bea.workshop.webservices.servicecontrol.ui.util.TypesGenerationScript.run(TypesGenerationScript.java:185)
         ... 1 more
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    I was previously able to generate a types jar just fine from the web service's WSDL. Recently, I made some changes to the web service. Apparently, these changes to the web service now cause the WSDL to be unparseable when trying to generate types jars.
    Any ideas?

    The WSDL is generated from my web service. I made heavy revisions to my web service which, in turn, affected the resultant WSDL. The changes I made to my web service were almost exclusively related to object substitution. For example, prior to the change I was referencing object A from my web service; after the change, I was referencing object B. The objects that I'm referring to are XMLBeans, if that matters. I can't really describe it more than that without actually showing you the WSDL.
    I would post the WSDL file here to allow you to try to create a types jar out of it, but the WSDL exceeds the 30000 character limit for this field. There is no way for me to attach the WSDL to this post.

  • 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.

Maybe you are looking for