Variable scope in plsql package

When I run the following package, proc2 is always printing the value of i = 1 even though proc1 is incrementing the value of i correctly? Could any one explain to me what is the problem with this code?
CREATE OR REPLACE PACKAGE test_pkg
is
PROCEDURE proc1 (p_fetch_limit in number := 200);
PROCEDURE proc2 (rec_id out number);
END test_pkg;
CREATE OR REPLACE PACKAGE BODY test_pkg
IS
cursor test_cur
IS
select new_app,
card_number,
process_flag,
process_date,
seq_number
from wm_opt_scan_temp
where process_flag = 'N' and process_date IS null
and new_app = 'Y'
order by seq_number;
type test_cur_type IS table of test_cur%rowtype;
cur_rec test_cur_type;
i number := 1;
l_rec_id number := 0;
-- PROC1 --
PROCEDURE proc1 (p_fetch_limit in number := 200)
IS
BEGIN
open test_cur;
loop
fetch test_cur bulk collect into cur_rec limit p_fetch_limit;
exit WHEN cur_rec.count = 0;
for i in 1..cur_rec.count
loop
DBMS_OUTPUT.put_line('proc1 - i<'||i||'> seq#<'||cur_rec(i).seq_number||'> card#<'||cur_rec(i).card_number||'>');
l_rec_id := 0;
proc2(l_rec_id);
END loop;
END loop;
CLOSE test_cur;
COMMIT;
DBMS_OUTPUT.put_line('proc1 procedure finished...');
END proc1;
-- PROC2 --
PROCEDURE proc2 (rec_id out number)
IS
BEGIN
DBMS_OUTPUT.put_line('proc2 started - i<'||i||'> seq#<'||cur_rec(i).seq_number||'> card#<'||cur_rec(i).card_number||'>');
END proc2;
END test_pkg;
output is:
Connecting to the database Test.
proc1 - i<1> seq#<7841> card#<40992814376>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<2> seq#<8041> card#<40992779256>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<3> seq#<8241> card#<40992745696>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<4> seq#<12681> card#<40992814376>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<5> seq#<12682> card#<40992814375>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<6> seq#<12683> card#<40992814378>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<7> seq#<12684> card#<40992814379>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<8> seq#<12685> card#<40992745756>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<9> seq#<12686> card#<40992745757>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<10> seq#<12689> card#<40992814377>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<11> seq#<12690> card#<40992745755>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<12> seq#<12691> card#<40992745767>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<13> seq#<12692> card#<40992745771>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<14> seq#<12693> card#<40992745612>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<15> seq#<12694> card#<40992145673>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<16> seq#<12695> card#<40992745611>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<17> seq#<12697> card#<40992745661>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<18> seq#<12698> card#<40992745689>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 - i<19> seq#<12700> card#<40992745771>
proc2 started - i<1> seq#<7841> card#<40992814376>
proc1 procedure finished...
Process exited.
Disconnecting from the database Test.

