Web service PLSQL returning multiple records

Hello

I am creating a web service using oracle 11 g, which should be able to return multiple records.

Based on the code and the advice of the samples found on the internet, here is my code:

CREATE OR REPLACE TYPE test_rec is OBJECT (
    s_nume_adre                    NUMBER ,
    c_eta_civi                     VARCHAR2(4 BYTE),
    l_nom1_comp                    VARCHAR2(40 BYTE),
    l_nom2_comp                    VARCHAR2(40 BYTE),
    l_nom3_comp                    VARCHAR2(40 BYTE),
    l_pren_comp                    VARCHAR2(30 BYTE),
    d_date_nais                    DATE);


CREATE OR REPLACE TYPE test_array AS TABLE OF test_rec;
*/

CREATE OR REPLACE PACKAGE test_pkg AS
  function get_rows(snume_adre in number) return test_array;
END;
/

CREATE OR REPLACE PACKAGE BODY test_pkg AS
  function get_rows(snume_adre in number) return test_array is
    v_rtn   test_array := test_array(null);
    v_first boolean := true;

    cursor c_get_rows(snume_adre in number) is
      SELECT a.s_nume_adre,
             nvl(a.c_eta_civi, '') c_eta_civi,
             nvl(a.l_nom1_comp, '') l_nom1_comp,
             nvl(a.l_nom2_comp, '') l_nom2_comp,
             nvl(a.l_nom3_comp, '') l_nom3_comp,
             nvl(a.l_pren_comp, '') l_pren_comp,
             nvl(a.d_date_nais, to_date('01.01.1900', 'dd.mm.yyyy')) d_date_nais
    FROM bro.z45 a
  where a.s_nume_adre = snume_adre or snume_adre is null;

  begin
   
    for rec in c_get_rows(snume_adre) loop
      if v_first then
        v_first := false;
      else
        v_rtn.extend;
      end if;
   
    v_rtn(v_rtn.last) := test_rec(rec.s_nume_adre, rec.c_eta_civi, rec.l_nom1_comp, rec.l_nom2_comp,
                                rec.l_nom3_comp, rec.l_pren_comp, rec.d_date_nais);
    end loop;   

    return v_rtn;
  end;
END;
/

--select * from table (test_pkg.get_rows(null));


I am able to retrieve data using select.

However, when I try to access its wsdl I get an error:

< envelope soap: >

< soap: Body >

< soap: Fault >

Client: soap < faultcode > < / faultcode >

entry processing < faultstring > error < / faultstring >

< detail >

< OracleErrors > < / OracleErrors >

< / details >

< / soap fault: >

< / soap: Body >

< / envelope soap: >

-- -------------------------------------------------------------------------------------------------------------

If I comment the function call in the package declaration I get a "correct": wsdl

-- -------------------------------------------------------------------------------------------------------------

" < name definitions = targetNamespace"GET_ROWS"=" http://xmlns.Oracle.com/orawsv/test/TEST_PKG/GET_ROWS "xmlns =" http://schemas.xmlsoap.org/wsdl/ "xmlns:tns =" http://xmlns.Oracle.com/orawsv/test/TEST_PKG/GET_ROWS "container =" http://www.w3.org/2001/XMLSchema "xmlns:soap =" http://schemas.xmlsoap.org/wsdl/SOAP/ "> " ""

< types >

" < xsd: Schema targetNamespace = ' http://xmlns.Oracle.com/orawsv/test/TEST_PKG/GET_ROWS "elementFormDefault ="qualified"> "

< xsd: element name = "GET_ROWSInput" >

< xsd: complexType >

< / xsd: complexType >

< / xsd: element >

< xsd: element name = "GET_ROWSOutput" >

< xsd: complexType >

< / xsd: complexType >

< / xsd: element >

< / xsd: Schema >

< / types >

< name of message = "GET_ROWSInputMessage" >

< name of part = "parameters" element = "tns:GET_ROWSInput" / >

< / message >

< name of message = "GET_ROWSOutputMessage" >

< name of part = "parameters" element = "tns:GET_ROWSOutput" / >

< / message >

< portType name = "GET_ROWSPortType" >

