Web Service returning JCO.Table with no content

Hello all,
I've written a web service returning an object of type JCO.Table
When I'm testing it in the Web Service Navigator the response contains two parameters: tabLength and row (current row number), but doesn't contain the content of the table.
I tried testing the Web Service also from Webdynpro but its the same -
the result contains a ComplexTypeJCOTable and from that object I can only get the tabLength and row.
Anyone knows why is it happening?
Thanks for your help, Adi.

Hi Rajendrakumar Gaikwad,
Thanks for your suggestion.
I don't think this will be an efficient solution for me or for the web service clients.
I'm still looking for an explanation why can't I get the JCO.Table content.
Is it impossible for some reason or am I doing anything wrong?
Thanks again, Adi.

Similar Messages

  • ABAP-based web service returns numeric values with leading zeros

    Hi SOA experts,
    I have created a web service out of an ABAP function module. Beside other values, this service returns a list of document numbers. All of these numeric values are returned by the web service with leading zeros, but we do want these values w/o leading zeros.
    Any ideas how I can tell the web service to not print any leading zeros?
    Thanks in advance for your help!
    Kind regards, Matthias
    PS: The according function module does not print any leading zeros for the numeric values

    hi,
    just a guess: I'd try to use I instead of NUMC for the document numbers.
    NUMC is no number but a character string with numeric characters only. only some display routines in SAP know that this string of numerals represents a number and omit leading zeroes.
    my 2 cents,
    anton

  • What happens when a OUT parameter of a web-service returns an empty string

    Hi,
    Any idea on how to deal with the situation when a web-service returns an empty string
    I get the following System Exception:-
    Caused by: java.lang.AssertionError: Attempt to set empty javaType to ticketResponse(out,0) :: fuego.type.FuegoClass$LazyRef@6770f2. It must be null or a valid java type.
    It therefore either expects a null value or a valid java type...
    Since it goes into a system exception, the activity is not completed and nothing is inserted into the web-service..
    How do we resolve this error inside of BPM?

    Thanks Ben for your replies.
    Before I attempt changing a VI that was written by a client and make a total mess of it, there's something I'd like to point out.
    I tried the re-entrant VI approach and that didn't go any further than the VIT approach, and probably for the same reason(s).
    The interesting part is that (with the VIT approach) the same VIT is called by another process and it works fine.  It is just for the process that has it appear within 2 sub-panels.  So the issue is related to having either having two instances spawn at once of the same VIT or it is related to the sub-panels.  I think it is the two instances (or copies of the VIT) that causes LV to caugh...
    So you are trying to tell me that the above description is accurate and it is because of the private methods...??...
    How would I "wrap" those private methods into public ones?  The seems to be a piece of this puzzle that I am not yet grasping..
    Thanks for your patience and help.
    RayR

  • BUG: Web service returns request XML as response when result too large

    Hi,
    sorry for cross-posting, but the Web Services forum seems to be quite abandoned and this is an urgent issue for me.
    I have a web service returning some records of a given type (created using JDeveloper 10.1.3.3). The running environment and the service implementation do not seem to make any difference, as the situation is the same whether running it in embedded OC4J or in AS 10.1.3.1, and whether it is generated from a PL/SQL procedure or a method of a plain Java class.
    The problem is that if the result of this web service is too large (contains a lot of records), then the processing halts in some Oracle class in some web service library, so not in a debuggable generated web service source or in the service implementation itself.
    I think that the XML processing halts because of a "java.lang.OutOfMemoryError: Java heap space".
    Then a more serious problem follows: the service doesn't return a fault message but the original request XML as a response. Obviously, this can lead to some really unexpected errors.
    To reproduce this error:
    1. Create a Java class with a method returning an array of an arbitrary type, of the size specified in an input parameter.
    2. Create a web service from this class.
    3. Call it multiple times increasing the size parameter in every call until you get back the request as response or any error message.
    For example:
    - if you test the web service using the web page generated to access the endpoint, then you can see the response XML - in case you don't get an Internal Server Error (Java heap space).
    - if you use a generated web service proxy for testing, then it will give an error saying "unexpected element name: expected={namespace}someOperationResponseElement
    actual={namespace}someOperationElement".
    Any ideas how to locate / solve this problem?
    Regards,
    Patrik

    Patrik,
    the usual recommendation is to try with 10.1.3.3 instead of 10.1.3.1 to exclude you are hunting down an already fixed issue. From what you describe, the error seems less JDeveloper related than OC4J or OracleAs.
    So in case it reproduces in 10.1.3.3 I suggest to create a testcase and open a service request with support, or try the OC4J forum in case its known there.
    Frank

  • Refesh WEb service data control TAble using poll

    Hi, I have to you question about how to refresh table (web service data control table). Poll Object does refresh the entire page (table has a partial trigger set to poll).

    Hi, I have this code, but poll stil refresh whole page instead onl;y table
    public class Tom implements Serializable {
    private RichTable table;
    public Tom() {
    public void setTable(RichTable table) {
    this.table= table;
    public RichTable getTable() {
    return table;
    public void Refresh(PollEvent pollEvent) {
    AdfFacesContext.getCurrentInstance().addPartialTarget(table);
    }

  • PLSQL web service returning multiple records

    Hello,
    I am trying to create a web service using oracle 11g which should be able to return multiple records.
    Based on hints and code 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 the data using the select.
    However when I try to access its wsdl I get an error :
    <soap:Envelope>
       <soap:Body>
          <soap:Fault>
             <faultcode>soap:Client</faultcode>
             <faultstring>Error processing input</faultstring>
             <detail>
                <OracleErrors></OracleErrors>
             </detail>
          </soap:Fault>
       </soap:Body>
    </soap:Envelope>
    If I comment the function call in the package declaration I get a "correct" wsdl :
    <definitions name="GET_ROWS" targetNamespace="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" xmlns:xsd="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>
      <message name="GET_ROWSInputMessage">
        <part name="parameters" element="tns:GET_ROWSInput"/>
      </message>
      <message name="GET_ROWSOutputMessage">
        <part name="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>
      <binding name="GET_ROWSBinding" type="tns:GET_ROWSPortType">
        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
        <operation name="GET_ROWS">
          <soap:operation soapAction="GET_ROWS"/>
          <input>
            <soap:body parts="parameters" use="literal"/>
          </input>
          <output>
            <soap:body parts="parameters" use="literal"/>
          </output>
        </operation>
      </binding>
      <service name="GET_ROWSService">
        <documentation>Oracle Web Service</documentation>
        <port name="GET_ROWSPort" binding="tns:GET_ROWSBinding">
           <soap:address location="http://server.domain.ch:8080/orawsv/TEST/TEST_PKG/GET_ROWS"/>
         </port>
      </service>
    </definitions>
    Any hint as how to create and access pl sql web service returning multiple rows?
    I don't use java and don't have access to tools like JDeveloper.
    Thanks!

    The actual issue is that collection types are not supported for return parameters.
    The solution is to wrap the collection into another object.
    Here's a working example 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()
    <definitions name="GET_ROWS" targetNamespace="http://xmlns.oracle.com/orawsv/DEV/TEST_PKG/GET_ROWS" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://xmlns.oracle.com/orawsv/DEV/TEST_PKG/GET_
    ROWS" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
      <types>
        <xsd:schema targetNamespace="http://xmlns.oracle.com/orawsv/DEV/TEST_PKG/GET_ROWS" elementFormDefault="qualified">
          <xsd:element name="CTEST_ARRAY_WRAPPER-GET_ROWSInput">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="P_DEPTNO-NUMBER-IN" type="xsd:double"/>
              </xsd:sequence>
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="GET_ROWSOutput">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="RETURN" type="tns:TEST_ARRAY_WRAPPERType"/>
              </xsd:sequence>
            </xsd:complexType>
          </xsd:element>
          <xsd:complexType name="TEST_ARRAY_WRAPPERType">
            <xsd:sequence>
              <xsd:element name="TEST_ARRAY_WRAPPER">
                <xsd:complexType>
                  <xsd:sequence>
                    <xsd:element name="ARR">
                      <xsd:complexType>
                        <xsd:sequence>
                          <xsd:element name="TEST_REC" type="tns:TEST_REC_IntType" maxOccurs="unbounded" minOccurs="0"/>
                        </xsd:sequence>
                      </xsd:complexType>
                    </xsd:element>
                  </xsd:sequence>
                </xsd:complexType>
              </xsd:element>
            </xsd:sequence>
          </xsd:complexType>
          <xsd:complexType name="TEST_REC_IntType">
            <xsd:sequence>
              <xsd:element name="EMPNO" type="xsd:double"/>
              <xsd:element name="ENAME">
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:maxLength value="10"/>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="HIREDATE" type="xsd:date"/>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:schema>
      </types>
      <message name="GET_ROWSInputMessage">
        <part name="parameters" element="tns:CTEST_ARRAY_WRAPPER-GET_ROWSInput"/>
      </message>
      <message name="GET_ROWSOutputMessage">
        <part name="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>
      <binding name="GET_ROWSBinding" type="tns:GET_ROWSPortType">
        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
        <operation name="GET_ROWS">
          <soap:operation soapAction="GET_ROWS"/>
          <input>
            <soap:body parts="parameters" use="literal"/>
          </input>
          <output>
            <soap:body parts="parameters" use="literal"/>
          </output>
        </operation>
      </binding>
      <service name="GET_ROWSService">
        <documentation>Oracle Web Service</documentation>
        <port name="GET_ROWSPort" binding="tns:GET_ROWSBinding">
          <soap:address location="http://localhost:8080/orawsv/DEV/TEST_PKG/GET_ROWS"/>
        </port>
      </service>
    </definitions>

  • Invoking a web service returning a arraylist of custom type

    Hi, I created a web service return a arraylist<InsertionSerialisable>.
    InsertionSerialisable can't be simpler here it is:
    public class InsertionSerialisable {
    public String nom = null;
    public String poids = null;
    I'm trying to use this arraylist in bpel but the returned parameter of my parter link for this web service is item of type anyType and I can't access my nom and poids string member. In a bpel process how can access member of custom element into an arraylist<InsertionSerialisable>?
    Here is my wsdl:
    <definitions
    name="ObtenirInsertions"
    targetNamespace="http://expedierdocument/"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:tns="http://expedierdocument/"
    xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
    xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:tns0="http://www.oracle.com/webservices/internal/literal"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    >
    <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://expedierdocument/"
    elementFormDefault="qualified" xmlns:tns="http://expedierdocument/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:ns1="http://www.oracle.com/webservices/internal/literal">
    <import namespace="http://www.oracle.com/webservices/internal/literal"/>
    <complexType name="InsertionSerialisable">
    <sequence>
    <element name="poids" type="string" nillable="true"/>
    <element name="nom" type="string" nillable="true"/>
    </sequence>
    </complexType>
    <element name="obtenirInsertions" type="tns:obtenirInsertions"/>
    <complexType name="obtenirInsertions">
    <sequence>
    <element name="inExpInsPath" type="string" nillable="true"/>
    <element name="inIdentificationLettre" type="string" nillable="true"/>
    <element name="inSpecialite" type="string" nillable="true"/>
    </sequence>
    </complexType>
    <element name="obtenirInsertionsResponse" type="tns:obtenirInsertionsResponse"/>
    <complexType name="obtenirInsertionsResponse">
    <sequence>
    <element name="return" type="ns1:arrayList" nillable="true"/>
    </sequence>
    </complexType>
    </schema>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.oracle.com/webservices/internal/literal"
    elementFormDefault="qualified" xmlns:tns="http://www.oracle.com/webservices/internal/literal"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/">
    <import namespace="http://expedierdocument/"/>
    <complexType name="arrayList">
    <complexContent>
    <extension base="tns:list">
    <sequence/>
    </extension>
    </complexContent>
    </complexType>
    <complexType name="list">
    <complexContent>
    <extension base="tns:collection">
    <sequence/>
    </extension>
    </complexContent>
    </complexType>
    <complexType name="collection">
    <sequence>
    <element name="item" type="anyType" minOccurs="0" maxOccurs="unbounded"/>
    </sequence>
    </complexType>
    </schema>
    </types>
    <message name="ObtenirInsertions_obtenirInsertions">
    <part name="parameters" element="tns:obtenirInsertions"/>
    </message>
    <message name="ObtenirInsertions_obtenirInsertionsResponse">
    <part name="parameters" element="tns:obtenirInsertionsResponse"/>
    </message>
    <portType name="ObtenirInsertions">
    <operation name="obtenirInsertions">
    <input message="tns:ObtenirInsertions_obtenirInsertions"/>
    <output message="tns:ObtenirInsertions_obtenirInsertionsResponse"/>
    </operation>
    </portType>
    <binding name="ObtenirInsertionsSoapHttp" type="tns:ObtenirInsertions">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="obtenirInsertions">
    <soap:operation soapAction=""/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    </binding>
    <service name="ObtenirInsertions">
    <port name="ObtenirInsertionsSoapHttpPort" binding="tns:ObtenirInsertionsSoapHttp">
    <soap:address location="http://192.168.0.2:8888/Application1-ExpedierDocument-context-root/ObtenirInsertionsSoapHttpPort"/>
    </port>
    </service>
    </definitions>
    Thank you!

    Hi, I created a web service return a arraylist<InsertionSerialisable>.
    InsertionSerialisable can't be simpler here it is:
    public class InsertionSerialisable {
    public String nom = null;
    public String poids = null;
    I'm trying to use this arraylist in bpel but the returned parameter of my parter link for this web service is item of type anyType and I can't access my nom and poids string member. In a bpel process how can access member of custom element into an arraylist<InsertionSerialisable>?
    Here is my wsdl:
    <definitions
    name="ObtenirInsertions"
    targetNamespace="http://expedierdocument/"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:tns="http://expedierdocument/"
    xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
    xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:tns0="http://www.oracle.com/webservices/internal/literal"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    >
    <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://expedierdocument/"
    elementFormDefault="qualified" xmlns:tns="http://expedierdocument/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:ns1="http://www.oracle.com/webservices/internal/literal">
    <import namespace="http://www.oracle.com/webservices/internal/literal"/>
    <complexType name="InsertionSerialisable">
    <sequence>
    <element name="poids" type="string" nillable="true"/>
    <element name="nom" type="string" nillable="true"/>
    </sequence>
    </complexType>
    <element name="obtenirInsertions" type="tns:obtenirInsertions"/>
    <complexType name="obtenirInsertions">
    <sequence>
    <element name="inExpInsPath" type="string" nillable="true"/>
    <element name="inIdentificationLettre" type="string" nillable="true"/>
    <element name="inSpecialite" type="string" nillable="true"/>
    </sequence>
    </complexType>
    <element name="obtenirInsertionsResponse" type="tns:obtenirInsertionsResponse"/>
    <complexType name="obtenirInsertionsResponse">
    <sequence>
    <element name="return" type="ns1:arrayList" nillable="true"/>
    </sequence>
    </complexType>
    </schema>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.oracle.com/webservices/internal/literal"
    elementFormDefault="qualified" xmlns:tns="http://www.oracle.com/webservices/internal/literal"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/">
    <import namespace="http://expedierdocument/"/>
    <complexType name="arrayList">
    <complexContent>
    <extension base="tns:list">
    <sequence/>
    </extension>
    </complexContent>
    </complexType>
    <complexType name="list">
    <complexContent>
    <extension base="tns:collection">
    <sequence/>
    </extension>
    </complexContent>
    </complexType>
    <complexType name="collection">
    <sequence>
    <element name="item" type="anyType" minOccurs="0" maxOccurs="unbounded"/>
    </sequence>
    </complexType>
    </schema>
    </types>
    <message name="ObtenirInsertions_obtenirInsertions">
    <part name="parameters" element="tns:obtenirInsertions"/>
    </message>
    <message name="ObtenirInsertions_obtenirInsertionsResponse">
    <part name="parameters" element="tns:obtenirInsertionsResponse"/>
    </message>
    <portType name="ObtenirInsertions">
    <operation name="obtenirInsertions">
    <input message="tns:ObtenirInsertions_obtenirInsertions"/>
    <output message="tns:ObtenirInsertions_obtenirInsertionsResponse"/>
    </operation>
    </portType>
    <binding name="ObtenirInsertionsSoapHttp" type="tns:ObtenirInsertions">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="obtenirInsertions">
    <soap:operation soapAction=""/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    </binding>
    <service name="ObtenirInsertions">
    <port name="ObtenirInsertionsSoapHttpPort" binding="tns:ObtenirInsertionsSoapHttp">
    <soap:address location="http://192.168.0.2:8888/Application1-ExpedierDocument-context-root/ObtenirInsertionsSoapHttpPort"/>
    </port>
    </service>
    </definitions>
    Thank you!

  • Web service operation ... with parameters {} cannot be found

    Hi All,
    I am accessing a web service of a web site using ColdFusion.Each time I am calling the web service I am getting the message "Web service operation ... with parameters {} cannot be found".The wsdl file showing the parameter as complex type .So I have passed value to the particular method using structure and xml type each time I gets that error message.I can not post here the wsdl for security reason.
    When I am calling this Web service from .net it is working without any problem. .NET directly creating the objects of the parameter which the method is needed from the wsdl but I don't know whether it is possible in ColdFusion or not.Also I don't know whether the web service in .net or in other language.
    Please suggest something.
    Thanks
    Upen

    Thanks for your response.
    Yes, I have passed all the arguments but it seems the web application is coded in .net and by googling I came to know that if the .net receives a complex type of object then it creates problem when we pass argument from coldfusion.(means type mismatch)
    If you know about it please suggest .

  • How to create Web Service Client from wsdl with digital signature?

    Please, help me to create Web Service Client from wsdl with digital signature. I know create Web Service client from wsdl file and I know how to add digital signature to XML with jwsdp, but I don't know how to do it together.
    Thanks.

    I'm handling security wit JAX-WS handler. So I insert "manually" ws-security tag and I encrypt (and sign) message parts.
    On client side, all works fine, but on server side I obtain:
    ---Server Inbound SOAP message---|#]
    Decrypting message and rebuilding Valuees... |#]
    Starting decrypt|#]
    . dectypted.!
    --found following string: <ns1:addiziona><num1>80</num1><num2>22222</num2></ns1:addiziona>|#]
    ...MESSAGE Restored.|#]
    <?xml version="1.0" ?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:ns1="http://calculator.me.org/" 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"><soapenv:Body><ns1:addiziona><num1>80</num1><num2>22222</num2></ns1:addiziona></soapenv:Body></soapenv:Envelope>|#]
    Error in decoding SOAP Message
    Error in decoding SOAP Message
            at com.sun.xml.ws.encoding.soap.server.SOAPXMLDecoder.toInternalMessage(SOAPXMLDecoder.java:89)
            at com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher.toMessageInfo(SOAPMessageDispatcher.java:187)
            at com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher$SoapInvoker.invoke(SOAPMessageDispatcher.java:571)
            at com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher.receive(SOAPMessageDispatcher.java:145)
            at com.sun.xml.ws.server.Tie.handle(Tie.java:88)
            at com.sun.enterprise.webservice.Ejb3MessageDispatcher.handlePost(Ejb3MessageDispatcher.java:160)
            at com.sun.enterprise.webservice.Ejb3MessageDispatcher.invoke(Ejb3MessageDispatcher.java:89)
            at com.sun.enterprise.webservice.EjbWebServiceServlet.dispatchToEjbEndpoint(EjbWebServiceServlet.java:178)
            at com.sun.enterprise.webservice.EjbWebServiceServlet.service(EjbWebServiceServlet.java:109)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
            at com.sun.enterprise.web.AdHocContextValve.invoke(AdHocContextValve.java:100)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
            at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:71)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:182)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
            at com.sun.enterprise.web.VirtualServerPipeline.invoke(VirtualServerPipeline.java:120)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
            at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:231)
            at com.sun.enterprise.web.connector.grizzly.ProcessorTask.invokeAdapter(ProcessorTask.java:667)
            at com.sun.enterprise.web.connector.grizzly.ProcessorTask.processNonBlocked(ProcessorTask.java:574)
            at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:844)
            at com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask(ReadTask.java:287)
            at com.sun.enterprise.web.connector.grizzly.ReadTask.doTask(ReadTask.java:212)
            at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
            at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:75)
    Caused by: javax.xml.ws.soap.SOAPFaultException: Cannot find the dispatch method
            at com.sun.xml.ws.encoding.soap.SOAPDecoder.raiseFault(SOAPDecoder.java:674)
            at com.sun.xml.ws.encoding.soap.server.SOAPXMLDecoder.decodeDispatchMethod(SOAPXMLDecoder.java:152)
            at com.sun.xml.ws.encoding.soap.SOAPDecoder.decodeBodyContent(SOAPDecoder.java:337)
            at com.sun.xml.ws.encoding.soap.SOAPDecoder.decodeBody(SOAPDecoder.java:327)
            at com.sun.xml.ws.encoding.soap.SOAPDecoder.decodeEnvelope(SOAPDecoder.java:250)
            at com.sun.xml.ws.encoding.soap.server.SOAPXMLDecoder.toInternalMessage(SOAPXMLDecoder.java:81)
            ... 29 more
    |#]
    --->handleFault O_o<---|#]If you have any idea for solving my problem, then I can post my simple example :(
    Bye!

  • How to consume sap xi pi web services or sap RFC with oracle 11g forms.

    Dear All
    how to consume sap xi pi web services or sap RFC with oracle 11g forms.
    or
    how to config 11g forms with sap xi....
    or how to call sap xi web services in 11g forms....
    or can send sample code....
    Regards
    smfatmi
    Edited by: smfatmi on Oct 17, 2011 2:16 AM
    Edited by: smfatmi on Oct 17, 2011 2:17 AM

    Dear All
    how to consume sap xi pi web services or sap RFC with oracle 11g forms.
    or
    how to config 11g forms with sap xi....
    or how to call sap xi web services in 11g forms....
    or can send sample code....
    Regards
    smfatmi
    Edited by: smfatmi on Oct 17, 2011 2:16 AM
    Edited by: smfatmi on Oct 17, 2011 2:17 AM

  • Populating ComboBox with CFC web service return type query

    I am just now learning Flex and am attempting my first app (I have been a CFer for years).
    Anyway, I am attempting to build an AIR app in Flex that simply has a login with a form to submit information into a database.
    Things are going ok, except I am stumped at something that I think should be simple...populating a combo box. I have a CFC (I am using CFCs as a web service to drive the app) that contains a method that simply returns a query. I want to use the results to populate the combo box display and value. I created the combo box and then dragged the method to the box to have FB create the code. It populates the list but with just [object Object]. This is a piece of cake in CF but I am not stumbling across the correct syntax in Flex. Any pointers would be appreciated.
    Here is my current code.
    <?xml version="1.0" encoding="utf-8"?>
    <s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
                           xmlns:s="library://ns.adobe.com/flex/spark"
                           xmlns:mx="library://ns.adobe.com/flex/mx"
                           xmlns:users="services.users.*"
                           currentState="login"
                           xmlns:vinlookup="services.vinlookup.*"
                           xmlns:inventory="services.inventory.*"
                           creationComplete="init()">
        <fx:Script>
            <![CDATA[
                import mx.collections.ArrayCollection;
                import mx.controls.Alert;
                import mx.events.FlexEvent;
                import mx.rpc.events.FaultEvent;
                import mx.rpc.events.ResultEvent;
                import mx.utils.ObjectUtil;
                /*Login Code----------------------------------*/
                private var loginrs:Object;
                //Failed to connect to the wsdl service
                private function GeneralFailed_Handler(e:FaultEvent):void
                    Alert.show(e.fault.faultString, "Error connecting to the service");
                //Login Handler
                protected function submitBtn_clickHandler(event:MouseEvent):void
                    loginUserResult.token = users.loginUser(userName.text, password.text);
                //Result Handler for Account Authentication
                private function loginUserResult_resultHandler(e:ResultEvent):void
                    //check the result
                    //Alert.show(ObjectUtil.toString(e.result),"Login Results")
                    loginrs = new Object();
                    loginrs = e.result;
                    if(loginrs['loggedin'] == 'Y')
                        currentState = 'insertInventory';
                    }else{
                        Alert.show("Try Again Please.");
                /*VIN Lookup Code----------------------------------*/
                private var vinrs:Object;
                //VIN Lookup Handler
                protected function VINSubmitbtn_clickHandler(event:MouseEvent):void
                    getvinInfoResult.token = vinlookup.getvinInfo(vin.text, "BASIC");
                //Result Handler for Account Authentication
                private function vinLookupResult_resultHandler(e:ResultEvent):void
                    //check the result
                    Alert.show(ObjectUtil.toString(e.result),"Lookup Results")
                    vinrs = new Object();
                    vinrs = e.result;
                    if(vinrs == null)
                        Alert.show("The VIN did not decode. Try Again Please.");
                    else
                        bodyStyle.text = vinrs['VARBODYSTYLE'];
                        //Alert.show("Yes!");
                /*Item Type Combo Box Code----------------------------------*/   
                protected function comboBox_creationCompleteHandler(event:FlexEvent):void
                    getItemtypeResult.token = inventory.getItemtype();
            ]]>
        </fx:Script>
        <s:states>
            <s:State name="login"/>
            <s:State name="insertInventory"/>
        </s:states>
        <fx:Declarations>
            <s:CallResponder id="loginUserResult" result="loginUserResult_resultHandler(event)"/>
            <users:Users id="users" fault="Alert.show(event.fault.faultString + '\n' + event.fault.faultDetail)" showBusyCursor="true"/>
            <s:CallResponder id="getvinInfoResult" result="vinLookupResult_resultHandler(event)"/>
            <vinlookup:Vinlookup id="vinlookup" fault="Alert.show(event.fault.faultString + '\n' + event.fault.faultDetail)" showBusyCursor="true"/>
            <inventory:Inventory id="inventory" fault="Alert.show(event.fault.faultString + '\n' + event.fault.faultDetail)" showBusyCursor="true"/>
            <s:CallResponder id="getItemtypeResult"/>
            <!-- Place non-visual elements (e.g., services, value objects) here -->
        </fx:Declarations>
        <s:Panel width="250" height="150" title="Login" horizontalCenter="0" verticalCenter="0" includeIn="login">
            <mx:Form width="100%" height="100%" horizontalCenter="0" verticalCenter="0">
                <mx:FormItem label="User Name">
                    <s:TextInput id="userName"/>
                </mx:FormItem>
                <mx:FormItem label="Password">
                    <s:TextInput id="password" displayAsPassword="true"/>
                </mx:FormItem>
                <mx:FormItem>
                    <s:Button label="Login" id="submitBtn" click="submitBtn_clickHandler(event)"/>
                </mx:FormItem>
            </mx:Form>
        </s:Panel>
        <s:Panel includeIn="insertInventory" width="400" height="400" title="Insert Inventory" horizontalCenter="0" verticalCenter="0">
            <mx:Form width="100%" height="100%" horizontalCenter="0" verticalCenter="0">
                <mx:FormItem label="VIN">
                    <s:TextInput id="vin"/>
                </mx:FormItem>
                <mx:FormItem id="vinSubmitbtn">
                    <s:Button label="Decode VIN" id="VINSubmitbtn" click="VINSubmitbtn_clickHandler(event)"/>
                </mx:FormItem>
                <mx:FormItem label="Body Style">
                    <s:TextInput id="bodyStyle"/>
                </mx:FormItem>
                <mx:FormItem label="Item Type">
                    <s:ComboBox id="comboBox" creationComplete="comboBox_creationCompleteHandler(event)">
                        <s:AsyncListView list="{getItemtypeResult.lastResult}"/>
                    </s:ComboBox>
                </mx:FormItem>
            </mx:Form>
        </s:Panel>
    </s:WindowedApplication>

    I figured it out with the help of the AS help. I switched to using a DropDownList and the first example in the help.

  • Can MDM Web Services return qualifier values?

    We are running MDM 5.5 SP06 Patch04 (we will be doing a technical upgrade to MDM 7 later this year).
    I am investigating the MDM web services and came upon a potential problem. In the test harness, I searched for a record, specifying ALL for the result definition and everything seemed to come back except qualifiers; lookup values came back, taxonomy values came back, qualified lookup display values came back, qualified link ids came back, but no qualifier values.
    I searched again on the qualified link record ids in the qualified lookup table and I got the non-qualifiers, which is the expected behavior. The qualifiers have to come back with the main table record, though.
    Are qualifiers not fully supported in the MDM 5.5 web services, or am I not searching properly?
    Thanks for any help you can provide.
    Doug

    Hi Doug
    For me all  are working good.
    Can you look at pages 24-26 from "Portal content development guide"
    https://websmp201.sap-ag.de/~sapidb/011000358700001119612007E
    Regards
    Kanstantsin

  • Web service return value

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

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

  • Web Services and Internal Tables.

    Hi.
    In the next days I will need to create a program to consume a Web Service that is going to return data like an internal table, I mean...
    Field1a | Field2a | Field3a
    Field1b | Field2b | Field3b
    Field1c | Field2c | Field3c
    Do you have any ABAP example of consuming a Web Service and receiving data into an internal table?
    Thanx in advanced.
    Edited by: urjose on Jun 19, 2008 8:47 PM

    Hello,
    Maybe this links will give you a hint.
    /people/thomas.jung3/blog/2005/01/05/develop-a-web-service-that-sends-an-email--in-abap
    http://help.sap.com/saphelp_nw04/helpdata/en/e9/ae1b9a5d2cef4ea4b579f19d902871/content.htm
    Bye
    Gabriel P.-

  • Web Service returning data from 2 proxies

    Hi Guys,
    Can someone help me with the design here.. We're using XI 7.1 and I'm still struggling with my Sync soap sender to proxy interface.
    I've got my basic soap sender to proxy which returns a structure from the proxy sending it back to the web service as a response.
    like so: [Screen Print|http://www.photostand.co.za/images/orvgugyciny7x1nu4oua.png]
    But now I need to include another proxy to get other data and send that back in this response show above. Can I have 2 sync target operations sending back a response to the same source operation?
    Thanks,
    Jan

    What is your Traget System?
    If ABAP proxy--Follow beloa appraoch
    option 1: develop two sync interfaces
    Option 2: Develop Receiver response proxy structure and this structure should hold two proxy responses and write proxy logic to send response in one shot.
    in this case one interface enough.
    Regards,
    Raj

Maybe you are looking for

  • Error in Excel 2007.

    We have a user who gets an error when he will start the BPC for Excel in Excel 2007. And he can not open the BPC for Excel. The following error message appears: "In order to open the file Ev4Excel.xla the file had to be repaired or it was forced to r

  • Can't access Pages documents

    Hi guys; I can't seem to access my Pages documents in iCloud. They aren't on iCloud Drive (I know to stay away from that for now) When I go to icloud.com I click on the Pages icon and it tells me to upgrade to Yosemite. (I could probably drive to Yos

  • Windows 7 64 and Boot Camp

    I installed 64-bits Windows 7 on my iMac 24 (end 2007) and it works perfectly. The only problem is the the Boot Camp drivers cannot be installed. (Snow Leopard disk). Somewhere I have read that the Boot Camp drivers are not compatible with the 64-bit

  • Reading data from URG-04LX-UG01

    Hi. I'm curently trying to create a vi that reads the data from a URG-04LX LIDAR laser. When I try to connect to the device through LabVIEW I can't read anything from it, if I use the Basic serial write and read example vi all I get is nothing or if

  • Where's my Serial Number?

    Hello, this morning I received the Adobe CS5.5 Design Premium package as a present and it is a Student/Teacher Education Edition, and I went to the site it told me to, to get my serial number so I can install it on my computer. The site doesn't work,