Assign it to a separate global variable, and don't name it "i" so that the global variable is visible within the for loop.
As for Java, consider the following:
public class Foo {
private int i;
public void proc1() {
for (int i=0;i<10;i++) {
// do stuff
public void proc2() {
System.out.println("i = "+i);
Same problem: two variables in different scopes, both named "i".

Similar Messages

  • Variable Scope at package or interface level

    Hi,
    Can we set the ODI Project variable scope to package or interface level
    because in my project im using a last rundate refresh variable this variable value will be changed at the time of execution of each package.
    Thanxs
    Madhavi

    you can create it as "Not Persistent" and then its value exist per ODI session.
    In this way, several sessions can keep independent value to the same variable.

  • View of variables declared within a package/procedure

    Does anyone know of a view which holds all the variables declared within a package/function/procedure?
    I can see that _arguments holds the parameters defined.
    PLSQL Developer displays these things in their drop downs, so I assume they are either getting it from a view or have written something which parses the _source view?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

    Do you mean this ?
    SCOTT@db102 SQL> desc dbms_output
    PROCEDURE DISABLE
    PROCEDURE ENABLE
    Argument Name                  Type                    In/Out Default?
    BUFFER_SIZE                    NUMBER(38)              IN     DEFAULT
    PROCEDURE GET_LINE
    Argument Name                  Type                    In/Out Default?
    LINE                           VARCHAR2                OUT
    STATUS                         NUMBER(38)              OUT
    PROCEDURE GET_LINES
    Argument Name                  Type                    In/Out Default?
    LINES                          TABLE OF VARCHAR2(32767) OUT
    NUMLINES                       NUMBER(38)              IN/OUT
    PROCEDURE GET_LINES
    Argument Name                  Type                    In/Out Default?
    LINES                          DBMSOUTPUT_LINESARRAY   OUT
    NUMLINES                       NUMBER(38)              IN/OUT
    PROCEDURE NEW_LINE
    PROCEDURE PUT
    Argument Name                  Type                    In/Out Default?
    A                              VARCHAR2                IN
    PROCEDURE PUT_LINE
    Argument Name                  Type                    In/Out Default?
    A                              VARCHAR2                IN
    SCOTT@db102 SQL>                                         

  • HTML email from PLSQL package

    Hi,
    I have to create HTML table with PLSQL variable as row entry from PLSQL package and send this as email.
    Do we have any oracle package to send html email with Html code as Varchar from PLSQL package? Please provide me some example
    Thanks
    Senthil S

    Two packages ... HTP and HTF. Both documented and some demos here for HTP.
    http://www.morganslibrary.org/reference/pkgs/htp.html

  • PLSQL Package Question

    I have a PLSQL Package which needs to be called from a Unix file. How can I do this ?
    The PLSQL Package needs to be defined in such a way that it accepts parameters and passes it back to the Unix call.
    How Can I do this ?
    If my question is not clear please let me know , I will clarify again.
    Thanks
    fm

    Hello,
    I have a PLSQL Package which needed to be code reviewed and cleaned. It is basically 3 procedures within one package. These Packages are being called from Unix (Excel file) by automation.
    My Question is , how do I pass the variables from Unix to PLSQL without any hardcoding.
    For example Product A has many sub products B,C,D etc. How can I Pass the variables from the program so all run properly and everything ties in place.
    If my question is not clear , please let me know.I will provide more information.
    Regards
    fm

  • Help: How to call a plsql Package on click of a button in ADF

    Hi Guru's
    Please provide your suggestions, how to go ahead in ADF to call a plsql package when a button i clicked.
    I do have a knowledge of oracle callable statment to call the plsql package but not having any idea how to relate button click event in ADF.
    Thanks,
    SPC

    Create a service method in your Application Module to [url http://download.oracle.com/docs/cd/E14571_01/web.1111/b31974/bcadvgen.htm#sm0297]call the stored package, expose that service method on the client interface, and then drag the service method from the data control palette on to your page as a button.
    John

  • 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

  • Using XML Publisher with plsql package data source?

    Hi,
    I have a html gantt chart which i create using a plsql package and the use of the htp.p procedure for output to a webpage.
    I want to be able to print this to PDF and was hoping the XML Publisher may be an option for doing this. The datasource for this however seems to be a sql query or XML feed.
    Can anyone provide any suggestions on this??

    With a Pipelined Table Function you can use a function in your FROM-clause (so you'll have a normal SELECT, but in the background the data comes from a PL/SQL-function):
    SELECT * FROM TABLE( <function_name> )
    Look here:
    http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:30404463030437
    http://download-uk.oracle.com/docs/cd/B19306_01/appdev.102/b14261/tuning.htm#sthref2335

  • Urgent - Error calling web service generated from plsql package

    Hi,
    I am using Jdeveloper 10.1.3 production release.
    I am trying to publish a plsql packaged procedure as a web service.
    My first question is -
    When I am publishing the plsql API as a WS, should I choose the style Document/Wrapped or RPC Literal? Document Wrapped is the default in the wizard.
    My second question - Depending on whether I choose Document/Wrapped or RPC Literal style, I get 2 different errors when I try to run the client java file (generated by Jdeveloper) that calls the web service. The client java compiles successfully but when I run I get these messages:
    Document/Wrapped error -
    D:\jdev1013\jdk\bin\javaw.exe -ojvm -classpath H:\jdevhome\jdev\mywork\Genesis\Test\classes;D:\jdev1013\sqlj\lib\runtime12.jar;D:\jdev1013\jdbc\lib\ojdbc14dms.jar;D:\jdev1013\jdbc\lib\orai18n.jar;D:\jdev1013\jdbc\lib\ocrs12.jar;D:\jdev1013\diagnostics\lib\ojdl.jar;D:\jdev1013\lib\dms.jar;D:\jdev1013\jdev\lib\jdev-rt.jar;D:\jdev1013\webservices\lib\soap.jar;D:\jdev1013\webservices\lib\saaj-api.jar;D:\jdev1013\lib\xmlparserv2.jar;D:\jdev1013\jlib\javax-ssl-1_1.jar;D:\jdev1013\jlib\jssl-1_1.jar;D:\jdev1013\j2ee\home\lib\activation.jar;D:\jdev1013\j2ee\home\lib\mail.jar;D:\jdev1013\j2ee\home\lib\http_client.jar;D:\jdev1013\webservices\lib\jaxrpc-api.jar;D:\jdev1013\webservices\lib\wsclient.jar;D:\jdev1013\webservices\lib\wsserver.jar;D:\jdev1013\webservices\lib\wssecurity.jar;D:\jdev1013\webservices\lib\wsdl.jar;D:\jdev1013\webservices\lib\orasaaj.jar;D:\jdev1013\webservices\lib\orawsdl.jar;D:\jdev1013\webservices\lib\orawsrm.jar;D:\jdev1013\webservices\lib\jaxr_api.jar;D:\jdev1013\webservices\lib\orajaxr.jar;D:\jdev1013\webservices\lib\relaxngDatatype.jar;D:\jdev1013\webservices\lib\jaxb-impl.jar;D:\jdev1013\webservices\lib\jaxb-libs.jar;D:\jdev1013\webservices\lib\xsdlib.jar;D:\jdev1013\webservices\lib\mdds.jar;D:\jdev1013\jlib\jaxen.jar;D:\jdev1013\jlib\oraclepki.jar;D:\jdev1013\jlib\ojpse.jar;D:\jdev1013\jlib\osdt_core.jar;D:\jdev1013\jlib\osdt_cert.jar;D:\jdev1013\jlib\osdt_xmlsec.jar;D:\jdev1013\jlib\osdt_wss.jar;D:\jdev1013\jlib\osdt_saml.jar;D:\jdev1013\jlib\repository.jar;D:\jdev1013\jlib\ojmisc.jar;D:\jdev1013\j2ee\home\jazncore.jar;D:\jdev1013\j2ee\home\oc4jclient.jar;D:\jdev1013\rdbms\jlib\xdb.jar;D:\jdev1013\diagnostics\lib\ojdl2.jar;D:\jdev1013\lib\xsu12.jar;D:\jdev1013\lib\xml.jar;D:\jdev1013\j2ee\home\lib\ejb.jar;D:\jdev1013\j2ee\home\lib\jms.jar;D:\jdev1013\j2ee\home\lib\jta.jar;D:\jdev1013\j2ee\home\lib\servlet.jar;D:\jdev1013\jakarta-taglibs\commons-logging-1.0.3\commons-logging-api.jar;D:\jdev1013\jakarta-taglibs\commons-logging-1.0.3\commons-logging.jar;D:\jdev1013\j2ee\home\lib\ojsp.jar;D:\jdev1013\j2ee\home\jsp\lib\taglib\ojsputil.jar;D:\jdev1013\j2ee\home\oc4j.jar;D:\jdev1013\j2ee\home\lib\oc4j-internal.jar;D:\jdev1013\jdev\lib\ojc.jar genc2dv1.TestWebServiceSoapHttpPortClient
    calling http://rchellam-PC1:8888/Genesis-Test-context-root/TestWebServiceSoapHttpPort
    java.rmi.RemoteException: Error parsing envelope: (1, 1) Start of root element expected.; nested exception is:
         javax.xml.soap.SOAPException: Error parsing envelope: (1, 1) Start of root element expected.
         at test.proxy.runtime.TestWebServiceSoapHttp_Stub.getAttributes(TestWebServiceSoapHttp_Stub.java:157)
         at genc2dv1.TestWebServiceSoapHttpPortClient.getAttributes(TestWebServiceSoapHttpPortClient.java:46)
         at genc2dv1.TestWebServiceSoapHttpPortClient.main(TestWebServiceSoapHttpPortClient.java:29)
    Caused by: javax.xml.soap.SOAPException: Error parsing envelope: (1, 1) Start of root element expected.
         at oracle.j2ee.ws.saaj.soap.soap11.SOAPImplementation11.createEnvelope(SOAPImplementation11.java:104)
         at oracle.j2ee.ws.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:76)
         at oracle.j2ee.ws.saaj.soap.MessageImpl.getSOAPBody(MessageImpl.java:713)
         at oracle.j2ee.ws.client.StreamingSender._preHandlingHook(StreamingSender.java:673)
         at oracle.j2ee.ws.client.StubBase._preHandlingHook(StubBase.java:664)
         at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:201)
         at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:111)
         at test.proxy.runtime.TestWebServiceSoapHttp_Stub.getAttributes(TestWebServiceSoapHttp_Stub.java:134)
         ... 2 more
    Caused by: oracle.xml.parser.v2.XMLParseException: Start of root element expected.
         at oracle.xml.parser.v2.XMLError.flushErrors1(XMLError.java:320)
         at oracle.xml.parser.v2.NonValidatingParser.parseRootElement(NonValidatingParser.java:333)
         at oracle.xml.parser.v2.NonValidatingParser.parseDocument(NonValidatingParser.java:295)
         at oracle.xml.parser.v2.XMLParser.parse(XMLParser.java:201)
         at oracle.j2ee.ws.saaj.soap.soap11.SOAPImplementation11.createEnvelope(SOAPImplementation11.java:78)
         ... 9 more
    Process exited with exit code 0.
    RPC Literal error -
    D:\jdev1013\jdk\bin\javaw.exe -ojvm -classpath H:\jdevhome\jdev\mywork\Genesis\Test\classes;D:\jdev1013\sqlj\lib\runtime12.jar;D:\jdev1013\jdbc\lib\ojdbc14dms.jar;D:\jdev1013\jdbc\lib\orai18n.jar;D:\jdev1013\jdbc\lib\ocrs12.jar;D:\jdev1013\diagnostics\lib\ojdl.jar;D:\jdev1013\lib\dms.jar;D:\jdev1013\jdev\lib\jdev-rt.jar;D:\jdev1013\webservices\lib\soap.jar;D:\jdev1013\webservices\lib\saaj-api.jar;D:\jdev1013\lib\xmlparserv2.jar;D:\jdev1013\jlib\javax-ssl-1_1.jar;D:\jdev1013\jlib\jssl-1_1.jar;D:\jdev1013\j2ee\home\lib\activation.jar;D:\jdev1013\j2ee\home\lib\mail.jar;D:\jdev1013\j2ee\home\lib\http_client.jar;D:\jdev1013\webservices\lib\jaxrpc-api.jar;D:\jdev1013\webservices\lib\wsclient.jar;D:\jdev1013\webservices\lib\wsserver.jar;D:\jdev1013\webservices\lib\wssecurity.jar;D:\jdev1013\webservices\lib\wsdl.jar;D:\jdev1013\webservices\lib\orasaaj.jar;D:\jdev1013\webservices\lib\orawsdl.jar;D:\jdev1013\webservices\lib\orawsrm.jar;D:\jdev1013\webservices\lib\jaxr_api.jar;D:\jdev1013\webservices\lib\orajaxr.jar;D:\jdev1013\webservices\lib\relaxngDatatype.jar;D:\jdev1013\webservices\lib\jaxb-impl.jar;D:\jdev1013\webservices\lib\jaxb-libs.jar;D:\jdev1013\webservices\lib\xsdlib.jar;D:\jdev1013\webservices\lib\mdds.jar;D:\jdev1013\jlib\jaxen.jar;D:\jdev1013\jlib\oraclepki.jar;D:\jdev1013\jlib\ojpse.jar;D:\jdev1013\jlib\osdt_core.jar;D:\jdev1013\jlib\osdt_cert.jar;D:\jdev1013\jlib\osdt_xmlsec.jar;D:\jdev1013\jlib\osdt_wss.jar;D:\jdev1013\jlib\osdt_saml.jar;D:\jdev1013\jlib\repository.jar;D:\jdev1013\jlib\ojmisc.jar;D:\jdev1013\j2ee\home\jazncore.jar;D:\jdev1013\j2ee\home\oc4jclient.jar;D:\jdev1013\rdbms\jlib\xdb.jar;D:\jdev1013\diagnostics\lib\ojdl2.jar;D:\jdev1013\lib\xsu12.jar;D:\jdev1013\lib\xml.jar;D:\jdev1013\j2ee\home\lib\ejb.jar;D:\jdev1013\j2ee\home\lib\jms.jar;D:\jdev1013\j2ee\home\lib\jta.jar;D:\jdev1013\j2ee\home\lib\servlet.jar;D:\jdev1013\jakarta-taglibs\commons-logging-1.0.3\commons-logging-api.jar;D:\jdev1013\jakarta-taglibs\commons-logging-1.0.3\commons-logging.jar;D:\jdev1013\j2ee\home\lib\ojsp.jar;D:\jdev1013\j2ee\home\jsp\lib\taglib\ojsputil.jar;D:\jdev1013\j2ee\home\oc4j.jar;D:\jdev1013\j2ee\home\lib\oc4j-internal.jar;D:\jdev1013\jdev\lib\ojc.jar genc2dv1.TestWebService2SoapHttpPortClient
    calling http://rchellam-PC1:8888/Genesis-Test-context-root/TestWebService2SoapHttpPort
    unexpected null value for literal data
         at oracle.j2ee.ws.common.util.exception.JAXRPCExceptionBase.<init>(JAXRPCExceptionBase.java:52)
         at oracle.j2ee.ws.common.encoding.SerializationException.<init>(SerializationException.java:26)
         at oracle.j2ee.ws.common.encoding.literal.LiteralObjectSerializerBase.internalSerialize(LiteralObjectSerializerBase.java:191)
         at oracle.j2ee.ws.common.encoding.literal.LiteralObjectSerializerBase.serialize(LiteralObjectSerializerBase.java:137)
         at test.proxy.runtime.TestWebService2SoapHttp_getAttributes_ReqS_LiteralSerializer.doSerialize(TestWebService2SoapHttp_getAttributes_ReqS_LiteralSerializer.java:154)
         at oracle.j2ee.ws.common.encoding.literal.LiteralObjectSerializerBase.internalSerialize(LiteralObjectSerializerBase.java:199)
         at oracle.j2ee.ws.common.encoding.literal.LiteralObjectSerializerBase.serialize(LiteralObjectSerializerBase.java:137)
         at oracle.j2ee.ws.client.StreamingSender._writeRequest(StreamingSender.java:625)
         at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:137)
         at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:111)
         at test.proxy.runtime.TestWebService2SoapHttp_Stub.getAttributes(TestWebService2SoapHttp_Stub.java:89)
         at genc2dv1.TestWebService2SoapHttpPortClient.getAttributes(TestWebService2SoapHttpPortClient.java:57)
         at genc2dv1.TestWebService2SoapHttpPortClient.main(TestWebService2SoapHttpPortClient.java:32)
    Process exited with exit code 0.
    Now all the classes are generated by JDeveloper automatically from the plsql API. So I am not sure why the errors occur and how to fix these.
    Also, these errors are occurring on plsql APIs that have input or output parameters of plsql record type or pslql table of record type. These errors don't occur if the api is simple with scalar input or output parameters only.
    I would appreciate any help on how to resolve these errors.
    Thanks,
    Raji