< operation name = "GET_ROWS" >

< input message = "tns:GET_ROWSInputMessage" / >

< output message = "tns:GET_ROWSOutputMessage" / >

< / operation >

< / portType >

< connection name = "GET_ROWSBinding" type = "tns:GET_ROWSPortType" >

" < style: soap = transport = 'document' binding ' http://schemas.xmlsoap.org/SOAP/HTTP "/>

< operation name = "GET_ROWS" >

< soap: operation soapAction = "GET_ROWS" / >

< input >

< soap body parts: = 'settings' use = "literal" / >

< / Entry >

< output >

< soap body parts: = 'settings' use = "literal" / >

< / output >

< / operation >

< / binding >

< service name = "GET_ROWSService" >

< documentation > Oracle Web Service < / documentation >

< name of port = "GET_ROWSPort" binding = "tns:GET_ROWSBinding" >

" < soap: address location = ' http://server.domain.ch:8080 / orawsv/TEST/TEST_PKG/GET_ROWS "/>

< / port >

< / service >

< / definitions >

-- -------------------------------------------------------------------------------------------------------------

Any suspicion that how create and access pl sql web service returning multiple lines?

I use java not and do not have access to tools such as JDeveloper.

Thank you!

The real problem is that collection types are not supported for the return parameters.

The solution is to wrap the collection into another object.

Here is an example of work based on your settings:

CREATE OR REPLACE TYPE test_rec is OBJECT (
  empno  number(4)
, ename  varchar2(10)
, hiredate date
);
/

CREATE OR REPLACE TYPE test_array AS TABLE OF test_rec;
/  

CREATE OR REPLACE TYPE test_array_wrapper is OBJECT ( arr test_array );
/

CREATE OR REPLACE PACKAGE test_pkg AS
  function get_rows(p_deptno in number) return test_array_wrapper;
END;
/  

CREATE OR REPLACE PACKAGE BODY test_pkg AS
  function get_rows(p_deptno in number) return test_array_wrapper is
    results  test_array;
  begin  

    select test_rec(empno, ename, hiredate)
    bulk collect into results
    from scott.emp
    where deptno = p_deptno;     

    return test_array_wrapper(results);
  end;
END;
/

The wsdl is then generated correctly:

SQL> select httpuritype('http://DEV:dev@localhost:8080/orawsv/DEV/TEST_PKG/GET_ROWS?wsdl').getxml() from dual;

HTTPURITYPE('HTTP://DEV:DEV@LOCALHOST:8080/ORAWSV/DEV/TEST_PKG/GET_ROWS?WSDL').GETXML()
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

  
    
      
        
          
            
          
        
      
      
        
          
            
          
        
      
      
        
          
            
              
                
                  
                    
                      
                    
                  
                
              
            
          
        
      
      
        
          
          
            
              
                
              
            
          
          
        
      
    
  
  
    
  
  
    
  
  
    
      
      
    
  
  
    
    
      
      
        
      
      
        
      
    
  
  
    Oracle Web Service
    
      
    
  

Tags: Oracle Development

