External Java Funcion in a OWF Notification

In my workflow I need to execute some Java code after a notification (an "External Java") and I meet a problem:
The java code (the class name is "JPOST_NOTIFICA") is correctly executed by the "Java Function Agent" (I can see the logs)
While I call the background engine the workflow process goes in Error:
Activity      NT_PROVA
Result      Exception
Error Name           -6550
Error Message      ORA-06550: line 1, column 7: PLS-00201: identifier 'JPOST_NOTIFICA' must be declared ORA-06550: line 1, column 7: PL/SQL: Statement ignored
Error Stack      Wf_Engine_Util.Function_Call(Jpost_notifica, PROVE, ANDREA1, 2809, RUN)
Anyone can help me?
Thanks in advance.
Andrea Rinoldi

I've set the function type correctly. What I cannot understand is why the class is called and executed correctly by the agent, and only while I execute the "background process" I get this kind of error.
I've tried also to create a "function" activity using the same class and it works correctly.

Similar Messages

  • External Java Class and Oracle Workflow 2.6.3

    Hi,
    There is a requirement wherein I have to call an external Java class to fetch a string value from an external source and use that in the Oracle Workflow Notifications.
    After reading the Workflow documentation, I understand that Java classes can be called only for standalone version of the Workflow Builder (2.6.3). As the
    requirement is for an e-business suite implementation (11.5.10), I was wondering if there is a way to acheive this. Can an external Java class be called from within
    Oracle Workflow?
    I would really appreciate if someone can point me in the right direction.
    Many Thanks,
    Praveen

    Hi,
    If you write a wrapper to the java class in PL/SQL, then you can invoke that class from a PL/SQL activity conforming to the standard PL/SQL signature.
    HTH,
    Matt
    WorkflowFAQ.com - the ONLY independent resource for Oracle Workflow development
    Alpha review chapters from my book "Developing With Oracle Workflow" are available via my website http://www.workflowfaq.com
    Have you read the blog at http://www.workflowfaq.com/blog ?
    WorkflowFAQ support forum: http://forum.workflowfaq.com

  • Work with result of a select in an external Java Program

    Hi!
    i would like work with a field of a select in a external java program. I give you an example:
    i want copy a table into another table, but i want do a little modification (before insert action) in one parameter via Java class wich parameter is a field in the select.
    Example:
    i've two tables:
    TABLE_BACK (ID, CARACT)
    TABLE_NEW (ID, CARACT)
    and i've a java Method in an external class com.upc.myClass.modifyCaract(String paramS)
    Then, before insert a row in table_new, i want do a transformation in Caract field from table_back. I want do something like this:
    INSERT INTO TABLE_NEW (ID, NAME) ( SELECT ID, <%=com.upc.myClass.modifyCaract('I WANT HERE CARACT FIELD FROM TABLE_BACK') FROM TABLE_BACK )
    is it possible? how can i do it?
    Thanks!!
    Message was edited by:
    valdomir

    Hola Valdomir,
    Que tal estas? Ya ha empezado el calor en Barcelona ? jejejejejejej
    Well, I think to be possible do what you need.
    1) In a procedure step, at source tab query the values, something like:
    select caract as MY_CARACT from TABLE_BACK
    2) at target tab, use the tags "<@ @>" to import the java class (after put it in the correct ODI directory).
    3) at same target tab, after the tag just write (as your example):
    INSERT INTO TABLE_NEW (ID, NAME) ( SELECT ID, <@=com.upc.myClass.modifyCaract('I #MY_CARACT) FROM TABLE_BACK )@>
    I think this will be enough....
    Un saludo,
    Cezar Santos

  • I want to call External Java class from the PL/SQL

    Hi,
    I am using Oracle Apps R11i (11.5.7), I wanted to call external Java class from the PL/SQL. This external Java class is residing in another application server.
    How do I do this.
    I know one way. Develop C routine in Oracle Apps to call external java class and call this C routine from the PL/SQL.
    Is there any simple method available? or any other method?
    Thanks in advance.
    -Venkat

    First of all, this is a Java application you're talking about, right (i.e. it has a main() function)? It's not just a class that you're trying to instantiate is it? If it's an application, you obviously have to start a new virtual machine to run it (rather than using the virtual machine built into the database like stored java). I'm a little leary of your mention of an "application server" as this would more commonly mean that a virtual machine is already over there running with access to this class. In which case, you'd typically interface with SOAP or some other RPC API.
    All that aside, as long as you have physical disc access (through NFS or whatever) to the class file, you could use a java wrapper class with a system call to do this. In fact, there is a thread in just the last day or so on this very forum that has the code to do just that (see " Invoking OS Commands from PL/SQL"). However, it's worth noting that the virtual machine will be running on the database server in this case and not the application server.

  • How to call external Java code from Animate project?

    I am creating a trainer using Animate that needs to interface with an aircraft model written in Java.  Is there a way to call external Java functions from Animate?
    Thanks!

    you can import external java files by yepnope
    yepnope({nope:[
                                  'your java script file address.js',
                             ],complete: init});
    function init() {
    codes that work with your js file can be write in here
    Zaxist

  • How to use external java files into my project

    Hi all,
    I need your help to import my external java files in to my project.
    The files are in package folder.
    So how to tell the import command with the path of the folder.
    I read also that I can make a jar file and integrate it into the project.
    How can I make jar file.
    Best regards...

    there is one utility in j2se jar and check the option also
    put that jar file in lib folder of yr application folder
    [email protected]

  • Using Arrays in external Java Methods

    Hello,
    I want to write an external Java Method. The method should access an Attribute. The Attribute should store an array of strings (e.g. {"value1", "value2", "..."}).
    Is there a possibility to store a stringarray in an Attribute? How could I access the different values in the external Java Method?
    Thanks for your help.
    Benedikt

    Benedikt,
    I don't think you can.
    But why don't you use a java.util.StringTokenizer object instead ?
    If I look in the workflow db, a value of an attribute is defined as varchar2(4000), so that should give you enough space.
    Grtz,
    Chris.

  • Calling a external Java method from JSP - using Tomcat server

    Hi all,
    I am trying to call a method in an external Java file from my JSP. I am using Tomcat server.
    I have my class within the package package "mypackage" and it is called myclass.class. It has only one static method mymethod() which reads from a file and writes to a file.
    I compiled the java class and I put the class file under webapps/ROOT/web-inf/classes/mypackage/myclass.class
    I am trying to say something like this from my JSP file(which is under webapps/ROOT) :
    <%@ page import = "mypackage.myclass"%>
    <% myclass.mymethod(); %>
    I am not instatiating the class as its a static method.
    This is what I get while accessing my jsp file :
    javax.servlet.ServletException: try to access class mypackage.myclass from class org.apache.jsp.index_005ftest_jsp
    To put my problem in a nutshell, Can someone guide me how to access a method of an external class from a JSP page? I have a bunch of pages doing the same operation so I thought I would have it in a method and call it from every page. Even though I tried to put the file under web-inf/classes, The JSP is not able to see the class.
    Please help.
    Thanks
    -Uday

    I have a situation that is a bit similar. I have successfully used beans for storing methods used in JSPs and used by other methods in the same class as was suggested above. Now I would like to break some methods into another (utility) class since they are lower level and can be used by lots of things. They are for database operations (given a String query and String dbname, it queries and returns ResultSet for example). I want to have them in a separate class for reusability and OOP.
    I am having problems calling those public static methods in the public class from my bean that communicates with the JSP. I can't compile the class that calls the method in the database ops class. I get an error like :
    loginHelper.java:45: cannot find symbol
    symbol : variable sqlHelper
    location: class dbHelperBean.loginHelper
    and when I include the package name in the call I get
    loginHelper.java:45: cannot find symbol
    symbol : class sqlHelper
    location: package dbHelperBean
    That's strange since the package of both classes is dbHelperBean and the class is indeed called sqlHelper. I tried to compile it in the same directory as sqlHelper as well. What am I doing wrong?
    Thanks for any help.

  • Multiple Data Sources and Accessing External Java APIs

    Hi Everyone,
    I have a couple of questions for which I was not able to find satisfactory answers in the forum search, so here they are. I would be really grateful if you can help us out with this.
    1. Accessing two Data Sources in the same report: We have a requirement to access two data sources in the same report, and use the data from one source to run a query on the other source. Our product (OIM) has its own DB. And it integrates with BPEL (another Oracle application) for some functionality. BPEL has its own DB. A few reports need data from both these repositories. For simplicity, consider that we need to join two tables, but one table is in OIM DB and the other is in BPEL DB. I guess such a join is not possible. So to work around it, we would like to run a query against one DB and then use the results to run a query on the other DB, which will basically simulate the join by running two queries.
    Is something like this possible in BIP? If not directly available, can you suggest something which can act as a work around to achieve this?
    2. Calling External Java APIs from BIP: We need to call some external APIs (for achieving Data Security) 'before' we run the queries in BIP. Basically the Java API will specifya set of keys which will have to be used in an 'in' clause. I looked at the section "Building a Data Template" in the BIP User's Guide (http://bipublisher.us.oracle.com/doc/prod_docs/BI_Publisher_10_1_3_3_3/bip.1013/b40017/T421739T434255.htm). As far as I can see, it discusses how to invoke a PL/SQL procedure using <datatrigger> but the usage is not clear to me. Is there any other document that discusses this in detail? Also, I am not sure if it is possible to access Java APIs. Has it been done before? If yes, then can anyone provide some sample code (sample report bits) which I can refer to to get this thing working?
    Also, the data coming from the Java API may not be in the correct format. We may have to do some additional processing (like converting data in a Java Object to something like comma separated list to be plugged into a query). Is that possible? What will be the best approach here?
    Sorry for the detailed post!
    Thanks,
    Jatan

    Yes you should be able to use both - for example using a Flash Variable to pass in the URL of the XML that you want to load.
    FlashVars are only supposed to be passed in on startup and they are defined as part of the OBJECT/EMBED tag for the HTML.
    Actually it was possible to update FlashVars at runtime in Xcelsius 4.5 with certain JavaScript calls but not in Xcelsius 2008 (because Adobe Flex which Xcelsius 2008 is based on does not allow the same mechanism).
    FYI, for those that are interested in Xcelsius 2008 you pass values into/out of Xcelsius at runtime using External Interface and JavaScript instead.
    Regards,
    Matt

  • Calling PL/SQL function from external Java class

    I was wondering if I was able to call a pl/sql function from an external java class? If so, would you be able to tell me briefly on how to go about it. I know I can call java methods that are internally stored in the db from pl/sql, but I was hoping I could call pl/sql from external java. Thanks,
    Kelly

    Ok, I made the changes, but I'm now getting the following error:
    Error code = 1403
    Error message = ORA-01403: no data found
    ORA-06512: at "IOBOARD.GETSTATUS", line 6
    ORA-06512: at line 1
    The ora-01403 I don't understand because there is data for the name Kelly.Brace.
    ora-06512 error: at string line string.
    Here's what the code looks like after I made the changes:
    String sql = "{?=call ioboard.GetStatus(?)}";
          // create a Statement object
          myStatement = myConnection.prepareCall( sql );
          myStatement.setString( 1, "Kelly.Brace" );
          myStatement.registerOutParameter(2, java.sql.Types.LONGVARCHAR );
          // create a ResultSet object, and populate it with the
          // result of a SELECT statement
          ResultSet myResultSet = myStatement.executeQuery();
          // retrieve the row from the ResultSet using the
          // next() method
          myResultSet.next();
          // retrieve the user from the row in the ResultSet using the
          // getString() method
          String status = myResultSet.getString(1);
          System.out.println("Hello Kelly, your status is: " + status);
          // close this ResultSet object using the close() method
          myResultSet.close();Here's what the function looks like:
    CREATE OR REPLACE FUNCTION GetStatus( user_name in varchar2)
    RETURN VARCHAR2
    is
    v_status varchar2(10);
    BEGIN
    select iob_location into v_status
    from ioboard.iob_user
    where iob_username = user_name;
      RETURN( v_status);
    END;This works perfectly in the SQL Window:
    select iob_location
    from ioboard.iob_user
    where iob_username = 'Kelly.Brace';

  • External Java Function with a Result Type

    Dear all,
    I have created a workflow process which use a Function Activity of type "External Java" without a result type and it works fine, but i have created another with the result type of boolean (WFSTD_BOOLEAN) and it doesn't work properly. I will explain what is happening.
    I start a process and it stops in that function activity, then the oracle Function Activity Agent executes the class associated to that function and it works fine. Then i review the workflow process and check that the status of the activity is "Deferred". I execute the wf_engine.background process, and then the status of the activity is "Complete" but the result field is blank, thus the process is stopped and did not go through the "True" branch of the process. I have follow the Oracle Workflow and Java Technical White Paper to build the class associated to the function activity, and i return true in the execute method and don't put anything in the errorStack variable.
    The documentation says:
    resultOut If a result type is specified in the Activities properties page for the activity in the Oracle Workflow Builder, this parameter represents the expected result that is returned when the procedure completes.
    Note: Unlike the resultout for a PL/SQL procedure called by a function activity, the resultOut for a Java procedure does not include a status code. In the Java API, only the result type value is required. The status of the activity will be set automatically by the Workflow Engine depending on whether there is a value in the errorStack variable.
    am I doing something wrong? could anyone help me?
    Thanks in advance.

    Hi Allison,
    I've found the solution to the problem. If i set the variable resultOut to "T" or "F" before finnishing the execute method it works.
    I think that you have to set the variable resultOut with the internal value of the lookup type that you are using as the result type of the function activity.
    Bye!

  • Use of LORD APIs from external Java application

    We have a need (business scnerio driven) to write an external Java application for Sales Order/Quotation entry. We have recently updated to EHP4 to make use of LORD APIs built by SAP for CRM processes. We are going through published APIs and learning them the hard way (tral and error). We are making progress but slow. Currently we are working through function group ERP_LORD which contains 32 function modules (ERP_LORD_LOAD etc)
    Does anyone know have documentation on basic order entry scnerios and APIs to use and further information on variations of ERP_LORD_SET that may save us some time?
    Any additional information will be appreciated.

    How will they be able to access your application if they aren't users of the system?

  • Can we wrap a RFC as webservice  and use from external java application ?

    Hi Friends ,
                         Our scenario is  call a webservice ( wrapped form of RFC)  from a external  java application  which will pass the input to that webservice and get back the result  .
                          How XI will play a role here ?
                          Can we wrap a rfc as web service  ?
                           Any blogs for that ?
                          Can you please give a brief details about this ?
                          Expecting yoour asap
    Best Regards .,
    V.Rangarajan

    Hi
    Can we wrap a rfc as web service ?
    Yes.
    <i>To use the SAP Web AS 6.40 you need to build a wrapper in the 6.40 system. This is a remote function call (RFC) enabled function module with the same interface or a similar interface that internally calls the required RFC-enabled function module in the old 4.6x system via RFC. The wrapper then can be exposed to the outside world as a Web service. Another option is to use the Integration Broker capabilities for calling Web services in an older system.</i>
    How XI will play a role here ?
    XI will pass the input to the external java application and get back the result to the webservice
    regards
    krishna

  • Example-- Call RFC from external Java Application

    Update: I need code example to call RFC from External Java application. Can onybody help me?                                                      
    RGDS
    RP
    hi all.
    i want to create my own log for each interface.
    i saw this blog:
    /people/michal.krawczyk2/blog/2006/09/20/xi-abap-mapping-logs--more-standard-better-visibility
    my doubt is how to catch the error that i see in SXI_MONITOR y put it in a Sub-Objetc.
    For example: in sxi_monitor i get the error for my interface NMUCustomer: "No receiver could not be found" or "Error Mapping Traformation".
    I created an Object called ZNMUCUSTOMER and a Sub-Objetc called ZERROR.
    what i must do to get the error I see in monitor and assign it to Sub-Object??
    Rgds.
    Message was edited by:
            Rodrigo Pertierra
    Message was edited by:
            Rodrigo Pertierra
    Message was edited by:
            Rodrigo Pertierra

    Hi,
    Oh, you are using ABAP mapping ......
    then use the following in ABAP mapping ..
    TRACE1,TRACE2,TRACE3.... for trace level 1,2,3......
    http://help.sap.com/saphelp_nw04/helpdata/en/ba/e18b1a0fc14f1faf884ae50cece51b/content.htm
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5c46ab90-0201-0010-42bd-9d0302591383
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/866ce290-0201-0010-338f-b8c3553aaa0f
    Regards
    Chilla

  • Error  Stack 1 when running external java function

    Hello,
    I defined 1 item that contains an external java program.
    When I launch the process, i receive following error on the
    Java agent listener screen :
    Thu Mar 07 10:25:10 CET 2002 Executing TST_JAVA/22 xx.yyyy.workflow.UpdateWorkflowAttribute
    Thu Mar 07 10:25:11 CET 2002 Enqueuing TST_JAVA/22 xx.yyyy.workflow.UpdateWorkflowAttribute
    Error Stack: 1
    WF_FN_ERROR (MODULE=xx.yyyy.workflow.UpdateWorkflowAttribute) (ITEMTY
    PE=TST_JAVA) (ITEMKEY=22) (ACTID=739) (FUNCMODE=RUN) (ERRMESSAGE=null)
    and the status remains deferred.
    Running the background engine does not change the status of the item. It remains deferred. Anybody has any idea of what is happening ?
    grtz,
    Chris.

    I remember rec. similar errors.
    If you are writing a simple code based on the code shown in the workflow guide, looks like you have included some statements which are invalid at run time. examine your code and try to remove all unnecessary statements. write a very simple piece of code by just inserting only the required statements and the error will vanish.
    hope this helps
    satish paul
    Hello,
    I defined 1 item that contains an external java program.
    When I launch the process, i receive following error on the
    Java agent listener screen :
    Thu Mar 07 10:25:10 CET 2002 Executing TST_JAVA/22 xx.yyyy.workflow.UpdateWorkflowAttribute
    Thu Mar 07 10:25:11 CET 2002 Enqueuing TST_JAVA/22 xx.yyyy.workflow.UpdateWorkflowAttribute
    Error Stack: 1
    WF_FN_ERROR (MODULE=xx.yyyy.workflow.UpdateWorkflowAttribute) (ITEMTY
    PE=TST_JAVA) (ITEMKEY=22) (ACTID=739) (FUNCMODE=RUN) (ERRMESSAGE=null)
    and the status remains deferred.
    Running the background engine does not change the status of the item. It remains deferred. Anybody has any idea of what is happening ?
    grtz,
    Chris.

Maybe you are looking for

  • Inspection lot for service purchase order

    Dear sap gurus, Iam Pm consultant I have created a service PR through maintenance order and i want a inspection lot to be generated when you release the service entry sheets for the Service PO. Is there any integration between inspection type to purc

  • Transferring iPhoto Library from old Mac to new Mac

    I'm trying to transfer my iPhoto library from my old mac to my new MacBook Air.  My old mac (black macbook purchased July 2008 - MacBook4,1) is running OS 10.5.8 and the OS can't be upgraded.  My iPhoto (ver 7.1.5) library needs to be prepared using

  • I can use Ipad 3g in india

    Hi, I am thinking to buy a Ipad 3g with AT&T. Can I use this Ipad in India with Airtel or Vodafone network?

  • WS_DELIVERY_UPDATE_2 is not upating line text

    I am trying to update Header and line item text using the FM WS_DELIVERY_UPDATE_2 with in the IDOC_INPUT_DELVRY. I have populated all the required prameters for line text in FM but it is not gettnig updated in delivery. Header text are getting update

  • SciTE CVS [FINISHED]

    Please see post #6 for review request -->This is easier to understand if you know SciTE. <-- I put together a PKGBUILD file for SciTE from CVS. I got it working great but with one remaining problem. There are bugs (that I filed a bug report for) wher