    Hi,
    I'm wondering if the problem is actually that the client is failing to connect to the server correctly. Can I suggest that you switch on the HTTP Analyzer and see what comes back there.
    Is it possible it is a proxy problem? If you are working locally then I first suggest that you ensure that the Web Browser Proxy is off (see Tools -> Preferences -> Web Browser Proxy) - and that there are no exceptions listed (either with the proxy on or off) before you start the HTTP Analyzer.
    As to Doc/Wrapped or RPC. see this blog entry for a little more explanation:
    http://susanduncan.blogspot.com/2006/05/rpc-document-bare-wrapped-literal-get.html
    regards
    Susan

  • Best practice : Base an Entity object on a table or on PLSQL Package?

    Hello,
    We are going to build an application based upon services. We'd like to implement the data part of our services with the ADF BC components. Each Service data part is represented as an Application.
    There are two ways to define an entity within an application
    (1) Directly based upon the database tables
    (2) Based upon a PLSQL package, containing insert/update/delete functionality (as described in paragraph 26.4 of the ADF Dev. guide for Forms/4GL Developers)
    I can imagine that the last methodology is (from a services standpoint) a cleaner separation between the data and the model layer.
    What are the advantages/disadvantages in real life of basing an Entity object on a PLSQL package?
    Thanks in advance,
    Regards Leon Smiers