Similar Questions

  • Web Service SOAP returned XML data are unreadable

    Hello

    I hope someone with some experience of SOAP could help me find a solution for which XML data coming out of a Web Service (SAP production) are illegible.

    In the attached file is the Web Service response, and as you can see in the header of the request is OK. (request to pass a serialized PCB of a 'tail' to 'work'). Request is successful (I manually check by directly connecting the SAP web service and check), but also the data on the printed circuit should be returned (edge stock code, etc...).

    My request and response with the XML data returned works very well in SoapUI.

    Any help would be appreciated.

    Darin.K wrote:

    I agree with Phillip (except that you want to "inflate" the payload).  You can simply post a VI with full response defined as default in a string control/indicator and I am betting we could get it sorted.

    Thanks Darin, I think acompress and after reading an article google re: SAP NetWeaver, who used the terms inflate and deflate, I confused my prefixes. I also regularly exchange numbers when transcribing the long numbers. Dyslexic, I am.

    JonnyR - please use the uncompress function I've included on the same link as soon as possible. You will need to remove the header HTML of the string portion. If you do not, unzip it will interpret the header as compressed data and you will get jumbled as output data.

  • How to return a multiple registration with Oracle Native Web Service?

    Hi all

    I would like to know the native web service oracle can return multiple records of customer or not?

    I have successfully developed the native oracle web service to return only one record, but the next challenge is to develop the web service to return a multiple record (such as database on each department employees)

    Thank you and best regards,
    Zenoni

    I have successfully developed the native oracle web service to return only one record, but the next challenge is to develop the web service to return a multiple record (such as database on each department employees)

    You may return a list (multiple values/records) in XML (using CLOB or XMLType), CSV or JSON format or whatever.

    function get_employees (p_department_id in number) return clob
    as
    begin
      return 'your_xml_string_here';
    end get_employees;
    

    It would be up to the customer (the caller of the web service) to extract the values of any format you decide, of course.

    -Morten

    http://ORA-00001.blogspot.com

  • How to configure a web service primavera to return the data in the second database?

    Hello world


    We have P6 with WS first deployment on a single weblogic domain server. The first WS returns the first instance of database data.

    Then deployed to the WS second tip on a weblogic domain server separated with a different port. Set up the second WS with < WS2_INSTALL_HOME > / bin/dbconfig.sh, creating a new branch a configuration that specifies one second instance of the database. However, this configuration is ignored, and the second web services return data from the database.

    We have a single domain, including notably the following servers:

    Name / host / Port / deployments

    P6 / localhost / 0001 / P6 (v8.3), p6ws1 (v8.3)

    p6ws2 / localhost / 0002 / p6ws2 (v8.3)

    We have now two different files BREBootstrap.xml.

    P6 BREBootstrap.xml:

    < database >

    < URL > JDBC:Oracle:thin:@db1:1521:db1 < / URL >

    < user name > pubuser < / name >

    password <>anycriptopass1 < / password >

    oracle.jdbc.OracleDriver < driver > < / driver >

    < PublicGroupId > 1 < / PublicGroupId >

    < / data >

    < CfgVersion > 8.330 < / CfgVersion >

    <>configurations

    < name BRE = 'P6 Config_DB1"instances ="1"logDir ="anydir, P6EPPM, p6, PrimaveraLogs"/ >

    < / configuration >

    p6ws2 BREBootstrap.xml:

    < database >

    < URL > JDBC:Oracle:thin:@DB2:1521:DB2 < / URL >

    < user name > pubuser < / name >

    password <>anycriptopass2 < / password >

    oracle.jdbc.OracleDriver < driver > < / driver >

    < PublicGroupId > 1 < / PublicGroupId >

    < / data >

    < CfgVersion > 8.330 < / CfgVersion >

    <>configurations

    < name BRE = 'P6 Config_DB2"instances ="1"logDir ="anydir, P6EPPM, ws2, PrimaveraLogs"/ >

    < / configuration >

    "P6 Config_DB1" and "P6 Config_DB2" including the property database for the database 1 and 2 respectively.

    How to set up a second web service to return the data to the second database?


    Thanks in advance!


    Kind regards

    Dmitry

    So, answer oracle support:

    Looks like it is in the documentation, Web Services cannot be configured in this way as the other modules. See the following topics:

    BUG 19516437 - Is it POSSIBLE TO hardcode a DEPLOYMENT of SERVICES WEB P6 to an INSTANCE of DATABASE? (ask if this is possible)

    BUG 19579735 - FOR BEING ABLE to hardcode A P6 WEB SERVICES DEPLOYMENT to A DATABASE INSTANCE (corresponding improvement because it can be done).

    The problem has been resolved by the following:

    1 create the WebLogic domain.

    2 P6 and p6ws deployed on managed servers.

    3 configuration P6 uses the second instance of database and P6 has not begun.

    4 result: the p6ws (from additional domain WebLogic) returns data for the second instance of the database.

    Kind regards

    Dmitry

  • How to consume the web service using PLSQL in 11g

    Hello

    I created a site using jDeveloper, web services which when I put in the web browser and press enter, it will display the settings screen and when I pass the value for the parameter, and then it displays the output of the XML returned by the PL/SQL (called in the Web Service) package. Now, I want to call this webservice in PL/SQL and read XML data and fill in the staging table. Can anyone suggest me how to achieve this functionality by using Oracle PL/SQL

    I use the database 11g and jDeveloper Version :-Studio Edition version 10.1.3.0

    Thank you very much in advance.

    Vijay

    The WSDL file describes the web service.

    To obtain the WSDL, you enter the URL of the web service and add some ? WSDL to the URL. This indicates the web service to return to its definition.

    For example

    URL of the Web Service: http://wsf.cdyne.com/WeatherWS/Weather.asmx

    WSDL URL: http://wsf.cdyne.com/WeatherWS/Weather.asmx?WSDL

    When you read (using 'web browser' UTL_HTTPpackage) the XML response from the web service, read as strings (PL/SQL varchar2, size 32 K max).

    You should read the answer as the strings, then writing/writeappend these channels in a CLOB (using the DBMS_LOB package). If you are VERY sure that the web service call ALWAYS returns an XML of less than 32 k, you can skip using a CLOB.

    Whatever it is, read you the response from the web service in the form of text (such as plain text, it is what is sent). The next step on your part is to parse text into an XML DOM (document object model) - and storing the DOM in an Oracle XmlType variable.

    When in a DOM, you can use Oracle XML functions to extract the attributes and values of the key element of the response from the web service.

  • problems with the XML that is returned when you call a web service with CF11

    Hi, I ran into an unusual behavior when calling web services.

    I call a web service that returns an XML like this:

    < children >

    < child >

    John < firstname > < / name >

    DOE < name > < / lastname >

    < / child >

    < / children >

    during the call to the web service of CF10, it works fine. However, when the CF11, I don't get this:

    < child >

    John < firstname > < / name >

    DOE < name > < / lastname >

    < / child >


    no < child >? for some reason, CF11 ignores / hides the highest level XML. This does not happen on previous versions. Why? the server that hosts the web service's CF11 too.

    Report it as a bug in Coldfusion. In any case, I recommend making sure your web service returns a string, not an XML object.

    This is because a web service must be universal. Appellants to .NET, Java, PHP, ASP and so on, will interpret a chain exactly the same way. Whereas an object XML Coldfusion is a construction that is heard only in CFML.

    Your return string should also start with the XML declaration, like this

    John

    DOE

    So it is clear to the appellant in which brought the cat.

  • Can't get through the XML returned by the web service

    I'm using a .NET web service that returns the standard xml SOAP messages. After link "resultXML" to event.results [0], the variable displays its toString/toXMLString methods correctly and check the variable tree in the debugger displays the good exploration down. But browsing and/or variables affecting its children/descendants does not work properly. Variables are defined with the help of the. / operator or child/descendant methods are attached to something like XMLList(@8aa6701) without children and the toString methods return empty strings. I already tried to typecast between XML/XMLList and used methods of copy() with no results. Any suggestions?

    Found the answer to my own question. I needed to define and use the namespace defined in my SOAP message.

    http://livedocs.Adobe.com/Flex/3/HTML/data_access_6.html#194236

  • Exception during consumption of huge data from a web service.

    Hello

    I m developing an application to receive data from a Web Service and retain the data received on the device.

    App is developed for OS 4.3.0

    The Web Service call is made using Ksoap. The Code receives the data from the web service, analyzes the data and stores it in an object. This object is then persisted on the device. The data are essentially the coordinates. It takes the number of contacts required as input and passes it to the Web Service. The Web Service then returns the requested number of records

    The code works if I ask data of up to ~ 600 cases. If I specify more than 600 cases, it throws the following exception

    Chain rg.xmlpull.v1.XmlPullParserException:unexpected type (position: TEXT entity request in T...@1:24 in java.io.InputStreamReader@1f87d1b4)

    When I debugged using Eclipse, this exception is thrown on this statement ht.call (soapAction, envelope);

    Would it be because of a time-out? OT is because the Analyzer is not able to analyze huge data?

    Given that this exception occurs on the declaration of ht.call, I guess the problem is with the web service call and not with the code for persistent storage.

    I have included the code here... Is could someone please show me what the problem is?

    C ode to call Web Services

    public Vector getWebData(String count)
        {
    
       Vector personsVectorto = new Vector();
        try
        {
        StringBuffer receivedContent = new StringBuffer();
        String serviceUrl = "........";
        String serviceNamespace = ".....";
        String soapAction = ".........";
    
       SoapObject rpc = new SoapObject(serviceNamespace, "GetContactsList");
            //rpc.addProperty("listSize", "5");
            rpc.addProperty("listSize", count);
         SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
    
            envelope.bodyOut = rpc;
    
            envelope.dotNet = true;
            envelope.encodingStyle = SoapSerializationEnvelope.XSD;
            HttpTransport ht = new HttpTransport(serviceUrl);
            ht.debug = true;
    
            ht.call(soapAction, envelope); // This is where thexmlpullparser exception occurs
    
     Object obj = envelope.getResponse();
            SoapObject soapResult = (SoapObject)obj;
    
                for(int i=0; i < soapResult.getPropertyCount(); i++)
    
                {
                  PersonDTO personto = new PersonDTO();
               SoapObject choice = (SoapObject)soapResult.getProperty(i);
                if( choice!=null)
                {
                    for(int j = 0; j < choice.getPropertyCount(); j++)
                    {
                      receivedContent.append(" Reading Property Number" + String.valueOf(j) + " Value = " + choice.getProperty(j).toString());
    
         if (j==0) personto.setElement(1,choice.getProperty(j).toString());
        if (j==1) personto.setElement(2,choice.getProperty(j).toString());
        if (j==2) personto.setElement(3,choice.getProperty(j).toString());
        if (j==3) personto.setElement(4,choice.getProperty(j).toString());
        if (j==4) personto.setElement(5,choice.getProperty(j).toString());
         if (j==5) personto.setElement(6,choice.getProperty(j).toString());
         if (j==6) personto.setElement(7,choice.getProperty(j).toString());
          if (j==7) personto.setElement(8,choice.getProperty(j).toString());
         if (j==8) personto.setElement(9,choice.getProperty(j).toString());
       if (j==9) personto.setElement(10,choice.getProperty(j).toString());
                    }
                }                 
    
                personsVectorto.addElement(personto);
                //storepersistentobject(personsVectorto);
            }
    
            }catch(org.xmlpull.v1.XmlPullParserException ex2)
            {
                String bah1 = ex2.toString();
                Dialog.alert("String: " + bah1);
                String bah2 = ex2.getMessage();
                Dialog.alert("Message: " + bah2); 
    
            }       
    
            catch(Exception ex){
                String bah = ex.toString();
                Dialog.alert("Response: " + bah);
    
                }
    
                return personsVectorto;
        }
    

    Thank you

    Hi Philippe,.

    First Question: Print server response

    Yes - I think for you too in fact just print the answer you'll have to do a regular HTTP call to the server and print it like this:

    StringBuffer sb = new StringBuffer();

    int thumb;

    HttpConnection httpConn = (HttpConnection) Connector.open (url);

    httpConn.setRequestMethod (HttpConnection.GET); or by POST depending on your needs

    in = httpConn.openInputStream ();

    While ((thumb = in.read ())! = - 1).

    {

    SB. Append ((Char) inCh);

    }

    System.out.println ("server response:" + sb.toString ());

    Try and see if you get a request too large entity. Note: you should probably put your SOAP request in GET or POST http request.

    Second Question: Is zipping required?

    This is how I chose to do for my particular needs that transfer me a large amount of data and the compression algorithm seems to keep all my data well below 40 k. However, it is not the only way, you could actually make several requests and get data piece by piece, but I don't know if it works well with SOAP responses. Depending on the type of Network Setup Blackberry you have, you can also set this limit to be higher (I think a maximum of 1 024 Ko for BES).

    Third Question: Timeout Logging

    For wait times, usually the exception you get should indicate that there was a timeout, but if you are suspicious that it's a timeout check your web service and see.

    Hope that helps!

    R

  • Web service - &amp; gt; ComboBox

    I am just learning Flex. Decided to learn v2. I am filling a ComboBox from the data returned by a web service. I have spent hours searching through the documentation and examples, but have not been able to find help or examples. Anyone who has done this, and could you give me some examples, and possibly help? Here's the snippits of my code.

    The web service is a CF web service that returns a query with a (name) field in each record. I tested it witn CFML so I know it works. Also, I was able to fill a DataGrid with her.

    < mx:WebService id = "wsDSNinfo".
    "WSDL =" http://localhost:8500/test/DSNinfo/DSNinfo.cfc?wsdl "
    useProxy = "false".
    showBusyCursor = "true" >
    < name mx:operation = "getDSNinfo" > < / mx:operation >
    < name mx:operation = "VerifyDSN" > < / mx:operation >
    < mx:operation name = "getTables" >
    < mx:request >
    < theDSN > xpressline < / theDSN >
    < / mx:request >
    < / mx:operation >
    < name mx:operation = "getTableDetails" > < / mx:operation >
    < name mx:operation = "getTableRecords" > < / mx:operation >
    < / mx:WebService >

    < mx:ComboBox x = "10" y = "10" id = "cbxTables" dataProvider = "{wsDSNinfo.getTables.lastResult}" >
    < mx:Object label = "Name" data = "name" / >
    < / mx:ComboBox >

    Here is the error I get in developer.
    "Several initializers for the"dataProvider"property. (Remarque: "dataProvider» est la propriété par défaut de 'mx.controls.ComboBox').»
    I have an idea of what is happening, but havn't been able discover how to fix it.

    Thanks for any help you can give.

    Sincerely: Phil Spingola

    Thank you very much, Mike. It worked. The only different thing I had to do was type the labelField, uppercase 'NAME' value. I find that the existing doc not really helps me a lot. Is it just me, or are there more clear documents on the way. Your explanation is very clear and useful.

    Thanks: Phil

  • Web service for a more specific class when compiling

    Hello

    I just started using labview generator of the user Web interface and I have a problem when I generate the project.

    I recover data with the service and all works well when the application runs in the generator of the user Web interface of labview environment.

    But when I build the project, the Web API service is not recover my data. After a few debbuging, it seems that the problem comes from the block 'Parse Web Services', which returns nothing.

    Someone has an idea?

    Thank you

    I called the support OR and the response was:

    Name of the object should never have special characthers as e, to, o (in french) etc...

    The reason is that the application is generated by a server OR English on the web.

    So for the french, think of never having name determined that contains special characters.

    Otherwise, the application will run in the development environment but not after compilation by the server OR.

    Good bye

  • How to create the channel listens for XML/web services line

    Hi, I'm new to B2B 11 g, would ask tht,.

    I followed the tutorial of B2B using generic file and it works fine. However,.
    If I want to receive the trading partner thought web XML server, how can I configure the channel look, what protocol to use.


    And can any1 kindly refer me to any link or info?

    Thank you.

    However... If remote partner is going to send me thought web services and no thought record, should I do something on my B2B? has I need specific, any channel listen extra?

    N ° no additional configuration is required to receive files via HTTP. Just ask your TP to post files on one of the below URL.

    http://hostname:soa_server_port/b2b/httpReceiver or http://hostname:soa_server_port/b2b/transportServlet

    If you just want to test your B2B, if it is correctly configured best way is to have another facility of B2B (may be a new domain) who will laugh at your configuration TP. This configuration of B2B send message to your B2B on HTTP (on one of the above URL) and see if gets treated with success.

    If you just want to test if your B2B is ready to accept messages over HTTP, then go to the URL above browser and make sure that you see below message-

    "B2B Server is ready to accept messages HTTP from the trading partner.

    Kind regards
    Anuj

  • How to fill a datagrid with a web service result which is an array?

    I know how to fill a DataGrid to a CF of the web service that returns a query result. But what happens if I want to my CF component to run a query, then massage the data and back-is not a query - but a picture from the web service.

    Seems my two dimension table because ColdFusion has no column name, I need to create on the CF side name-value pairs or the side Flex. BTW, I prefer to use mx:webservice and not remoteObject.

    Any ideas on the best way to fill a datagrid from an array?

    Thank you.

    (Sorry for the previous double post).

    A colleague found the answer for me. I hope this saves someone else from 5 days of anquish!

    When a ColdFusion component returns an array of structures (not the result of a query), redesign the table as an arrayCollection collection throws an error.

    IT DOES NOT WORK:
    acSpeeds = new ArrayCollection (wsSpeeds.oneNode.lastResult);

    THIS WORKS!
    acSpeeds = wsSpeeds.oneNode.lastResult;

    It seems that a table generated by ColdFusion structures is already a collection arrayCollection 'official '!

    Hope this helps someone.

  • The truncated Web Service response

    In my AIR application built with Flex Builder 3, I am correctly call a web service and return a response. The response contains an object that contains data of fifty-four of a mixture of chain, fields of number and Boolean types. No string field is outrageously long. The entire frequency is 4.5 k. I look at this frequency item get filled in the debugger, I see valid data until about halfway through the object. Then for each field later, I see a bunch of NULL and NaN values for fields that have data. There is nothing wrong with the service or the configuration of my computer/OS, because I am able to call in other ways and capture valid responses.

    Are there any ideas on what could be going on here and how I could fix this? It is an essential element of functionality in a demonstration of our products to potential customers. Any help would be greatly appreciated. Thank you.

    Thank you all for your help. We have control over the server that exposes web services, so what I'll do is drop it is a servlet that handles the operation. I can spend the minimum data in the fields of URL parm to the servlet. It is a cleaner well based, and it avoids the marshaling of Flex bugs and mess of raw XML data manipulation.

  • Web services - handling response type complex

    I have to consume a web service that returns an array of complex type.
    The wsdl looks like below:
    Request: POST /UserManager/usermanager.asmx HTTP/1.1
    < soap: Body >
    "" < GetMargins xmlns = " http://tempuri.org/ ' / >
    < / soap: Body >

    Response: HTTP/1.1 200 OK
    < soap: Body >
    "< GetMarginsResponse xmlns =" http://tempuri.org/ "> "
    < GetMarginsResult >
    < String > < / string >
    < String > < / string >
    < / GetMarginsResult >
    < / GetMarginsResponse >
    < / soap: Body >
    --------
    The service is currently in my local network. If I call the service with the code below:
    < cfinvoke
    WebService = "" http://oecdevel/usermanager/usermanager.asmx?wsdl " "
    method = "GetMargins.
    returnVariable = "stGetMarginsResponse" >
    < cfscript >
    I get the answer: org.tempuri.ArrayOfString@465545dd
    I tried to create a struct, etc, but I had no luck at all.
    How can I read the answer? Help, please. Thanks in advance.

    The answer is an instance of a java object - ArrayOfString. I suggest you start using cfdump on it. That lists the properties and methods of your response object. I suspect you will see 2 methods, writing and getString (int i). So, if you call stGetMarginsResponse.getString (), you should have an array of returned simple strings that you can run a loop through. Or you can call stGetMarginsResponse.getString (i), where i is 0 to arraylen to get a specific element in the table.

    Let us know your results. Also, if you view the WSDL file I'll look in there far longer.

  • ePrint record new user and the issues of access to Web Services

    In June, I registered the HP printer. Then, I went on the eprint site and registered an e-mail address there. After we have chaged the name of my laptop, the printer recognizes the laptop more (Macbook pro). After having tried everything, reset us the printer to factory settings and rebooted the configure everything again.

    The printer recognizes now my laptop, but I don't have access to web services more, nor the eprint works!

    Webserivces:can not access, it gives me an error message.

    EPrint:When I'll on-site eprint, it shows that you can see your eprint email address... Where? I can my address loging onlysee.

    There is not a single printer in my printer list... I can only add a printer, but when I try to add the printer, I only get error messages. Once I managed to get careful, but he toldme that email eprint was already taken (of course, it is taken, it's mine!)

    Unfortunately I do not know much about the MAC operating system, but you can check on hp.com/support to find out if there is a newer version drivers that may be compatible. On the question of e-mail address, you can add multiple printers to your ePrint account, but each printer would have its own e-mail address. I apologize that the restriction is there for your old custom address but it's to protect the customers to get emails sent to their printer that were not intended for them. (For example if someone was to have chosen your email address as soon as you have disabled web services).

Maybe you are looking for