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

Similar Messages

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

  • How to connect to external web service and convert XML to a table

    Hi experts,
      I need to connect to external/non-SAP web service and convert XML in that site to a SAP table?
    Is there a function call(SE37) to do this? Is it a must for me to install AS JAVA or PI and configure enterprise service? Please provide a link for me to retrieve relevant infomation, thx.

    No, you don't need PI or the Java stack for this.  You can create an ABAP proxy using the WSDL file for the web service and call the web service using the proxy class in an ABAP program.  You can transform the XML response to internal tables/structures/variables using a transformation template that you create.

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

  • Possible Bug: Web Service Results Collection Error

    Doing some testing with APEX 4.02 on our development area, and running into an error..
    Running a form/report built off of a web service reference, form prompts for an input, data is returned from web service to report just fine, but when I go into session view collections, I am given a report error: ORA-19011 Character string buffer too small.
    Is this a known issue with collections and web services? I can confirm this was NOT an issue in 3.2, since we have just updated to 4.02 in past 48 hrs..
    Thank you,
    Tony Miller
    Webster, TX
    I cried because I did not have an office with a door until I met a man who had no cubicle.
    -Dilbert

    Tony:
    Thanks for reporting the issue. There was a change in the session pop-up page to include reporting on the new xmltype column in collections. Unfortunately the wrong function is being called on the xmltype column to display its contents. This will be fixed in an upcoming release.
    Application Express 4.0 Web service support makes use of this new xmltype column in a collection. Therefore if you call a web service that returns a large XML document, and you click the session toolbar, you will receive the error.
    Regards,
    Jason

  • 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

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

  • Configuring Web Services for Oracle XML DB

    Hi all...
    I think I need some help one this subject....
    We have a 10G Release 2 Oracle single instance ( not RAC) install on a Linux Redhat v5.3 64 bit server. Are developers are user Visual Studio .Net and wnat to send xml files to a web service so that the xml file (containing data) can call a PL/SQL package (to be written) which will take the data out of the xml input file and insert rows into a prefined table within the instance. Now they have browsed the web and have come upon the following links...
    http://docs.oracle.com/cd/B28359_01/appdev.111/b28369/xdb_web_services.htm
    http://docs.oracle.com/cd/B28359_01/appdev.111/b28369/xdb22pro.htm#i1026724
    Currently, within the database I looked at the schema XDB and have unlocked the account and connected as the user XDB. There are some 680 objects in the following groups...
    SQL> select object_type, count(*) from dba_objects where owner='XDB' group by object_type;
    OBJECT_TYPE COUNT(*)
    SEQUENCE 2
    PROCEDURE 5
    OPERATOR 8
    LOB 334
    LIBRARY 12
    PACKAGE 20
    PACKAGE BODY 17
    XML SCHEMA 25
    TYPE BODY 5
    TRIGGER 12
    TABLE 36
    INDEX 51
    FUNCTION 5
    INDEXTYPE 2
    VIEW 2
    TYPE 144
    16 rows selected.
    Now in the links above it mentions that the xdbconfig.xml needs to be altered etc. However, I have searched the entire $ORACLE_HOME and there is no file definition of that description.
    From a DBA prospective...what do I have to install on the Linux server? I assume from the Oracle Database 10g Companion Products I need to lay down Oracle HTTP Server in a new Oracle home as the first step...or not? Does the HTML DB need to be installed as well?
    And for Configuring Web Services for Oracle XML DB...what else has to be installed? And from what product line?
    Thanks in Advance....
    Cheers
    Roegr

    Hi Marco...
    First of all ...thanks for the reply.
    I followed the link and the infor in that web page. However, there were a few things that did not work....
    1. The http://localhost:8080/ as is brought up a web page withe the heading as
    ==========
    ORACLE DATABASE 10g EXPRESS EDITION LICENSE AGREEMENT..
    ==========
    The other browser test ftp://localhost:2100/
    did not find any page?
    2. Then I went onto running (as the sysdba) the pl/sql to enable the ORAWSV Entry Service
    however it error out. So I did a describe on DBMS_XDB and the function deleteServlet does not appear
    then I had a look and this link to > http://www.liberidu.com/blog/?p=471
    was for 11G and the other link > http://docs.oracle.com/cd/B28359_01/appdev.111/b28369.pdf
    was for 11G.
    However, we are on 10G
    =================
    SQL> select * from V$version;
    BANNER
    Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bi
    PL/SQL Release 10.2.0.3.0 - Production
    CORE 10.2.0.3.0 Production
    TNS for Linux: Version 10.2.0.3.0 - Production
    NLSRTL Version 10.2.0.3.0 - Production
    ==================
    So is there must be other sql for 10G?
    Cheers
    Rog

  • Is it possible to call a web service via UWL XML configuration?

    Hello
    Is it possible to call a web service via UWL XML configuration?
    If yes then an example would be great.
    Roy

    Hi Roy,
    Yes, yes it is possible.
    Yesterday only I came across the following document which will answer your questions:
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/20f4843e-314f-2a10-2a88-8c4afa20dda6?overridelayout=t…
    ~Ashvin

  • How to retrieve web services return value

    I am using htmldb 2.0 and have created up the webservice reference. It's a simple web services, it will only return the string that I typed in one text area. Now my problem is that how can I print the string into my report area. In my webservice process, i just define the output of the webservices stored in one item in that page. Shall I write the value of that item to report region? Any ideas??
    Regards,
    Ke Lin

    Did you have any luck with this.
    I am having the same problem, I think, can set up the web service and it tests ok but when I run the process nothing happens, no values are passed back. Have checked the session state and nothing is there.
    Andrew

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

  • The requested transformation would make some objects too large.

    Please help.
    I load a PNG in Illustrator. However when it loads it doesn't load right. It loads HUGE. When I try and move it, it says:
    "Can't move the objects.The requested transformation would make some objects too large."
    I am pulling my hair out here. Why the hell can't Illustrator just open a bloody PNG and allow me to edit it?!
    Any advice would be appreciated. Thanks.

    I see, Christopher.
    It seems that something is seriously wrong.
    You may try the following (you may have tried/done some of them already) and see whether it helps (the following is a general list of things you may try when the issue is not in a specific file; 3) and 4) are specifically aimed at possibly corrupt preferences):
    1) Close down Illy and open again;
    2) Restart the computer (you may do that up to 3 times);
    3) Close down Illy and press Ctrl+Alt+Shift/Cmd+Option+Shift during startup (easy but irreversible);
    4) Move the folder http://www.bugge.com/Family-and-friends/Illy/illy.html (follow the link with that name) with Illy closed (more tedious but also more thorough and reversible);
    5) Look through and try out the relevant among the Other options (follow the link with that name, Item 7) is a list of usual suspects among other applications that may disturb and confuse Illy, Item 15) applies to CC, CS6, and maybe CS5);
    Even more seriously, you may:
    6) Uninstall, run the Cleaner Tool (if you have CS3/CS4/CS5/CS6/CC), and reinstall.
    http://www.adobe.com/support/contact/cscleanertool.html

  • Error:  requested transformation would make some objects too large

    working in Illustrator CS2, and am getting the error "Can't move the objects - The requested transformation would make some objects too large." From reading another post (that I am unable to find to reply to) I gather this may have to do with some guides. I have unlocked all guides through View Menu. Interestingly, according to help I should have hte selection to "view" guides. I don't find it. My problem is, i can find the guides to either delete or convert to an object to see if this will alllow me to move the objects. it is a 1 layer artwork, with multiple groups (too many too count),and multiple paths under each group (again, too many too count). This artwrok is a map printed to .pdf from SMT Kingdom. Kingdom is not very powerful, and I often annotate and edit maps in Illustrator; I frequetnly get this error when I have a map with contours on it.
    Any ideas?

    Because of the nature of my map, I do tend to have "landgrid" and other type of data that "extend" way beyond my actual image. for example, print to 8.5 x 11, and i might have a river that is part of my landgrid, that extend beyond the page size. The software from which I am printing does not "clip" this river. I have many times attempted to select and delete all this extraneous stuff, to alleviate my problem with "make some object too large", but no luck. I can assure you I don't have an object WAY off the page...i have zoomed out to the moon.

  • EJB 3.0 Web Services - Custom Request/Response Wrappers

    Hi All,
    I'm having an issue using Document Literal Wrapped web services with EJB 3.0. I have declared a service endpoint interface(SEI) in one jar file, along with custom wrapper classes for the requests and responses. The wrappers have the XML content customized a bit (different type names, etc.), but should be compatible with the @RequestWrapper and @ResponseWrapper annotations. The implementation is in an EJB jar file that includes the jar with the SEI in it. My issue is that the wrapper classes I declared are not being used, and instead new ones are being generated. Is it even possible for it to use supplied wrappers, or does it have to generate its own (and if so, is it in any way possible to specify the XML types it generates). I've tested this with wsgen, and I get the same result (new wrapper classes, the ones I supplied ignored) as when I deploy it. Here is the output from wsgen:
    Note: ap round: 1
    [ProcessedMethods Interface: com.company.IngestorService]
    [should process method: ingestProductDirectory hasWebMethods: false ]
    [endpointReferencesInterface: true]
    [declaring class has WebSevice: true]
    [returning: true]
    [WrapperGen - method: ingestProductDirectory(java.lang.String,java.lang.String)]
    [method.getDeclaringType(): com.company.IngestorService]
    [requestWrapper: com.company.IngestProductDirectoryRequest]
    [should process method: datatypes hasWebMethods: false ]
    [endpointReferencesInterface: true]
    [declaring class has WebSevice: true]
    [returning: true]
    [WrapperGen - method: datatypes()]
    [method.getDeclaringType(): com.company.IngestorService]
    [requestWrapper: com.company.DatatypesRequest]
    com\company\DatatypesRequest.java
    com\company\DatatypesResponse.java
    com\company\IngestProductDirectoryRequest.java
    com\company\IngestProductDirectoryResponse.java
    Note: ap round: 2
    I note that is says "hasWebMethods: false". Could that be an issue? Could it not be seeing my methods as web methods. The SEI and the implementation class are in different jar files and different packages. Could this be an issue?
    Here is the web service interface:
    @WebService(
    name = "IngestorService",
    targetNamespace = "http://company.com/"
    @SOAPBinding(
    style = SOAPBinding.Style.DOCUMENT,
    parameterStyle = SOAPBinding.ParameterStyle.WRAPPED
    public interface IngestorService
    @WebMethod(
    action = "http://company.com/ingestProductDirectory"
    @WebResult(
    name = "response",
    targetNamespace = ""
    @RequestWrapper(
    className = "com.company.IngestProductDirectoryRequest"
    @ResponseWrapper(
    className = "com.company.IngestProductDirectoryResponse"
    public void ingestProductDirectory(
    @WebParam(
    name = "sourceDirectory",
    targetNamespace = ""
    String sourceDirectory,
    @WebParam(
    name = "datatype",
    targetNamespace = ""
    String datatype);
    @WebMethod(
    operationName = "datatypes",
    action = "http://company.com/datatypes"
    @WebResult(
    name = "datatypes",
    targetNamespace = ""
    @RequestWrapper(
    localName = "DatatypesRequest",
    className = "com.company.DatatypesRequest"
    @ResponseWrapper(
    localName = "DatatypesResponse",
    className = "com.company.DatatypesResponse"
    public List datatypes();
    Here are the datatype request and response wrappers:
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(
    name = "DatatypesRequest"
    public class DatatypesRequest
    DatatypesResponse.java:
    @XmlAccessorType(XmlAccessType.PROPERTY)
    @XmlType(
    name = "DatatypesResponse",
    propOrder =
    "datatypes"
    public class DatatypesResponse
    private List<String> _datatypes;
    @XmlElementWrapper(
    name = "datatypes",
    required = true,
    nillable = false
    @XmlElement(
    name = "datatype",
    required = false
    public List<String> getDatatypes() {
    if (_datatypes == null) {
    _datatypes = new ArrayList<String>();
    return _datatypes;
    Any help would be greatly appreciated. Thanks.

    I have been trying to do the same... and it seems to be impossible... (or completly undocumented).
    It seems that OC4J 10.3.x is ... no exactly fully EJB3/J2EE5 compliant...
    Or something like that:
    http://blogs.infosupport.com/berte/archive/2005/09/09/1117.aspx
    IMHO... OC4J 10.3.x is still a preview for OC4J 11...
    OC4J 10.3.x is kind of a J2EE4/5 hybrid... if you start digging in the documentation, you will find out that the only
    way to have WS-Security is going back to J2EE4 http://www.oracle.com/technology/products/jdev/howtos/1013/wssecure/10gwssecurity_howto.html
    (of course, I hope you probe me wrong)
    Message was edited by:
    luxspes

  • Error while consuming Web Service (returning XML ) in ABAP

    Hi,
    i am trying to consume a web service in ABAP. ( webservice which takes a request and return a XML string back).
    I created a proxy class in SE80. and i tested it successfully.
    When i tried to use the class in my program, it is giving dump.
    i am not sure what is the problem. I guess it is not able to handle null values in XML.if that is the case. how to handle it..

    The dump says:
    Runtime Errors         OBJECTS_OBJREF_NOT_ASSIGNED
    Except.                CX_SY_REF_IS_INITIAL      
    Error analysis                                                              
        An exception occurred that is explained in detail below.                
        The exception, which is assigned to class 'CX_SY_REF_IS_INITIAL', was not
         caught and                                                             
        therefore caused a runtime error.                                       
        The reason for the exception is:                                        
        You attempted to use a 'NULL' object reference (points to 'nothing')    
        access a component (variable: "LO_CLIENTPROXY").                        
        An object reference must point to an object (an instance of a class)    
        before it can be used to access components.                             
        Either the reference was never set or it was set to 'NULL' using the    
        CLEAR statement.                                                        
    I think this dump is because of the default value ( space) in some elements. How to avoide that.
    wheni catch CX_SY_REF_IS_INITIAL it is not giving any dump. But this is not my requirement. Because it is not getting anything into  response string.

Maybe you are looking for

  • What sequence settings should I use with multiple formats?

    I'm starting a new project in CS6 that's using multiple types of video.  I've got old camcorder video from 20 years ago...as well as digital video...and current HD video.  I want all the video in the sequence to output as full screen.  So do I need t

  • RMBP HDMI PORT

    I just recently bought a Samsung 3D tv 2013 model. I tried connecting my rMBP to the Samsung via HDMI 1.4. Questions: 1. Why does the refresh rate in the rMBP is only 60hz? There is no option for 120hz? Why is that? 2. Is this the tv or is it a probl

  • Hello Help with photos!!1

    Hi I stored about 600 pics in my ipod video. Does anyone knows how to retrieve them back to my powerbook? I restored my Os and forgot about the pics. I stored them through Itunes, not using the hardrive mode!!! Help please!! and thanx in advanced!!!

  • Grid Report layout

    Hi I'm trying to create a tabular report with gridlines.  The report goes over multiple pages and has numerous columns all of different widths and heights depending upon the row content. I have tried to follow the tutorials however each time my recta

  • BAdI for technical object replication

    Hi, I have created a new attribut and settype for PoD (Point of delivery) family with tcodes COMM_ATTRSET and COMM_HIERARCHY. I want replicate this new field from SAP CRM to SAP R/3. For this, I have implemented two BAdI : IBSSI_SEND_TO_UPL (for SAP