    Hello Frank,
    We are going to use the ADF BC model for both JSF pages and Web Services. So I'd like to hve a reusable BC Model.
    You mentioned ADF BC transaction management, when you base the BC model upon PLSQL API's, do I have to define my own transaction management?
    Regards Leon

  • Global Variables Vs Form Library Package Variables Vs DB Package Variables

    I realise this question has been asked a few times with varying degrees of answers, but I am still seeking comment/advice from others.
    I am aware of following options for retaining persistent data to share between forms.
    1. Package variables in a library that you share in a session.
    This requires usage of SHARE_LIBRARY_DATA, there is risk that this not set, then does not share data.
    2. Package variables in a database package.
    Requires round trip to DB. Is this expensive for performance?
    What about risk of DB package becoming invalid and losing state?
    3. Use global variables
    Can be tricky to manage.
    4. Use parameters
    Only one way, ie called form cannot alter value that caller can see.
    Packages are closest to OO approach in using get and set modules. Allows all variables to be managed in one location. This appears best practice.
    Forms library packages appear risky if caller does not include SHARE_LIBRARY_DATA.
    DB packages have cost of round trip to DB. Does this become expensive is have to reference many times. Also topic of DB package becoming invalid and losing state?
    Forms global variables have regular disadvantages of globals, ie not sure who may modify. Need to manage carefully. Text only
    As a second related question, for value such as current user, for performance (and maintainability) is it better to obtain this from oracle user function each time, or save somewhere (in one of options above) and use that saved value each time.

