Return parameter of cursor_type from a package.

When running or debugging a database package, it appears that a return parameter of cursor_type can not be handled in that SQL Developer will not display the contents of the cursor. We have a large number of packages that contain cursors as output parameters. Currently we use PL/SQL developer which displays the contents of a cursor at the click of a button. This is a great advantage to us as it saves having to write code just for testing purposes.
We are trying to migrate all users to SQL Developer - Is it possible to display the contents of output parameter cursors in SQL Developer ?

As you discovered for yourself, ref cursors aren't supported yet.
Several users are asking for the same, so I'd say chances are big they'll get to that soon. To put more weight on this feature, vote for it on the SQL Developer Exchange.
K.

Similar Messages

  • How return parameter ref Cursor from procedure using dynamic SQL?

    I sorry, but i very need help.
    I using Oracle 8.0.6
    I need to return parameter of type ref Cursor from procedure.
    create or replace package PlanExp is
    type cursortype is ref cursor;
    procedure ShowPlan (cursorparam out
    cursortype.............);
    end PlanExp;
    create or replace package body PlanExp is
    procedure ShowPlan (cursorparam out cursortype,
    .............) Is
    sql_str varchar2(1000);
    sql_str_select varchar2(100);
    sql_str_from varchar2(100);
    sql_str_where varchar2(500);
    Return_Code integer;
    Num_Rows integer;
    cur_id_sel integer;
    tSum_Plan DBMS_SQL.NUMBER_TABLE;
    tSum_Plan_Ch DBMS_SQL.NUMBER_TABLE;
    tSum_Plan_Day DBMS_SQL.NUMBER_TABLE;
    begin
    /* calculating string variables ........... /*
    sql_str := 'select ' || sql_str_select ||
    'from ' || sql_str_from ||
    'where ' || sql_str_where ||
    'group by ' || sql_str_select;
    cur_id_sel := dbms_sql.open_cursor;
    dbms_sql.parse(cur_id_sel, sql_str, dbms_sql.native);
    dbms_sql.define_array(cur_id_sel, 1, tSum_Plan, 20, 1);
    dbms_sql.define_array(cur_id_sel, 2, tSum_Plan_Ch, 20, 1);
    dbms_sql.define_array(cur_id_sel, 3, tSum_Plan_Day, 20, 1);
    Return_Code := dbms_sql.execute(cur_id_sel);
    delete from TEMP_SHOWPLAN;
    Loop
    Num_Rows := dbms_sql.Fetch_Rows(cur_id_sel);
    dbms_sql.column_value(cur_id_sel, 1, tSum_Plan);
    dbms_sql.column_value(cur_id_sel, 2, tSum_Plan_Ch);
    dbms_sql.column_value(cur_id_sel, 3, tSum_Plan_Day);
    if Num_Rows = 0 then
    exit;
    end if;
    Exit When Num_Rows < 20;
    End Loop;
    dbms_sql.close_cursor(cur_id_sel);
    end;
    end PlanExp;
    How return cursor (cursorparam) from 3 dbms_sql.column_value-s ?

    I am using Oracle 8.1.7, so I don't know if this will work in
    8.0.6 or not:
    SQL> CREATE TABLE test
      2    (col1                    NUMBER,
      3     col2                    NUMBER,
      4     col3                    NUMBER)
      5  /
    Table created.
    SQL> INSERT INTO test
      2  VALUES (1,1,1)
      3  /
    1 row created.
    SQL> INSERT INTO test
      2  VALUES (2,2,2)
      3  /
    1 row created.
    SQL> INSERT INTO test
      2  VALUES (3,3,3)
      3  /
    1 row created.
    SQL> CREATE TABLE temp_showplan
      2    (tSum_Plan               NUMBER,
      3     tSum_Plan_Ch            NUMBER,
      4     tSum_Plan_Day           NUMBER)
      5  /
    Table created.
    SQL> EDIT planexp
    CREATE OR REPLACE PACKAGE PlanExp
    IS
      TYPE CursorType IS REF CURSOR;
      PROCEDURE ShowPlan
        (cursorparam    IN OUT CursorType,
         sql_str_select IN     VARCHAR2,
         sql_str_from   IN     VARCHAR2,
         sql_str_where  IN     VARCHAR2);
    END PlanExp;
    CREATE OR REPLACE PACKAGE BODY PlanExp
    IS
      PROCEDURE ShowPlan
        (cursorparam    IN OUT CursorType,
         sql_str_select IN     VARCHAR2,
         sql_str_from   IN     VARCHAR2,
         sql_str_where  IN     VARCHAR2)
      IS
        sql_str                VARCHAR2 (1000);
        cur_id_sel             INTEGER;
        return_code            INTEGER;
      BEGIN
        DELETE FROM temp_showplan;
        sql_str := 'INSERT INTO   temp_showplan '
               || ' SELECT '   || sql_str_select
               || ' FROM '     || sql_str_from
               || ' WHERE '    || sql_str_where;
        cur_id_sel := DBMS_SQL.OPEN_CURSOR;
        DBMS_SQL.PARSE (cur_id_sel, sql_str, DBMS_SQL.NATIVE);
        return_code := DBMS_SQL.EXECUTE (cur_id_sel);
        DBMS_SQL.CLOSE_CURSOR (cur_id_sel);
        OPEN cursorparam FOR SELECT * FROM temp_showplan;
      END ShowPlan;
    END PlanExp;
    SQL> START planexp
    Package created.
    Package body created.
    SQL> VARIABLE g_ref REFCURSOR
    SQL> EXEC PlanExp.ShowPlan (:g_ref, 'col1, col2,
    col3', 'test', ' 1 = 1 ')
    PL/SQL procedure successfully completed.
    SQL> PRINT g_ref
    TSUM_PLAN TSUM_PLAN_CH TSUM_PLAN_DAY
             1            1             1
             2            2             2
             3            3             3

  • Return Code to UNIX from Procedure Package

    I've found examples where a 1-byte RC can be picked up by a UNIX shell script (in $?) but they involve a PL/SQL block and bind variable in the script itself. It appears I cannot use a bind variable in a Package because the compile fails (PLS-00049: bad bind variable). UNIX does find a RC value when I use RAISE_APPLICATION_ERROR( (-20000-744) - v_rc_255, 'Abnormal Termination.' ); where v_rc_255 is a PLS_INTEGER with value 255, but the value is not 255! Sometimes it is zero, other times 7.
    Is there a practical way I can signal "Abnormal Termination" from any PL/SQL Package's Procedures/Functions to UNIX so I can send my shell script down the appropriate path?

    I believe that the only way to do what you propose is to use bind variables in your script. This is not necessarily a problem, however. Note that in UNIX, you must insure that the return value is between 0 and 255 (since there is only 1 byte of storage for return variables).
    Consider the following simple example:
    create a simple test procedure (or package, or function) which can raise a user-defined error:
    SQL> create or replace procedure test(inval IN number) is
    2 begin
    3 if inval = 0 then return;
    4 else raise_application_error(-20102,'My error');
    5 end if;
    6 end test;
    7 /
    Note that RAISE_APPLICATION_ERROR must return a value between -20000 and -20999
    In your shell script, create a bind variable and wrap your call to the procedure in a PL/SQL block with an exception handler. For example, I have created a shell script called mytest.sh:
    #!/bin/ksh
    sqlplus -s <<-EOF
    scott/tiger
    var retvar number;
    begin
    test($1);
    :retvar := 0;
    exception
    when others then
    :retvar := ABS(sqlcode) - 20000;
    end;
    exit :retvar
    EOF
    retval=$?
    echo retval=$retval
    From a UNIX shell prompt, execute the script with an argument of 0; a value of 0 is returned (normal completion)
    Execute the script with any other value and a value of 102 is returned (note that we had to perform a calculation on sqlcode to insure that the value was between 0 and 255).
    Hopefully this makes sense.

  • "Error 75 received from the Package Index Server. Please contact the Support Center"

    I have a T-61P running Windows XP SP2.  Within the past month, my System Updater started returning
    "Error 75 received from the Package Index Server.  Please contact the Support Center"
    I uninstalled System Update and downloaded and installed again from the Lenovo site.  Still displays same error message.  I get 20% into the update when the error message pops up.
    Any suggestions.
    Thank You!
    Solved!
    Go to Solution.

    Try this link:
    http://forum.notebookreview.com/showthread.php?t=157733
    Check the following registry keys (or similar)
    HKLM\HARDWARE\ACPI\DSDT\LENOVO\
    HKLM\HARDWARE\ACPI\FADT\LENOVO\
    HKLM\HARDWARE\ACPI\RSDT\LENOVO\
    They should be in the form of your model number without the hyphen and not TP-xx___
    In my case I had to change the TP-71___ that was showing in my registry to 87445BU.  Once I did this the software worked without a hitch.

  • Return Parameter from ftexec

    Has anyone had any luck returning a code from a server partition?
    It seems that the following will always return with code 0 (zero), even
    if we kill the process.
    For example,
    #!/bin/ksh
    ftexec -fi bt:/forte/userapp/SomeApp -fnw -fterm
    Return=$?
    echo "Exiting with return code ${Return}"
    return ${Return}
    Any ideas appreciated.

    Todd,
    Release 3 is supposed to return an exit code by setting the new
    Task.Part.OperatingSystem attribute. Are you running R2? I copied the
    following from the Forte 3.0 BetaFeatures documentation:
    New Attributes [on Task.Part.OperatingSystem]
    ExitStatus
    The ExitStatus attribute is available from TOOL programs and command shell
    scripts. The ExitStatus value can be returned to the parent shell or job that
    started the Fort&sbquo; executor allowing shell scripts and programs to test for
    specific, expected results from a Fort&sbquo; process.
    The value for ExitStatus is always set by the time the executor exits. It
    defaults to zero (0) for success or one (1) for an abnormal exit. You can use
    values other than zero or one to signify expected results in your application.
    Note that the value for ExitStatus can be changed after it has been explicitly
    set. In particular, if a program set ExitStatus to zero for normal exit, but
    then encountered a serious error that caused an abnormal exit, the value is
    reset to 1 for return to the parent environment. The exit status value can
    also be set using the ExitStatus command in Escript and Fscript.
    Good luck,
    Dustin Breese
    BSG Alliance/IT
    From: "Todd Foster"<[email protected]>
    Date: Thu, 24 Jul 1997 17:49:57 -0400
    Subject: Return Parameter from ftexec
    Has anyone had any luck returning a code from a server partition?
    It seems that the following will always return with code 0 (zero), evenif we kill the process.
    For example,
    #!/bin/ksh
    ftexec -fi bt:/forte/userapp/SomeApp -fnw -fterm
    Return=$?
    echo "Exiting with return code ${Return}"
    return ${Return}
    Any ideas appreciated.

  • Help on ORA-06550 & PLS-00363 Error while running a procedure from a packag

    Greeting All,
    I ran the following procedure from a package on a command line in sqlplus:
    SQL> exec QUALITY_ASSURANCE.COPY_SW_RESOURCES(2009,2010,9508);Where '2009' is the old fiscal year, '2010' is the new fiscal year and '9508' is the error code passed from the calling program. But, I received the following error messages:
    ERROR at line 1:
    ORA-06550: line 1, column 53:
    PLS-00363: expression '9508' cannot be used as an assignment target
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    Any thoughts, suggestions and/or advice to resolve these errors.
    Thanks in advance.

    Orchid wrote:
    Justin,
    Thanks for your response and information. Yes, Theoa was correct the 3rd parameter is an OUT variable, and it is a numeric field. The procedure was called by a form as follows:
    QUALITY_ASSURANCE.COPY_SW_RESOURCES(:BLK_CONTROL.FROMFY,:BLK_CONTROL.TOFY,V_ERR);But the form does not work so I am trying to isolate the problem by running the procedure by itself in sqlplus to make sure there is no problem with the procedure.
    Yesterday, I was able to run the procedure in Toad for Oracle to a successful completion by providing the 3 parameters: (2009, 2010, null). Just wonder why I cannot run the same procedure with the same parameters on a command line in sqlplus as follows:
    exec QUALITY_ASSURANCE.COPY_SW_RESOURCES(2009,2010,null);So, if I understand your suggestion correctly, in order to run the procedure with the 3 parameter successfully in sqlplus,
    I have to declare the 3rd parameter in PL/SQL. That is to create a PL/SQL file as suggested and run the file, correct? CORRECT!

  • "An error occurred while extracting files from the package "BaseSystem.pkg".

    Hello!
    I have a
    MacBookPro5,5
    Prozessortyp:Intel Core 2 Duo
    Prozessorgeschwindigkeit:2.26 GHz
    Anzahl der Prozessoren:1
    Gesamtzahl der Kerne:2
    L2-Cache:3 MB
    Speicher:2 GB
    Busgeschwindigkeit:1.07 GHz
    Boot-ROM-Version:MBP55.00AC.B03
    SMC-Version (System):1.47f2
    Hardware-UUID:A2DD27C4-9829-5A4D-854B-485EF8A6B20F
    Problem:
    I upgraded Leopard to Snow Leopard. Everything worked fine for a month. To free up disk space I deleted some of the iPhoto flders (modfied and original images). Everything worked still fine. Shut down the computer. Next day it was incredibly slow. At the same time the indexing was running. I stopped indexing, but stll slow. Every operation took minutes. I tried all the tricks that I found in the internet (repaired file permissions, repaired disk, cleared PRAM , moved big filed from desktop, etc.). After 24 full hours of trying all this I decided to erase the hard drive and reinstall, directly from the Snow Leopard Install disk, but it fails after downloading the packages. Below is the part of the log. Then I tried to use the old Leopard install DVD to reinstall Leopard, it then sais estimated time 12 hours or so and eventually crashed, spitting out a lot of "reportcrash" in the log. What is going on? I'm running out of options. Any advice? Would zeroing the hard drive help? If nothing else I plan to buy a new hard drive, since the only explanation I have is that there is a problem with the hard driven although the disk utility says it is OK. I need a bigger one anyway. Any ideas? Thank you!
    Aug 16 05:17:31 localhost OSInstaller[139]: IFPKInstallElement (191 packages)
    Aug 16 05:17:35 localhost OSInstaller[139]: PackageKit: ----- Begin install -----
    Aug 16 05:17:35 localhost OSInstaller[139]: PackageKit: request=PKInstallRequest <191 packages, destination=/Volumes/Macintosh HD>
    Aug 16 05:17:36 localhost OSInstaller[139]: PackageKit: Extracting /Volumes/Macintosh HD/Mac OS X Install Data/BaseSystem.pkg (destination=/Volumes/Macintosh HD/.OSInstallSandbox-tmp/Root, uid=0)
    Aug 16 05:31:59 localhost Unknown[80]: /SourceCache/AppleFSCompression/AppleFSCompression-24.0.1/Common/DataPool.c:116 : Error: finished pool without filling it
    Aug 16 05:31:59 localhost Unknown[80]: /SourceCache/AppleFSCompression/AppleFSCompression-24.0.1/Common/commonUtils.c: 315: Error: fh_pread -1
    Aug 16 05:31:59 localhost Unknown[80]: /SourceCache/AppleFSCompression/AppleFSCompression-24.0.1/Common/StreamCompress or.c:236: Error: write failed for /Volumes/Macintosh HD/.OSInstallSandbox-tmp/Root//System/Library/Frameworks/OpenCL.framework/Versi ons/A/Resources/runtime.amdil.bc: Invalid argument
    Aug 16 05:31:59 localhost Unknown[80]: /SourceCache/AppleFSCompression/AppleFSCompression-24.0.1/Common/StreamCompress or.c:260: Error: futimes failed for /Volumes/Macintosh HD/.OSInstallSandbox-tmp/Root//System/Library/Frameworks/OpenCL.framework/Versi ons/A/Resources/runtime.amdil.bc: Invalid argument
    Aug 16 05:31:59 localhost Unknown[80]: /SourceCache/AppleFSCompression/AppleFSCompression-24.0.1/Common/StreamCompress or.c:829: Error: returning errno 22 from FinishStreamCompressorQueue
    Aug 16 05:32:10 localhost OSInstaller[139]: PackageKit: Install Failed: PKG: extracting "com.apple.pkg.BaseSystem"\nError Domain=PKInstallErrorDomain Code=110 UserInfo=0x12c8366a0 "An error occurred while extracting files from the package “BaseSystem.pkg”." Underlying Error=(Error Domain=BOMCopierFatalError Code=22 UserInfo=0x12e703300 "The operation couldn’t be completed. FinishStreamCompressorQueue error") {\n    NSFilePath = "/Volumes/Macintosh HD/.OSInstallSandbox-tmp/Root";\n    NSLocalizedDescription = "An error occurred while extracting files from the package \U201cBaseSystem.pkg\U201d.";\n    NSURL = "BaseSystem.pkg -- file://localhost/Volumes/Macintosh%20HD/Mac%20OS%20X%20Install%20Data/index.pro duct";\n    NSUnderlyingError = "Error Domain=BOMCopierFatalError Code=22 UserInfo=0x12e703300 \"The operation couldn\U2019t be completed. FinishStreamCompressorQueue error\"";\n    PKInstallPackageIdentifier = "com.apple.pkg.BaseSystem";\n}
    Aug 16 05:32:10 localhost OSInstaller[139]: install:didFailWithError:Error Domain=PKInstallErrorDomain Code=110 UserInfo=0x12c8366a0 "An error occurred while extracting files from the package “BaseSystem.pkg”." Underlying Error=(Error Domain=BOMCopierFatalError Code=22 UserInfo=0x12e703300 "The operation couldn’t be completed. FinishStreamCompressorQueue error")
    Aug 16 05:32:11 localhost OSInstaller[139]: Install failed: Die Installation ist aufgrund eines Fehlers fehlgeschlagen. Wenden Sie sich an den Hersteller der Software.
    Aug 16 05:32:13 localhost OSInstaller[139]: Allowing machine sleep.
    Aug 16 05:32:15 localhost OSInstaller[139]: Memory statistics for 'Installation ist fehlgeschlagen' pane:
    Aug 16 05:32:15 localhost OSInstaller[139]: Physical Memory Allocation:   139 MB wired,   259 MB trapped,   397 MB active,     7 MB inactive,  1246 MB free,  1650 MB usable,  2048 MB total

    It sounds to me like your Internal Hard Drive is failing.
    I recommend you buy a new one, that is a good candidate for replacing the old one, but install it in an External enclosure and Install a fresh Mac OS X on it from the DVD. You can boot your Mac from any attached drive.
    The new System can be used to get some work done, check your emails, and takes the pressure off resolving this immediately. You can also attempt to salvage files off the old drive if needed.
    Once things seem to be working, then move the new drive inside the computer. Failures at this point may be due to bad cable, which has been a problem in some of these MacBooks.
    Use security erase, write Zeroes, one pass, to re-write every block on the old drive. Any block discovered to be bad will be replaced with spares the drive holds in reserve for this purpose. If more than 10 blocks are pared on one pass, "Initialization Failed!" will be the result. Although you can try the erase again, there is some question whether you want to trust this drive with your precious data.

  • Can't create WS from PLSQL package (Jdeveloper 11g 4) (Exception occured)

    Hello,
    I'am using JDeveloper 11g preview 4.
    On database i have a package with 2 procedures.
    When I like to create a WS from database package I get the Exception:
    java.lang.ClassCastException: oracle.jdeveloper.webservices.model.plsql.PLSQLPortType
         at oracle.jdeveloper.webservices.model.generator.AddToDeploymentProfiles.getJarFiles(AddToDeploymentProfiles.java:592)
         at oracle.jdeveloper.webservices.model.generator.AddToDeploymentProfiles.action(AddToDeploymentProfiles.java:292)
         at oracle.jdeveloper.webservices.model.generator.GeneratorAction.run(GeneratorAction.java:147)
         at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:153)
         at java.awt.Dialog$1.run(Dialog.java:525)
         at java.awt.Dialog$2.run(Dialog.java:553)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.awt.Dialog.show(Dialog.java:551)
         at java.awt.Component.show(Component.java:1300)
         at java.awt.Component.setVisible(Component.java:1253)
         at oracle.bali.ewt.dialog.JEWTDialog.runDialog(Unknown Source)
         at oracle.bali.ewt.dialog.JEWTDialog.runDialog(Unknown Source)
         at oracle.ide.dialogs.ProgressBar.start(ProgressBar.java:361)
         at oracle.ide.dialogs.ProgressBar.start(ProgressBar.java:222)
         at oracle.ide.dialogs.ProgressBar.start(ProgressBar.java:194)
         at oracle.jdeveloper.webservices.model.Model.saveEditSync(Model.java:242)
         at oracle.jdevimpl.webservices.wizard.jaxrpc.PLSQLWizard.runWizard(PLSQLWizard.java:366)
         at oracle.jdevimpl.webservices.wizard.jaxrpc.PLSQLWizard.runWizard(PLSQLWizard.java:137)
         at oracle.jdevimpl.webservices.WebServicesAddin.fastCreatePlSqlService(WebServicesAddin.java:1503)
         at oracle.jdevimpl.webservices.WebServicesAddin.handleEvent(WebServicesAddin.java:870)
         at oracle.ide.controller.IdeAction.performAction(IdeAction.java:513)
         at oracle.ide.controller.IdeAction.actionPerformedImpl(IdeAction.java:843)
         at oracle.ide.controller.IdeAction.actionPerformed(IdeAction.java:486)
         at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
         at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
         at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
         at javax.swing.AbstractButton.doClick(AbstractButton.java:302)
         at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1000)
         at javax.swing.plaf.basic.BasicMenuItemUI$Handler.menuDragMouseReleased(BasicMenuItemUI.java:1104)
         at javax.swing.JMenuItem.fireMenuDragMouseReleased(JMenuItem.java:578)
         at javax.swing.JMenuItem.processMenuDragMouseEvent(JMenuItem.java:475)
         at javax.swing.JMenuItem.processMouseEvent(JMenuItem.java:422)
         at javax.swing.MenuSelectionManager.processMouseEvent(MenuSelectionManager.java:283)
         at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1043)
         at java.awt.Component.processMouseEvent(Component.java:5501)
         at javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
         at java.awt.Component.processEvent(Component.java:5266)
         at java.awt.Container.processEvent(Container.java:1966)
         at java.awt.Component.dispatchEventImpl(Component.java:3968)
         at java.awt.Container.dispatchEventImpl(Container.java:2024)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
         at java.awt.Container.dispatchEventImpl(Container.java:2010)
         at java.awt.Window.dispatchEventImpl(Window.java:1778)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
    Exception from Jdeveloper console
    Validating XML...
    Validating C:\Generali\WsGenerali\public_html\WEB-INF\web.xml
    Validate XML: 0 errors, 0 warnings.
    Aug 13, 2008 1:20:20 PM oracle.javatools.logging.LogUtils log
    WARNING: Exception in task oracle.jdeveloper.webservices.model.generator.FixLocationAttribute$1@1fa522d on model oracle.jdevimpl.webservices.wsdl.WSDLXmlModel@129271e; txn name=null
    java.lang.NullPointerException
         at oracle.jdeveloper.webservices.model.generator.FixLocationAttribute$1.performTask(FixLocationAttribute.java:72)
         at oracle.bali.xml.model.task.StandardTransactionTask.runThrowingXCE(StandardTransactionTask.java:172)
         at oracle.bali.xml.model.task.StandardTransactionTask.run(StandardTransactionTask.java:103)
         at oracle.jdeveloper.webservices.model.generator.FixLocationAttribute.action(FixLocationAttribute.java:51)
         at oracle.jdeveloper.webservices.model.generator.GeneratorAction.run(GeneratorAction.java:147)
         at java.lang.Thread.run(Thread.java:595)
    Aug 13, 2008 1:20:20 PM oracle.j2ee.xml.XMLMessages warningException
    WARNING: Exception Encountered
    Aug 13, 2008 1:20:20 PM oracle.j2ee.xml.XMLMessages warningException
    WARNING: Exception Encountered
    Aug 13, 2008 1:20:20 PM oracle.j2ee.xml.XMLMessages warningException
    my procedures are:
    type r_sifrant is record
    ( id number,
    nadrejeni_id number,
    opis varchar2(100),
    privzeto varchar2(1)
    type r_cursor is ref cursor return r_sifrant;
    function f_sel_sifrant(p_naziv in varchar2) return r_cursor;
    procedure gen_polica(p_username in varchar2, p_polica_xml in clob, p_stevilka_police out number);
    Here I have posted a video of generating ws from plsql package (screen capture):
    http://shrani.si/f/x/P6/m5GSF8c/in2.avi
    Thank you for any help
    best regards
    Peterv
    Message was edited by:
    user651799

    Hello,
    I'am using JDeveloper 11g preview 4.
    On database i have a package with 2 procedures.
    When I like to create a WS from database package I get the Exception:
    java.lang.ClassCastException: oracle.jdeveloper.webservices.model.plsql.PLSQLPortType
         at oracle.jdeveloper.webservices.model.generator.AddToDeploymentProfiles.getJarFiles(AddToDeploymentProfiles.java:592)
         at oracle.jdeveloper.webservices.model.generator.AddToDeploymentProfiles.action(AddToDeploymentProfiles.java:292)
         at oracle.jdeveloper.webservices.model.generator.GeneratorAction.run(GeneratorAction.java:147)
         at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:153)
         at java.awt.Dialog$1.run(Dialog.java:525)
         at java.awt.Dialog$2.run(Dialog.java:553)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.awt.Dialog.show(Dialog.java:551)
         at java.awt.Component.show(Component.java:1300)
         at java.awt.Component.setVisible(Component.java:1253)
         at oracle.bali.ewt.dialog.JEWTDialog.runDialog(Unknown Source)
         at oracle.bali.ewt.dialog.JEWTDialog.runDialog(Unknown Source)
         at oracle.ide.dialogs.ProgressBar.start(ProgressBar.java:361)
         at oracle.ide.dialogs.ProgressBar.start(ProgressBar.java:222)
         at oracle.ide.dialogs.ProgressBar.start(ProgressBar.java:194)
         at oracle.jdeveloper.webservices.model.Model.saveEditSync(Model.java:242)
         at oracle.jdevimpl.webservices.wizard.jaxrpc.PLSQLWizard.runWizard(PLSQLWizard.java:366)
         at oracle.jdevimpl.webservices.wizard.jaxrpc.PLSQLWizard.runWizard(PLSQLWizard.java:137)
         at oracle.jdevimpl.webservices.WebServicesAddin.fastCreatePlSqlService(WebServicesAddin.java:1503)
         at oracle.jdevimpl.webservices.WebServicesAddin.handleEvent(WebServicesAddin.java:870)
         at oracle.ide.controller.IdeAction.performAction(IdeAction.java:513)
         at oracle.ide.controller.IdeAction.actionPerformedImpl(IdeAction.java:843)
         at oracle.ide.controller.IdeAction.actionPerformed(IdeAction.java:486)
         at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
         at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
         at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
         at javax.swing.AbstractButton.doClick(AbstractButton.java:302)
         at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1000)
         at javax.swing.plaf.basic.BasicMenuItemUI$Handler.menuDragMouseReleased(BasicMenuItemUI.java:1104)
         at javax.swing.JMenuItem.fireMenuDragMouseReleased(JMenuItem.java:578)
         at javax.swing.JMenuItem.processMenuDragMouseEvent(JMenuItem.java:475)
         at javax.swing.JMenuItem.processMouseEvent(JMenuItem.java:422)
         at javax.swing.MenuSelectionManager.processMouseEvent(MenuSelectionManager.java:283)
         at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1043)
         at java.awt.Component.processMouseEvent(Component.java:5501)
         at javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
         at java.awt.Component.processEvent(Component.java:5266)
         at java.awt.Container.processEvent(Container.java:1966)
         at java.awt.Component.dispatchEventImpl(Component.java:3968)
         at java.awt.Container.dispatchEventImpl(Container.java:2024)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
         at java.awt.Container.dispatchEventImpl(Container.java:2010)
         at java.awt.Window.dispatchEventImpl(Window.java:1778)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
    Exception from Jdeveloper console
    Validating XML...
    Validating C:\Generali\WsGenerali\public_html\WEB-INF\web.xml
    Validate XML: 0 errors, 0 warnings.
    Aug 13, 2008 1:20:20 PM oracle.javatools.logging.LogUtils log
    WARNING: Exception in task oracle.jdeveloper.webservices.model.generator.FixLocationAttribute$1@1fa522d on model oracle.jdevimpl.webservices.wsdl.WSDLXmlModel@129271e; txn name=null
    java.lang.NullPointerException
         at oracle.jdeveloper.webservices.model.generator.FixLocationAttribute$1.performTask(FixLocationAttribute.java:72)
         at oracle.bali.xml.model.task.StandardTransactionTask.runThrowingXCE(StandardTransactionTask.java:172)
         at oracle.bali.xml.model.task.StandardTransactionTask.run(StandardTransactionTask.java:103)
         at oracle.jdeveloper.webservices.model.generator.FixLocationAttribute.action(FixLocationAttribute.java:51)
         at oracle.jdeveloper.webservices.model.generator.GeneratorAction.run(GeneratorAction.java:147)
         at java.lang.Thread.run(Thread.java:595)
    Aug 13, 2008 1:20:20 PM oracle.j2ee.xml.XMLMessages warningException
    WARNING: Exception Encountered
    Aug 13, 2008 1:20:20 PM oracle.j2ee.xml.XMLMessages warningException
    WARNING: Exception Encountered
    Aug 13, 2008 1:20:20 PM oracle.j2ee.xml.XMLMessages warningException
    my procedures are:
    type r_sifrant is record
    ( id number,
    nadrejeni_id number,
    opis varchar2(100),
    privzeto varchar2(1)
    type r_cursor is ref cursor return r_sifrant;
    function f_sel_sifrant(p_naziv in varchar2) return r_cursor;
    procedure gen_polica(p_username in varchar2, p_polica_xml in clob, p_stevilka_police out number);
    Here I have posted a video of generating ws from plsql package (screen capture):
    http://shrani.si/f/x/P6/m5GSF8c/in2.avi
    Thank you for any help
    best regards
    Peterv
    Message was edited by:
    user651799

  • Returning a node value from a BPEL process in a JSP.

    HI,
    I have a problem in that I want to extract the value of a node ie /auto:loanOffer and display it in a JSP.
    Could you possibly tell me if I should use
    com.collaxa.xml.XPathUtils.selectNodes or getVariableData or something else.
    If possible, could you provide a sample code snippet as I am new to jsp/bpel.
    Thanks alot
    Joel.

    Use a result set that returns 1 column that is a clob: Sample code below:
    create table tData (xId number, xData clob)
    CREATE OR REPLACE PACKAGE clobTest AS
    type typeRefCursor is ref cursor;
    FUNCTION getData(pId in varchar2) RETURN typeRefCursor;
    END;
    CREATE OR REPLACE PACKAGE BODY clobTest AS
    FUNCTION getData(pId in varchar2) RETURN typeRefCursor is
    cursor cData is
    select xData
    from tData
    where xId = pId;
    dataLob clob; -- holds the data from the table
    outLob clob; -- hold the return data
    rc typeRefCursor; -- return ref cursor
    BEGIN
    -- prepare the output lob
    dbms_lob.createTemporary(outLob,TRUE);
    dbms_lob.open(outLob,dbms_lob.lob_readwrite);
    -- write the start of the output data
    dbms_lob.writeAppend(outLob,13,'<data value="');
    -- get the data from the table
    open cData;
    fetch cData into dataLob;
    if (cData%found) then
    -- append the data to the end of the output lob
    dbms_lob.copy(outLob,dataLob,dbms_lob.getLength(dataLob),dbms_lob.getLength(outLob)+1,1);
    end if;
    close cData;
    -- write the closing data tag
    dbms_lob.writeAppend(outLob,9,'"></data>');
    -- now return the ref cursor with a single column as the lob
    open rc for select outLob from dual;
    return rc;
    END;
    END;
    Sample code and everything! YOu can buy me a drink next time you're in Chicago.
    Andy

  • FTP task runs fine from SSIS Package Store, always times out in scheduled job

    SQL Server 2012
    VS 2010 SQL Server data tools
    FTP Connection Manager
     - port 21, chunk size 1kb, passive mode=false, saved plain text pw
    Downloads 1 csv file to local directory on SQL Server box
    This always works when run from the package.  And always gives a timeout error when scheduled.
    Message
    Microsoft (R) SQL Server Execute Package Utility
    Version 11.0.2100.60 for 64-bit
    Started:  11:04:59 AM
    Error: 2014-03-27 11:05:31.12
       Code: 0xC001602A
       Source: xxx Connection manager "FTP Acme1"
       Description: An error occurred in the requested FTP operation. Detailed error description: The operation timed out
    End Error
    Error: 2014-03-27 11:05:31.14
       Code: 0xC002F304
       Source: Acme FTP Task
       Description: An error occurred with the following error message: "An error occurred in the requested FTP operation. Detailed error description: The operation timed out".
    End Error
    DTExec: The package execution returned DTSER_FAILURE (1).
    Started:  11:04:59 AM
    Finished: 11:05:31 AM
    Elapsed:  31.949 seconds
    SQL Server Agent is set to Logon As my domain account, and in the package history it says "logged on as " my account.
    Any suggestions?  Thank you

    You're right, Arthur. Earlier when I tried running the package with dtexecui it did popup a Win7 firewall warning. Agreed with prompt to allow "SQL Server 2008 Integration Services Package Execution Utility" and it added C:\program
    files (x86)\microsoft sql server\110\tools\binn\managementstudio\dtexecui.exe,  to allowed programs. No problem with dtexec after that.
    Do you know of any other firewall exceptions that would be good to try?  Thanks!
    Yeah, this pop up resulted in the timeout because it was hidden but awaiting acknowledgement.
    The other thing off the top of my head would be the FTP port 21 if TCP is used.
    Arthur My Blog

  • Passing parameter value back from Child region [BTF] to Parent

    Hello,
    I am using Jdev 11.1.1.6. I have a use-case where I need to pass value back from child taskflow to parent.
    Let me elaborate the use-case:
    I have a main page which is implemented as BTF with fragment. This main page contains a child region [again a BTF with fragment].
    I am passing a parameter value from parent page to it's region using taskflow input parameter. Now value for one of the parameter changes inside child/region taskflow and I need to make this value available to main page taskflow.
    This parameter is just pageFlowScope variable, so basically not coming from any VO.
    I know that taskflow can return value via return parameter but I don't know if that is true for taskflow implemented as region in a page.
    Is it possible to communicate the pageFlowScope variable value from child region to it's parent page?
    Thanks,
    Jai

    Hi Frank,
    I tried to follow steps mentioned in your post but encountered error that "The scope of the referenced object #{viewScope.parentBeanName} is shorter than referring object childBeanName"
    Let me explain what I did:
    1. Created a bean parentBeanName in viewScope
    2. Created another bean childBeanName in pageFlowScope
    3. In ChildBean.java, created a private property parentBeanProperty for Class [ParentBean] and generated the accessors
    4. Created a input parameter in region TF as:
    <input-parameter-definition id="__28">
          <name id="__27">parentBeanParam</name>
          <value>#{pageFlowScope.childBeanName.parentBeanProperty}</value>
          <class>ParentBean</class>
          <required/>
    </input-parameter-definition> 5. Since my mainPage contains child page as region. I added parameter to mainPageDef to pass it to child TF, like this
    <parameter id="parentBeanParam" xmlns="http://xmlns.oracle.com/adfm/uimodel"
                       value="#{viewScope.parentBeanName}"/>6. Introduced a client method in childBeanName that is called from UI. There I am retrieving parentBeanParam instance from pageFlowScope and call setter method of my variable inside ParentBean.java
    7. Ran the page but encountered the error.
    Did I miss something somewhere?
    Initially I got error where #{viewScope.parentBeanName} returned NULL due to parentBeanName not instantiated. I created a variable in mainPageDef with it's default value pointing to #{viewScope.parentBeanName.variableName}, which I guess will instantiate the bean in viewScope.
    After this I got error of shorter scope. It never reached to code in Step 6 during execution cycle.
    FYI - My application is based on UIShell and essentially a one page application. Main page referred above is also a jsff based on BTF. I hope, this should not affect this implementation but I thought of at least mention it.
    Thanks,
    Jai
    Edited by: Jai Om on Dec 18, 2012 2:38 PM

  • Mandatory return parameter in Web Service

    Hello,
    Do you know how to set a return parameter mandatory in a Web Service using an Enterprise JavaBean (Netweaver 2004s)? The method has 2 return parameters in the WSDL:
    <xs:complexType name="SignResponse">
    <xs:sequence>
      <xs:element name="nfeid" type="xs:string" nillable="true" minOccurs="0"/>
      <xs:element name="status" type="xs:int"/>
    </xs:sequence>
    </xs:complexType>
    The status parameter is mandatory, the other is optional (minOccurs="0"). But we also need the nfeid mandatory for the XI-mapping.
    Java:
    public class SignResponse implements Serializable {
         public SignResponse(String s) {
              status = -1;
              nfeid = s;
    Business Method.
    public SignResponse sign(
    Regards, Volker

    I have also tried to return a Document in my webservices but it doesn't work. From what I understood (I am a newbee), webservices must return primitive data type values (int, String, etc.).
    Finally, I changed my webservices so that they return a String :
    Document documentXML                        = new com.sun.xml.tree.XmlDocument();
    //Return the XML document into string
    StringWriter writer                         = new StringWriter();
    ((XmlDocument)documentXML)                    .write(writer);
    return writer                                 .toString();

  • Problem about using xmlbean as return parameter in workshop 9.2 jsr-181 WS

    Hi
    I met a problem with the jsr-181 web service's return parameters in workshop 9.2.
    I wrote a web service which will return a jax-rpc-style javabean as return parameter. This javabean contained three xmlbean objects fields. So, the client can get those xmlbean objects when invoking the web service.
    But I got the error like the following:
    A java class "..." is being used as a parameter or return type that contains a property of field that is an xmlbean "...", this not allowed.
    Maybe workshop 9.2 does not support xmlbean object as the returned javabean's field. But why, i can use that in the workshop 8.1. why workshop 9.2 does not support them.
    And how can i do if the client want to get the three xmlbean objects when invoking the web service.
    Thanks,
    Xueh

    Hi Xueh
    I got it confirmed from engineering that we do NOT support any use of XmlBeans in a Pojo complex type.
    The workaround is to create a top-level xmlbean type that references the other xmlbean types.
    Thanks
    Vimala
    P.S: There seems to be some complexities involved in mapping a JAX RPC type (POJO) to a XMLBean Type. But we do have a internal bug that is tracking this issue.

  • Returning Internal Table as Returning Parameter of Method (by Value).

    When you return an internal table as the returning parameter of a method, it is passed by value.  I understand the concept of passing by value vs. passing by reference, but exactly what this means in this case is ambiguous.
    1)  It could mean that the entire table, including data, is copied from the local table in the method into the parameter provided by the calling code.
    2)  Alternatively, it could mean that only the pointer to the table is passed by value and the data is not literally copied from one place in memory to another.  This would <b>not</b> be the same as passing by reference.  For instance, I believe this is how object references are passed by value.
    I want to know how it works, so that I know if there is an efficiency problem with returning a huge table.  The returning parameter is wonderful for getter methods, and I prefer to use it over exporting parameters, but I have some concern about passing tables as returning parameters since I don't know how this works.
    Can anyone either explain this, or at least make it clear to me whether or not there is an efficiency issue?
    Thanks, in advance,
    -Chris

    Thanks to those who tried to help me with this question, but I finally had to just figure it out on my own.  I just realized today that there is a way to find the answer using the debugger's <i>Go To->Status Display->Memory Use</i> option.  This shows how variables are stored in memory.
    The answer:
    First of all, if you set one internal table equal to another like:
      i_tab1 = i_tab2.
    or like:
      i_tab1[] = i_tab2[].
    both will simply set <i>i_tab1</i> to point to the same memory that <i>i_tab2</i> is using.  It does <b>not</b> make a copy.  Now, if you attempt to change <i>i_tab1</i>, with an <i>append</i> statement for instance, a copy of <i>i_tab2</i>'s memory is made <b>then</b>!  The requested change to <i>i_tab1</i> is then applied to the copied data.  <b>AHA!!!</b>  This means that even if you think you are copying a table, you are not really doing it until it becomes necessary due to a divergence in values.
    I specifically tested a returning parameter to see how memory is handled, and it is basically just like an '<i>=</i>' statment.  No copy of the data is performed at first.  The memory that is allocated for the local variable in the method is simply pointed to by the variable used in the calling code to recieve that value.
    What if you then change the value in the calling code after the method has finished executing?  The answer depends on the situation.  If the value that you returned from the method is still being pointed to by another variable somewhere, then a copy is made when you attempt to change the returned table in the calling code, but if there is no longer another variable pointing to this memory, you can change the table in the calling program all you want without causing a copy in memory.
    For instance, if you have a getter method that returns the value of an attribute, at first no copy will be made, but when you try to change the table in your calling code, a copy will be made then.  However, if you just fill a local table in your getter method and return that table, there will never be a copy made, because the local variable that originally pointed to that memory expired when the method completed.  That means that after the method completes, the only variable pointing to the allocated memory is the one in the calling code that recieved the returning value.
    This is fantastic!!  This behaives in a way that seems to provide maximum efficiency in most cases.  Also, the table copies are <b>never</b> a waste, since they only happen upon changing of one of the table variables that point to the common memory, and in this case you would <b>want</b> to make a copy to avoid corrupting the other variable.
    Also, even if you did return your table as an exporting parameter by reference, you would not gain any significant efficiency.  There would still be no table copy if you don't change the returned table.  Also, if you did change the returned table, you <b>would</b> still produce a table copy if there was another variable, like an attribute, still pointing to the memory that you set your exporting paramter from before.
    The only situation that I can see resulting in a needless efficiency problem is if someone used a getter method to return the value of a table attribute, then changed the returned table in the calling program, and then used a setter method to set the whole table attribute equal to the changed table.  This would be a waste, so maybe this should be accomplished in another way.
    In conclusion, there is essentially no reason to hesitate returning a whole internal table as a returning parameter from a method call, even though it is pass by value.
    Kudos to the ABAP development team for their good design!

  • Return a record set from a procedure

    I am building an application for my company.
    Before oracle I had used MS SQL Server for a long time.
    I build a procedure as following
    CREATE OR REPLACE PROCEDURE YBP.ReturnSet
    -- Return a record set from a procedure
    IS
    BEGIN
    SELECT * FROM fdbase;
    END;
    But the complier show me a error message:
    <font color="#0000FF">PLS-00428     an INTO clause is expected in this SELECT statement</font>
    I read the error details
    <font color="#0000FF">"In PL/SQL, only a subquery is written without an INTO clause."</font>
    But I know that this procedure can run well in <font color="#0000FF">MS SQL Server .</font>
    How I can do this thing in Oracle
    Any help will be appreciate!

    I have a stored proc that is defined as
    CREATE or REPLACE
    PROCEDURE ABC
    (linkid IN CHAR,
    Year_in IN DATE,
    Method_in IN CHAR,
    Date_out OUT DATE,
    average_out OUT NUMBER)
    is
    begin
    .. Date_out := ...;
    average_out := ...;
    end;
    another partially completed stored proc that returns a ref
    cursor defined as follows:
    create or replace package zzz
    as
    type cursorType is ref cursor;
    end;
    create or replace function test return zzz.cursortype
    as
    date_OUT date;
    Average_OUT number;
    l_cursor zzz.cursorType;
    CURSOR temp_cur is
    SELECT l.linkid, L.routenumber, ABC(l.linkid,
    to_date('01/01/2000', 'mm/dd/yyyy'),
    '2',
    date_OUT,
    average_OUT)
    FROM LINK l
    WHERE l.LINKID <= '010999';
    begin
    open temp_cur;
    end;
    inside test (which I need help completing), how can I refer to
    the date_out and the average_out params returned by ABC() so
    that these values are in turn passed to the cursortype defined
    in package zzz?
    Thanks in advance.

Maybe you are looking for