OSB java call out with array parameters

Hi all,
I have a java call out with array parameters, follow the firm of java method:
logBody2(String category, XmlObject headerXml, String[] level, XmlObject[] xml)
The java call out have String[] and XmlObject[] arrays in intput, my question is how I can pass these arrays of values at java call out?
Thk
L.

For array, comma-separated values should be passed. For e.g. -
If input parameter is of type String[] then passed values should be comma-separated strings like - 'Anuj','Dwivedi'
If input parameter is of type XmlObject[] then passed values should be comma-separated XmlObject like - <anuj/>,<dwivedi/>
Regards,
Anuj

Similar Messages

  • OSB - Java Call out

    Hi,
    Will there be any performace issues if we use Java CallOut in OSB.
    Edited by: 791951 on Nov 29, 2010 8:25 AM

    I had some conversation on this topic with a couple of Oracle consultants and they said there is nothing to fear performance-wise using Java Callout in OSB.
    See here http://www.javamonamour.org/2010/05/osb-and-java-callout-fierce-discussion.html for more details on the story,
    and here http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/userguide/pojo.html for more on POJOs.

  • JPublisher error in web service call out with XMLType parameters

    Hi,
    We need to create a call to a document/literal web service from PL/SQL.
    I've followed Note 555656.1 of Metalink (step by step and several times) to create it with JPublisher and it works for rpc/encoded but not for document/literal. In this case, when using XMLType elements I get the following error:
    "ORA-00932: inconsistent datatypes: expected IN Conversion failed
    ORA-06512: at line 6"
    Oracle DB is 9.2.0.5
    oc4j_extended is 10.1.2
    JPub is 10.1.0.3.0
    dbws-callout-utility 10.1.2
    Can anybody help us?

    Hi,
    I had same error and then implement your solution. But I get invalid xml error (I have header and body tags)
    How can you remove Envelope tag?

  • Java call out in OSB 10g

    in java call out in OSB, is it possilble to pass java object or java collection (like list,arraylist) as argument to the java method and during configuration at OSB proxy service is it possible to fetch the value from java object from java call out .I have tried it and i am able pass string and xml object as argument and get string type only.please guide me.

    http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/userguide/pojo.html
    "The input and return types for Java callouts are not restricted. However, any return types other than primitives, Strings, or XmlObjects can only be passed (unmodified) to other Java callouts. See Java Content in the body Variable for more information about storing and passing Java objects in the pipeline."

  • Accessing the SOAP fault received by OSB Service Call Out

    I have a proxy service with multiple OSB service call outs, which access a backend server via SOAP.
    If the backend server returns a fault, the proxy service' exception handling kicks in and the exception handling flow is triggered.
    That flow provides a variable 'fault', which holds the OSB fault information with the BEA fault code.
    The variable holding the service call out response (to which I assume the backend servers fault is written) is not available in the exception handling flow.
    I have multiple service call outs in my flow, all writing their response to different variables.
    Is there any way to access the fault received by the service call out? Is there any variable available in the exception flow, to which that information is written?

    Is there any way to access the fault received by the service call out?Please refer -
    Re: Error Handling OSB
    Regards,
    Anuj

  • Java Call out - Error

    Hi,
    I'm trying to call a Java Class method from BPEL and the Java Class is packaged into a JAR and copied the same into SCA-INF/lib folder of the SOA composite application.
    My Java Class is:
    package uk.co.utilities;
    public class Utils {
    public Utils() {
    public String sayHello(String Value) throws Exception{
    String result = "";
    try{
    result = "Hello !!!" + Value;
    }catch(Exception e){
    e.printStackTrace();
    return result;
    The BPEL snippet code for the Java Call out is:
    <bpelx:exec import="uk.co.utilities"/>
    <bpelx:exec name="javaInvoke" version="1.5" language="java">
    <![CDATA[Utils testUtils = new Utils();     
    String testResult = testUtils.sayHello("User");
    setVariableData("TempResult",testResult);]]>
    </bpelx:exec>
    I have tried to build the project,but getting the following error:
    Error(21,36): Failed to compile bpel generated classes.
    failure to compile the generated BPEL classes for BPEL process "bpelJavaMethod" of composite "default/prjJAVAMethod!1.0"
    The class path setting is incorrect.
    Ensure that the class path is set correctly. If this happens on the server side, verify that the custom classes or jars which this BPEL process is depending on are deployed correctly. Also verify that the run time is using the same release/version.
    It seems that the BPEL couldn't find the JAR method,but i have copied the JAR into SCA-INF/lib folder and added it to the " libraries and classpath " of the project.
    Please do help me.
    Thanks,
    Sri.

    Hi Sri,
    Can you check this out, will be helpful for you to find out where is the issue.
    http://yatanveersingh.blogspot.com/2011/08/how-to-call-java-method-inside-bpel.html
    -Yatan

  • Call procedure with named parameters

    Call procedure with positional parameters works, but with named parameters gives an ORA-907.
    This post seems similar: Re: Error with report - pkg and bind var
    Run as a script:
    set echo on
    call dbms_stats.delete_table_stats ('ZZZMIG', 'CHAINED_ROWS', cascade_columns=>true, no_invalidate=>false);
    call dbms_stats.delete_table_stats ('ZZZMIG', 'CHAINED_ROWS');
    begin dbms_stats.delete_table_stats ('ZZZMIG', 'CHAINED_ROWS', cascade_columns=>true, no_invalidate=>false); end;
    gives:
    set echo on
    call dbms_stats.delete_table_stats ('ZZZMIG', 'CHAINED_ROWS', cascade_columns=>true, no_invalidate=>false)
    Error starting at line 2 in command:
    call dbms_stats.delete_table_stats ('ZZZMIG', 'CHAINED_ROWS', cascade_columns=>true, no_invalidate=>false)
    Error report:
    SQL Error: ORA-00907: missing right parenthesis
    00907. 00000 - "missing right parenthesis"
    *Cause:
    *Action:
    call dbms_stats.delete_table_stats ('ZZZMIG', 'CHAINED_ROWS')
    call dbms_stats.delete_table_stats succeeded.
    begin dbms_stats.delete_table_stats ('ZZZMIG', 'CHAINED_ROWS', cascade_columns=>true, no_invalidate=>false); end;
    anonymous block completed
    I like the idea of using call, because the procedure name appears in the feedback - useful in longer scripts.
    I'm using SQL Developer Version 1.5.1 Build MAIN-5440
    on Windows XP SP3
    with database EE 10.2.0.3

    CALL is a SQL command which executes a routine
    (procedure/function)
    http://download-uk.oracle.com/docs/cd/B19306_01/server
    .102/b14200/statements_4008.htm
    whereas EXECUTE is a SQL*Plus command which executes
    a single PL/SQL statement
    http://download-uk.oracle.com/docs/cd/B19306_01/server
    .102/b14357/ch12022.htm#i2697931
    Message was edited by:
    Jens PetersenThank you very much, esp. for the links!

  • OSB Service Call Out without soap envelope

    Can we do a service call out without any soap envelope wrapped.
    Example if my message is <Test>test</Test>
    it should not wrap it like
    <soapEnv:Body xmlns:soapEnv="http://schemas.xmlsoap.org/soap/envelope/"><Test>test</Test></soapEnv:Body>in request part of service call out.
    My calling service is WSDL based proxy and called service is ANY XML Proxy Service

    indeed, I have done my tests and it proved the same: whatever you post to a AnyXML service, OSB will first wrap it into a SOAP Envelope / Body and then pass it to the Message Flow.
    After all it makes sense, the Interface of a Proxy Service has nothing to do with its Implementation....
    a SOAP proxy service is implemented exactly like a AnyXML proxy service as far as the $body is concerned (maybe I have said an enormous BS!)
    Only $operation would not be populated - I would expect. Correct me if I am wrong.

  • Problems with Array-Parameters when using Document-Binding

    Hi,
    I use the following environment:
    JDeveloper 11.1.1.3.0
    WLS 10.3.3.0
    I created a small EJB (2.1), containing a simple method, which is using arrays as parameters:
    public String doTestArray(String[] aStringArray, int[] aIntArray)
    throws RemoteException;
    I exposed this EJB as a Webservice using JDev's Webservice wizard. I choosed Document/Wrapped-Binding. WSDL and mapping file are being generated. Made an EAR-Deployment-Profile and deployed the application to Integrated-WLS.
    I tried to test the Webservice with the WLS integrated test client, which is generating the following request:
    <doTestArrayElement xmlns="http://model/types/">
    <!--Zero or more repetitions:-->
    <arrayOfString_1>string</arrayOfString_1>
    <!--Zero or more repetitions:-->
    <arrayOfint_2>3</arrayOfint_2>
    </doTestArrayElement>
    Unfortunately, the invokation fails. WLS returns
    weblogic.wsee.codec.CodecException: Failed to decode message
    at weblogic.wsee.codec.soap11.SoapCodec.decode(SoapCodec.java:188)
    at weblogic.wsee.ws.dispatch.server.CodecHandler.decode(CodecHandler.java:139)
    That only happens in methods, which use array-parameters. Simple parameters are no problem.
    However, when I use RPC/Encoded as Webservice-Binding, everything seems to be fine.
    Does WLS have problems in general using array-parameters and Document-Binding?
    Any help would be appreciated.
    Thanks,
    Stefan

    Hi Josko,
    Where do you have this problem 3.5 or 7.0 BexAnalyzer.
    When ever heirarchy icons are created in BEx, respective hyperlink is assigned to each of them, Make sure that you dont manipulate with them,,
    If you still have problem then create OSS message.
    Regards,
    Vinay

  • Calling procedure with 2 parameters from a dynamic link

    I have just another question-
    I have a procedure testing_del_archive which is being called with 2 parameters...from a dynamic link in my SQL Query.
    The following is my code....
    SELECT re.report_exec_id, re.exec_userid,
    NVL(re.batch_exec_date, re.begin_date) report_date,
    re.rows_returned,
    re.status, re.error,
    f_file_url(re.filename) file_url,
    re.comments,
    ''Archive''archive
    FROM metadev.report_execution re, metadev.report r
    WHERE re.report_id = r.report_id
    AND r.spec_number = :v_spec
    AND re.status <> 'DELETED'
    AND re.exec_userid like (DECODE(:v_user_filter,'ALL','%',:v_user_filter))
    ORDER BY begin_date DESC
    The first parameter is the value in the execution id field and the second argument is hardcoded "Archived"...
    IT GIVES AN ERROR....
    Do you guys know where I am going wrong...

    You missed the ampersand symbol in between the parameters.
    This should be
    ''Archive''archive
    instead of
    ''Archive''archive

  • OSB : Service Call out

    Hi,
    Can anyone tell me what is the basic difference between configure SOAP body and configure PAYLOAD in service call out option? Any examples / use case?
    Thanks,
    Bhaskar
    [I will mark the question as answered, once got the reply.]

    Hi Bhaskar,
    With Configure SOAP Body you use $body directly, with Configure Payload you can use different variables... Also, Configure Payload does NOT support SOAP-RPC encoded... I've never came across an use case where I had to use payload...
    There is a good table explaining what to use when here...
    http://docs.oracle.com/cd/E28280_01/dev.1111/e15866/ui_ref.htm#CACGDEAC
    Also, check these...
    http://docs.oracle.com/cd/E28280_01/admin.1111/e15867/proxy_actions.htm#OSBAG1124
    http://docs.oracle.com/cd/E28280_01/dev.1111/e15866/ui_ref.htm#i1291067
    Cheers,
    Vlad

  • Rhino calling overloaded Java methods with Array parameters

    Has anyone had any problems writing JavaScript code that calls overloaded Java methods?
    I have two Java defined methods that differ in the arguments, one takes a string the other takes an array of strings. The problem is calling Java methods within the JavaScript always calls the method with the String argument...
    /* Java Code Here */
    public void function(String s) { /* Function A */ }
    public void function(String[] sa) { /* Function B */ }
    /* JavaScript  Code Here */
    param = java.lang.reflect.Array.newInstance(java.lang.String, 2);
    param[0] = "test";
    param[1] = "test2";
    stringParam = "test3";
    /* Both function calls below end up calling the Function A from above */
    function(param);
    function(stringParam);PS...in case you're not familiar with Rhino,
    It is a mozilla package that embeds a JavaScript interpreter within a Java application...
    http://www.mozilla.org/rhino/

    haha...I can't even find my other thread :(
    Sorry about the double post...I'll go look for my other thread now

  • OSB 3.0(ALSB 3.0) .Java Call out issue

    Hi,
    I have written a Java code that invokes a stored Procedure. I want to use this piece of code in my ALSB 3.0 through Proxy Service Action(Java Callout).This code works fins when I run it as a Standalone Program.
    But when I use this in Java Callout I face an issue.The code runs smoothly till the creation of the Callable Statement.*But after that the Statemant object turns out to be null.*
    I do not see how calling a java method from ALSB 3.) could cause this issue.
    Please help if any one is having any idea on this.
    Edited by: user9980672 on Apr 13, 2009 10:13 PM

    No, it does not take any Input as request.I try to get a standandrad method invocation.
    The code
    import java.sql.CallableStatement;
    import javax.sql.DataSource;
    import java.sql.Connection;
    import javax.naming.InitialContext;
    import javax.naming.Context;
    import java.util.Properties;
    public class TestJavaCallout {
         Context ctx=null;
         DataSource ds=null;
         Connection conn=null;
         CallableStatement stmt=null;
         String name="Test";
         public void callGenevaStoredProcedure()
              System.out.println("Test start");
              try
                   Class.forName("weblogic.jndi.WLInitialContextFactory");
                   Properties prop = new Properties();
              prop.setProperty(Context.INITIAL_CONTEXT_FACTORY,
              "weblogic.jndi.WLInitialContextFactory");
              prop.setProperty(Context.PROVIDER_URL, "t3://localhost:7051");
              prop.put(Context.SECURITY_PRINCIPAL, "weblogic");
              prop.put(Context.SECURITY_CREDENTIALS, "weblogic");
              ctx = new InitialContext(prop);
              ds=(DataSource)ctx.lookup(name);
              conn=ds.getConnection();
              stmt=conn.prepareCall("call TestCall()");
              if (null!=stmt)//Here the stmt is NULL          {
                   stmt.execute();
              System.out.println("Stmt is not null");}
              else
                   System.out.println("Stmt is null");
              catch(Exception e){
                   System.out.println("ErrorIn Catch121::"+e.getMessage());
                   e.printStackTrace();
    public class TestJavaCalloutCall
    public static void call()
    new TestJavaCallout().callGenevaStoredProcedure();
    Edited by: user9980672 on Apr 13, 2009 11:19 PM

  • Calling report with no parameters from a form should report be a JSP file?

    Hi,
    I'm completely new to the Oracle environment and am having a few beginner problems all I want to find out is how to call a report from a form. I know this question has been asked before but I can't work it out from the answers because people seem to keep talking about rdf files:
    I am trying to call the report with the following code:
    Declare
         report_id REPORT_OBJECT;
         v_rep varchar2(100);
         rep_status varchar2(20);
    Begin
         report_id:= FIND_REPORT_OBJECT('EmployeeRep');
         v_rep := RUN_REPORT_OBJECT(report_id);
    END;
    My report is called 'EmployeeRep' but it saves it as a JSP file and there is no option to save as an rdf as is mentioned in other posts. I can understand the environments confusion because there is no directory information with the find_report_object command. Does the report have to be stored in a certain directory.
    All I have done with the report is created it from the emp table of the sample Scott database. Any help is appreciated and nothing is too obvious as I say I'm completely new to this.
    Thanks
    Dan

    Try to pinpoint what is going wrong:
    1. Run the report stand alone (from Reports Builder). If that doesn't work, then it won't work calling it from Forms either.
    2. Check if anything has run at all, or if there are report error messages with:
    http://localhost:port/reports/rwservlet/showjobs?
    For a standalone Report Server use:
    http://localhost:port/reports/rwservlet/showjobs?server=rep_server_name
    3. If it does work, call it from Forms. Is the report output file created (e.g. in the cache directory if destype=cache)? In your code you have run_report_object, but you won't see any output on your screen. To see the output add web.show_document(...) to your report. There are many examples in this forum if you search for run_report_object.

  • How to add external library in class path folder for use in Java call-out?

    Hi,
    I am working with Java callout component in OSB 12c using Jdeveloper.
    Thing is Jar what i am using to perform conversion of json to xml that using external libraries.
    When i have give reference of my project jar to java callout it doen't found external libraries.
    Could you please tell me how to add external libraries in class path folder or How to use to add it through web-logic server ?
    Thanks,
    Pavan

    Hi,
    Thanks, I have solved issue.
    We can add on following path in windows pc:
    C:\Users\your_usename\AppData\Roaming\JDeveloper\system12.1.3.0.41.140521.1008\DefaultDomain\lib
    One you add your external lib here then do restart weblogic server instance.
    Now, you have that external lib or jar in use.
    Cool!

Maybe you are looking for