    My personal opinion:
    I like the "packaged" version with getters and setters. In general, i create a client-side package in a pll which has methods to access the value by getters and setters. With that, the "implementation" is encapsulated and doesn't really matter to the rest of your system. All modules have to access the value using the getter and setter.
    Inside the procedure i use two approaches:
    1. If its for communication purposes between different forms i use globals, which are filled or extracted in the getter and setter (see this http://andreas.weiden.orcl.over-blog.de/article-28180655.html )
    2. If its for someother purpose where the value should be "session persistent" i use a database package with getters and setters, which are called from the client-side package getter and setter. If the value is quite "constant" throughout the session, i read the value once at initialization code of the client-side package and the getter just returns that "cached" value
    Hope this helps.

  • The PLSQL Package version is not honored in Jdeveloper

    Hello,
    I have launched following PLSQL procedure and successfully compiled in the database. Then, I am calling this procdure using application connections window in Jdeveloper. This plsql api is the integral component of the webservice written using jdeveloper.
    Below is the interface of the plsql. Note that parameter p_streetaddress3 is commented. When I compile the package and java wrapper in jdeveloper everything gets compiled just fine. However, when the web service is deployed it still shows the parameter p_streetaddress3.
    Why, this already commented out parameter should continue to show up on webservice even when it is commented at database level?
    In other words, changes made in plsql package, for a jdeveloper webservice are not getting reflacted.
    Any idea?
    Thanks,
    Ruchir
    PROCEDURE xxfa_ap_supplier (
    p_err_buf OUT VARCHAR2,
    p_retcode OUT NUMBER,
    p_lastupdateddate DATE,
    p_vendorflag VARCHAR2, --p_new_ven_flag
    p_partyid VARCHAR2,
    p_partyname VARCHAR2, --p_vendor_name
    --p_vendor_type_lookup_code         VARCHAR2,
    -- p_payment_terms VARCHAR2,
    --p_start_active_date            DATE,
    -- p_client NUMBER,
    -- p_legacyno VARCHAR2,
    p_streetaddress1 VARCHAR2,
    p_streetaddress2 VARCHAR2,
    -- p_streetaddress3 VARCHAR2,
    -- p_streetaddress4 VARCHAR2,
    p_city VARCHAR2,

    Hi Ruchir,
    in 10.1.3 we had problems re-generating web services as the WSDL was not always refreshed, only the Java sources. Maybe the same is happening to you. Try deleting the WSDL before re-generating the web service and see if it helps.
    HTH,
    Patrik

  • Plsql package cannot be  re-compiuled or droppedHi

    Hi All,
    I have a plsql package that cannot be re-compiled or dropped . Can any one help how to proceed.
    I using oracle 10.3 installed in a solaris 10 machine
    Thanks
    BR

    user11191992 wrote:
    Hi All,
    I have a plsql package that cannot be re-compiled or dropped . Can any one help how to proceed.
    I using oracle 10.3 installed in a solaris 10 machine
    Thanks
    BRI guess there is a long running session or a regular dbms_job that is constantly using this package. In that case and after careful consideration kill this session.

  • PlSql Package in Jdeveloper

    I want to use Plsql packages for insert/update/delete in Jdeveloper Jsp forms . Can anyone help me regarding this . Thanks in Advance
    Thanks
    N.Nagarajan

    Or you could create an EntityObject based on a view, and have your Pl/SQL package called by "instead of" triggers on this view. This way, you keep a consistent interface between various applications (for instance, a BC4J application and something built with PHP).

  • Call a plsql package in odi

    Hi Experts
    i would like to know how a plsql package called inside odi.i have plsql package in the back end.i just need to run the same via odi by giving some parameters
    in back end i am running the same as below
    DECLARE
    ERRBUF VARCHAR2(200);
    RETCODE NUMBER;
    BEGIN
    abc.lea (ERRBUF,RETCODE,'abc',2011,12);
    END;
    how i will replicate the same odi

    Hi Guru
    I have refered the same .here its mentioned for calling a procedure and running the same.in my case i have a plsql package in the back end which is having so many procedures.so i just need to call.but while directly calling the package.procdure in odi its throwing error like package should be declared.
    Regards
    Sree

Maybe you are looking for