Issue with class loading -  Java concurrent Program

Hi ,
We are facing a strange issue for one of our customer.
Scenario :
We have a Java Concurrent Program (A.java ) which refers another Java class (B.java) , we modified the file B.java for a fix and created a patch. after applying the patch and bouncing the apache ,we found that B.java is loaded the old version of the class file.
We asked them to restart the concurrent manager and related services, still we see that old version of B.java is loaded. (confirmed by adding code throwing exception - throw new Exception from a specific line and found that its not getting thrown at run-time)
Any clue on this?.
Thanks
Joseph George

Deployed this file both tier - Database server tier and Application server tier.
I have face same issue, Concurrent program not picking file application server tier. its picking file from database server tier.
Thanks, Avaneesh

Similar Messages

  • Performance issues with class loader on Windows server

    We are observing some performance issues in our application. We are Using weblogic 11g with Java6 on a windows 2003 server
    The thread dumps indicate many threads are waiting in queue for the native file methods:
    "[ACTIVE] ExecuteThread: '106' for queue: 'weblogic.kernel.Default (self-tuning)'" RUNNABLE
         java.io.WinNTFileSystem.getBooleanAttributes(Native Method)
         java.io.File.exists(Unknown Source)
         weblogic.utils.classloaders.ClasspathClassFinder.getFileSource(ClasspathClassFinder.java:398)
         weblogic.utils.classloaders.ClasspathClassFinder.getSourcesInternal(ClasspathClassFinder.java:347)
         weblogic.utils.classloaders.ClasspathClassFinder.getSource(ClasspathClassFinder.java:316)
         weblogic.application.io.ManifestFinder.getSource(ManifestFinder.java:75)
         weblogic.utils.classloaders.MultiClassFinder.getSource(MultiClassFinder.java:67)
         weblogic.application.utils.CompositeWebAppFinder.getSource(CompositeWebAppFinder.java:71)
         weblogic.utils.classloaders.MultiClassFinder.getSource(MultiClassFinder.java:67)
         weblogic.utils.classloaders.MultiClassFinder.getSource(MultiClassFinder.java:67)
         weblogic.utils.classloaders.CodeGenClassFinder.getSource(CodeGenClassFinder.java:33)
         weblogic.utils.classloaders.GenericClassLoader.findResource(GenericClassLoader.java:210)
         weblogic.utils.classloaders.GenericClassLoader.getResourceInternal(GenericClassLoader.java:160)
         weblogic.utils.classloaders.GenericClassLoader.getResource(GenericClassLoader.java:182)
         java.lang.ClassLoader.getResourceAsStream(Unknown Source)
         javax.xml.parsers.SecuritySupport$4.run(Unknown Source)
         java.security.AccessController.doPrivileged(Native Method)
         javax.xml.parsers.SecuritySupport.getResourceAsStream(Unknown Source)
         javax.xml.parsers.FactoryFinder.findJarServiceProvider(Unknown Source)
         javax.xml.parsers.FactoryFinder.find(Unknown Source)
         javax.xml.parsers.DocumentBuilderFactory.newInstance(Unknown Source)
         org.ajax4jsf.context.ResponseWriterContentHandler.<init>(ResponseWriterContentHandler.java:48)
         org.ajax4jsf.context.ViewResources$HeadResponseWriter.<init>(ViewResources.java:259)
         org.ajax4jsf.context.ViewResources.processHeadResources(ViewResources.java:445)
         org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:193)
         org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
         org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
    On googling this seems to be an issue with java file handling on windows servers and I couldn't find a solution yet. Any recommendation or pointer is appreciated

    Hi shubhu,
    I just analyzed your partial Thread Dump data, the problem is that the ajax4jsf framework ResponseWriterContentHandler triggers internally a new instance of the DocumentBuilderFactory; every time; triggering heavy IO contention because of Class loader / JAR file search operations.
    Too many of these IO operations under heavy load will create excessive contention and severe performance degradation; regardless of the OS you are running your JVM on.
    Please review the link below and see if this is related to your problem.. This is a known issue in JBOSS JIRA when using RichFaces / ajaxJSF.
    https://issues.jboss.org/browse/JBPAPP-6166
    Regards,
    P-H
    http://javaeesupportpatterns.blogspot.com/

  • PL/SQL log messages are not printing from Java concurrent program

    Hi,
    I have a strange issue while submitting the Java concurrent program through PL/SQL.
    I have a PL/SQL concurrent program which will invoke the Java concurrent program inside the package by use of "FND_GLOBAL.SUBMIT_REQUEST". It worked and submitted successfully. From that Java concurrent program we are calling some other PL/SQL packages and printing some log messages over there. But problem here is the request is only printing the Java log messages in view log but not the PL/SQL log messages.  But if I submit the Java concurrent program directly from SRS form at that it is printing both Java and PL/SQL log messages.
    I am just wondering how the log messages has not printed. Please provide your inputs to solve this problem.
    Thanks
    Suriya

    I'm adding log messages in the package body , but these messages are not printing after completion of concurrent prog.
    Any suggestions.
    FND_FILE.PUT_LINE(FND_FILE.LOG,'Data Test :');Do you have COMMIT in your code?
    https://forums.oracle.com/forums/search.jspa?threadID=&q=%27FND_FILE.PUT_LINE%27+AND+commit&objID=c3&dateRange=all&userID=&numResults=15&rankBy=10001
    Thanks,
    Hussein

  • How to integrate a class with template.java - Java Concurrent Program. 11i

    Hello, I have a java class I got from a vendor. This java class needs to run through as concurrent program. As per metalink note *How To Create a Java Concurrent Program? [ID 827563.1]* it says that, we must require template.java to wrap around the custom class. I have done that in the following java code. However, being a new java guy, I really dont know how to connect these two classes and constructor.
    Any suggestions about how do I make these classes work in order to run from a concurrent program?
    package oracle.apps.fnd.cp.request;
    import oracle.apps.fnd.util.*;
    import oracle.apps.fnd.cp.request.*;
    import java.io.BufferedReader;
    import java.io.IOException;
    import javax.net.ssl.SSLSocketFactory;
    public class cyberBatch implements JavaConcurrentProgram {
        // Optionally provide class constructor without any arguments.
        // If you provide any arguments to the class constructor then while running the program will fail.
        public void runProgram(CpContext pCpContext) {
            ReqCompletion lRC = pCpContext.getReqCompletion();
            String CompletionText = "";
        // This class is to upload files but can be expanded to download files also.
        public class SSLFileTransfer {
            Properties props =
                new Properties(); // stores properties from property file
       * SSLFileTransfer(): constructor
            public SSLFileTransfer() {
       * init(): initialization (load property file)
          * @param propsFile          properties needed for file transfer
            public void init(String propsFile) {
                try {
                    props.load(new BufferedInputStream(new FileInputStream(new File(propsFile))));
                } catch (Exception e) {
                    e.printStackTrace();
                    System.exit(-1);
       * usage()
            public static void usage() {
                System.out.println("USAGE: java SSLFileTransfer <full path property file name>");
                System.exit(-1);
       * getFactory(): get factory for authentication
          * @throws IOException     if exception occurs
            private SSLSocketFactory getFactory() throws IOException {
                try {
                    SSLContext ctx;
                    KeyManagerFactory kmf;
                    KeyStore ks, ks1;
                    char[] passphrase =
                        props.getProperty("passPhrase").toCharArray();
                    ctx = SSLContext.getInstance("TLS");
                    kmf = KeyManagerFactory.getInstance("SunX509");
                    ks = KeyStore.getInstance("PKCS12", "BC");
                    ks1 = KeyStore.getInstance("JKS");
                    ks.load(new FileInputStream(props.getProperty("key")),
                            passphrase);
                    ks1.load(new FileInputStream(props.getProperty("keyStore")),
                             passphrase);
                    kmf.init(ks, passphrase);
                    TrustManagerFactory tmf =
                        TrustManagerFactory.getInstance("SunX509");
                    tmf.init(ks1);
                    ctx.init(kmf.getKeyManagers(), tmf.getTrustManagers(), null);
                    return ctx.getSocketFactory();
                } catch (Exception e) {
                    e.printStackTrace();
                    throw new IOException(e.getMessage());
       * getHost(): Get host from property file
            private String getHost() {
                return props.getProperty("host", "localhost");
       * getPort(): Get port from property file
            private int getPort() {
                return Integer.parseInt(props.getProperty("port"));
       * sendRequest(): Send request (file) to the server
          * @param out          stream to send the data to the server
          * @throws Exception     if an error occurs.
            private void sendRequest(PrintWriter out) throws Exception {
                String path = props.getProperty("path");
                out.println("POST " + path + " HTTP/1.0");
                final String BOUNDARY = "7d03135102b8";
                out.println("Content-Type: multipart/form-data; boundary=" +
                            BOUNDARY);
                String uploadFile = props.getProperty("uploadFile");
                String authString =
                    props.getProperty("bcUserName") + ":" + props.getProperty("bcPassword");
                String encodedAuthString =
                    "Basic " + new sun.misc.BASE64Encoder().encode(authString.getBytes());
                out.println("Authorization: " + encodedAuthString);
                final String CRLF = "\r\n";
                StringBuffer sbuf = new StringBuffer();
                sbuf.append("--" + BOUNDARY + CRLF);
                sbuf.append("Content-Disposition: form-data; name=\"upfile\"; filename=\"" +
                            uploadFile + "\"" + CRLF);
                sbuf.append("Content-Type: text/plain" + CRLF + CRLF);
                FileReader fi = new FileReader(uploadFile);
                char[] buf = new char[1024000];
                int cnt = fi.read(buf);
                sbuf.append(buf, 0, cnt);
                sbuf.append(CRLF);
                sbuf.append("--" + BOUNDARY + "--" + CRLF);
                int sz = sbuf.length();
                out.println("Content-Length: " + sz);
                out.println();
                out.println(sbuf);
                out.flush();
                // Make sure there were no surprises
                if (out.checkError())
                    System.out.println("SSLFileTransfer: java.io.PrintWriter error");
       * readResponse(): reads response from the server
          * @param in          stream to get the data from the server
          * @throws Exception     if an error occurs.
            private void readResponse(BufferedReader in) throws Exception {
                boolean successful = false;
                String inputLine;
                while ((inputLine = in.readLine()) != null) {
                    if (inputLine.startsWith("HTTP") &&
                        inputLine.indexOf("200") >= 0)
                        successful = true;
                    System.out.println(inputLine);
                System.out.println("UPLOAD FILE " +
                                   (successful ? "SUCCESSFUL" : "FAILED") +
                                   "!!!\n");
       * upload(): upload file to server
          * @throws Exception     if an error occurs.
            public void upload() throws Exception {
                try {
                    SSLSocketFactory factory = getFactory();
                    SSLSocket socket =
                        (SSLSocket)factory.createSocket(getHost(), getPort());
                    PrintWriter out =
                        new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())));
                    BufferedReader in =
                        new BufferedReader(new InputStreamReader(socket.getInputStream()));
                    socket.startHandshake();
                    sendRequest(out);
                    readResponse(in);
                    out.close();
                    in.close();
                    socket.close();
                } catch (Exception e) {
                    e.printStackTrace();
                    throw e;
       * main(): main method to start file transfer
          * @param args          command line arguments (property file, see usage())
          * @throws Exception     if an error occurs.
            public static void main(String[] args) throws Exception {
                if (args == null || args.length != 1)
                    usage();
                SSLFileTransfer fileXfer = new SSLFileTransfer();
                fileXfer.init(args[0]);
                fileXfer.upload();
        lRC.setCompletion(ReqCompletion.NORMAL,CompletionText) ;
    }Thanks,
    R

    I believe the OP is aware of this :) -- Re: Oracle 11i - 11.5.10.2 - and Java
    Thanks,
    Hussein

  • Java Concurrent Program not able to access class present under CLASSPATH

    We are creating a Java Concurrent Program which is using third party web service. The client classes for the webservice have been placed in a jar file. This jar file has been added to the SYSTEM CLASSPATH. When we try to run the concurrent program it fails with a ClassNotFoundException giving the name of the webervice client. The webservice clients are being used by other java classes from OAF as well. From there it is easily accessible.
    The request is being submit using a custom responsibility called RAC Quoting Admin. The user logged in has the corresponding responsibiility. The request is being submitted as a single request and there are no parameters being passed to the request.
    Here are the steps that we used to create the Oracle Concurrent Program:
    1. First of all we wrote a Java class that implements oracle.apps.fnd.cp.request.JavaConcurrentProgram
    rac.oracle.apps.qot.quote.batch.SFDCInterface implements JavaConcurrentProgram
    2. The concurrent program has a method called public void runProgram(CpContext pCpContext) which has the logic to be executed.
    3. Then we create a concurrent program executable
    Path: Concurrent -> Program -> Executable.
    Executable: RAC Quoting SFDC Sync Executable
    Short Name: RacQotSFDCSyncEx
    Application: Quoting
    Description: RAC Quoting SFDC Synchronization batch program
    Execution Method: Java Concurrent Program
    Execution File Name : SFDCInterface
    Execution File Path : rac.oracle.apps.qot.quote.batch
    4. Create the Concurrent Program
    Path: Concurrent -> Program -> Define
    Program: RAC Quoting SFDC Sync CP
    Short Name: RACQOTSFDCSYNCCP
    Application: Quoting
    Description: RAC Quoting SFDC batch Synchronization Concurrent Program
    Executable: Name - RacQotSFDCSyncEx; Method - Java Concurrent Program
    5. This concurrent program is registered with a custom responsibility from which we run this concurrent program.

    Please post the details of the application release, database version and OS.
    We are creating a Java Concurrent Program which is using third party web service. The client classes for the webservice have been placed in a jar file. This jar file has been added to the SYSTEM CLASSPATH. When we try to run the concurrent program it fails with a ClassNotFoundException giving the name of the webervice client. The webservice clients are being used by other java classes from OAF as well. From there it is easily accessible.Please post the contents of the concurrent request log file here. You may also enable trace and submit the request again and post the contents of the log file.
    The request is being submit using a custom responsibility called RAC Quoting Admin. The user logged in has the corresponding responsibiility. The request is being submitted as a single request and there are no parameters being passed to the request.
    Here are the steps that we used to create the Oracle Concurrent Program:
    1. First of all we wrote a Java class that implements oracle.apps.fnd.cp.request.JavaConcurrentProgram
    rac.oracle.apps.qot.quote.batch.SFDCInterface implements JavaConcurrentProgram
    2. The concurrent program has a method called public void runProgram(CpContext pCpContext) which has the logic to be executed.
    3. Then we create a concurrent program executable
    Path: Concurrent -> Program -> Executable.
    Executable: RAC Quoting SFDC Sync Executable
    Short Name: RacQotSFDCSyncEx
    Application: Quoting
    Description: RAC Quoting SFDC Synchronization batch program
    Execution Method: Java Concurrent Program
    Execution File Name : SFDCInterface
    Execution File Path : rac.oracle.apps.qot.quote.batch
    4. Create the Concurrent Program
    Path: Concurrent -> Program -> Define
    Program: RAC Quoting SFDC Sync CP
    Short Name: RACQOTSFDCSYNCCP
    Application: Quoting
    Description: RAC Quoting SFDC batch Synchronization Concurrent Program
    Executable: Name - RacQotSFDCSyncEx; Method - Java Concurrent Program
    5. This concurrent program is registered with a custom responsibility from which we run this concurrent program.Have you completed all the steps as per MOS docs? -- https://forums.oracle.com/forums/search.jspa?threadID=&q=Java+AND+Concurrent+AND+Program&objID=c3&dateRange=all&userID=&numResults=15&rankBy=10001
    Thanks,
    Hussein

  • Java concurrent program class not found Exception in oracle apps

    Hi all,
    I done java concurrent program as per steps given by oracle.I am getting class not exception when i am submitting that concurrent program.
    My java file is under $JAVA_TOP specified folder.Those path from $JAVA_TOP i set in apps (System Adminstrator -->Executable) Execution file path.Can any body have faced this issue?
    Thanks

    Also go through the metalink Note:250964.1
    It goes through the complete process of creating a sample java conc process and implementing it.
    --Shiv                                                                                                                                                                                                                                                                                                                   

  • Class Not found exception in java concurrent program

    Hi All,
    I done java concurrent program as per steps given by oracle.I am getting class not exception when i am submitting that concurrent program.Can any body have faced this issue?
    Thanks
    JK

    Also go through the metalink Note:250964.1
    It goes through the complete process of creating a sample java conc process and implementing it.
    --Shiv                                                                                                                                                                                                                                                                                                                   

  • Generation .class file  for Java Concurrent Program

    Hi
    Below if my sample java concurrent program code and registered concurrent program
    package oracle.apps.sample;
    import oracle.apps.fnd.cp.request.*;
    public class Hello implements JavaConcurrentProgram {
    public static final String RCS_ID = "$Header$";
    public void runProgram(CpContext ctx) {
    ctx.getLogFile().writeln("-- Hello World! --", 0);
    ctx.getOutFile().writeln("-- Hello World! --");
    ctx.getReqCompletion().setCompletion(ReqCompletion.NORMAL, "");
    Created a sample directory under $JAVA_TOP: $ mkdir $JAVA_TOPoracle/apps/fnd/cp/sample
    Copied Hello.java into $JAVA_TOP/oracle/apps/fnd/cp/sample and ran below command to compile
    $ cp $HOME/Hello.java $JAVA_TOP/oracle/apps/fnd/cp/sample
    But getting error
    javac: file not found: /oracle/apps/fnd/cp/sample
    Usage: javac <options> <source files>
    use -help for a list of possible options
    Please suggest what was issue and is there any option to generate class file in J developer in local (Windows) instead of doing on application server if yes what are steps to be followed to generate class in windows
    Thanks
    Arjun

    Please post the details of the application release, database version and OS.
    But getting error
    javac: file not found: /oracle/apps/fnd/cp/sample
    Usage: javac <options> <source files>
    use -help for a list of possible optionsHow do you get this error?
    Thanks,
    Hussein

  • Issue in Java concurrent program for Digital Signature Stamping

    Hi All,
    Im calling a Java concurrent program which does digital signature stamping on the PDF report generated.Program able to able to read the PDF file as input and also digital signature stored as file in the application but
    ends in error in create signature method , need help in this regard.
    Error:
    Parameter 0 is Request id of with out Digital signature file
    Parameter 1 is employee id of approver
    Parameter:0:99203256
    Parameter:1:1414603
    $$$$ start query fileinfo with callable statment
    programName>>>>>>>>BTPOPORPXML
    $$$$ Without digital Signature file Name $$$
    $/inst_top/finprod/apps/FINPROD_CPNQERPAAPZP10/logs/appl/conc/out/BTPOPORPXML_99203256_1.PDF
    PFX File Reading Start
    PFX File Reading Ends
    PFX File size is: 6460 Byte size is: 6460
    Elements present
    java.lang.NullPointerException
    at
    com.lowagie.text.pdf.PdfSignatureAppearance.getAppearance
    (Unknown Source)
    at
    com.lowagie.text.pdf.PdfSignatureAppearance.preClose
    (Unknown Source)
    at
    com.lowagie.text.pdf.PdfSignatureAppearance.preClose
    (Unknown Source)
    at com.lowagie.text.pdf.PdfStamper.close(Unknown
    Source)
    at
    btvl.oracle.apps.po.digsig.BTVLDigSign.runProgram
    (BTVLDigSign.java:151)
    at oracle.apps.fnd.cp.request.Run.main
    (Run.java:157)
    Edited by: 999033 on May 16, 2013 7:20 PM

    Hi Charls,
    I have successfully implemented at our end in 11i. Pl.try at your end.
    v_request_id := FND_REQUEST.SUBMIT_REQUEST (passed your arguments... );
    COMMIT;
    IF NVL( v_request_id , 0 ) = 0 THEN
    DBMS_OUTPUT.PUT_LINE( 'Item Assignment to Organization Program Not Submitted');
    p_status := 'FAILURE' ;
    p_err_msg := 'ERROR RAISED AFTER SUBMITTING THE IMPORT ITEM ORG.ASSIGNMENT CONCURRENT REQUEST ... ' ;          
    ELSE
    v_finished := FND_CONCURRENT.WAIT_FOR_REQUEST
    request_id => v_request_id,
    interval => 0,
    max_wait => 0,
    phase => v_phase,
    status => v_status,
    dev_phase => v_request_phase,
    dev_status => v_request_status,
    message => v_message
    LOOP
    EXIT WHEN ( UPPER(v_request_phase) = 'COMPLETE' OR v_phase = 'C');
    END LOOP;
    HTH                    
    Sanjay

  • Java Concurrent Program .class file location

    Hi frnds,
    I need to know the .class file location of a java concurrent prog. I know the filename from concurrent program executables and my concurrent program filepath is oracle.apps.xxogl.f04.cp.file. But I dont know where the exact location of the file is. pls help me.
    I searched for the same and found the following article in many places which doesnt seem to help me much.
    http://geektalkin.blogspot.com/2008/03/oracle-apps-java-concurrent-program.html
    pls help. thanks in advance.
    Lisan

    Hi;
    pls file can be found like
    /apps_st/appl/bom/12.0.0/patch/115/sql/
    Contains SQL*Plus scripts used to upgrade data, and .pkh, .pkb, and .pls scripts to create PL /SQL stored procedures.
    Regard
    Helios

  • Java Concurrent Program issue

    Hello,
    I am fairly new the Java Concurrent Programs concept. I was just trying a simple Hello World example but I cannot seem to run it from the operating system. Here is my Hello World java program I created using Jdeveloper:
    package oracle.apps.fnd.cp.request;
    public class Hello implements JavaConcurrentProgram {
    public static final String RCS_ID = "$Header$";
    public void runProgram(CpContext ctx) {
    ctx.getLogFile().writeln("-- Hello World! --", 0);
    ctx.getOutFile().writeln("-- Hello World! --");
    ctx.getReqCompletion().setCompletion(ReqCompletion.NORMAL, "");
    It compiles fine in Jdev generating the class file. Here is what I did :
    1) Created directory under $JAVA_TOP as follows :
    mkdir $JAVA_TOP/oracle/apps/fnd/cp/sample
    2) moved the Hello.java file there under sample directory
    3) compiled java file using avac $JAVA_TOP/oracle/apps/fnd/cp/sample/Hello.java ( It compiles fine generating the class file )
    4) Now I wanted to test running it : I tried using jre command first as I saw in other posts but this is not working :
    jre -Ddbcfile=$FND_TOP/secure/k021kp-6180_r115dev1.dbc -Drequest.outfile=/export/home/sqadri/outfile oracle.apps.fnd.cp.request.Run oracle.apps.fnd.cp.sample.Hello
    Error :
    ksh: jre: not found
    Then I tried using the other way I saw on posts which is using the java command :
    java -cp $AF_CLASSPATH -Ddbcfile=$FND_TOP/secure/k021kp-6180_r115dev1.dbc -Drequest.outfile=/export/home/sqadri/outfile oracle.apps.fnd.cp.request.Run oracle.apps.fnd.cp.sample.Hello
    This gives me the following error :
    java.lang.NoClassDefFoundError: oracle/apps/fnd/cp/sample/Hello (wrong name: oracle/apps/fnd/cp/request/Hello)
    at java.lang.ClassLoader.defineClass0(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:141)
    at oracle.apps.fnd.cp.request.Run.main(Run.java:157)
    Can anyone tell me what I am doing wrong ? I have tried everything even tried ftp the class file from my local but I get the same error. Any help would be appreciated.
    Thanks

    Ajay,
    Yes you are right. I did not register my java program yet in the concurrent programs.
    I thought I could test it out from the operating system command line before registering it. But looking at your document you sent me it seems I have to do all the steps i.e. define concurrent program etc before I can test it from the operating system. If that's the case then what's the use of trying to test it via operating system using
    java -cp $AF_CLASSPATH -Ddbcfile=$FND_TOP/secure/k021kp-6180_r115dev1.dbc -Drequest.outfile=/export/home/sqadri/outfile oracle.apps.fnd.cp.request.Run oracle.apps.fnd.cp.sample.Hello
    Thanks
    Syed

  • .class file location of a java concurrent program

    Hi frnds,
    I need to know the .class file location of a java concurrent prog. I know the filename from concurrent program executables and my concurrent program filepath is oracle.apps.xxogl.f04.cp.file. But I dont know where the exact location of the file is. pls help me.
    I searched for the same and found the following article in many places which doesnt seem to help me much.
    http://geektalkin.blogspot.com/2008/03/oracle-apps-java-concurrent-program.html
    pls help. thanks in advance.
    Lisan

    Hi Lisan,
    Which version are you using? Folder strucure differs for 11i and R12 versions.
    All the class files will be placed under the JAVA_TOP folder. From there you have to follow your package structure. Here it is oracle/apps/xxogl/f04/cp/file
    HTH,
    Syed.

  • Java Concurrent Program - connecting to MS SQL Server

    Hi,
    I hope this is correct forum to post this question.
    I am writing a JCP which will connect to a MS SQL Server DB, pull data from a table and populate this data into a custome table in EBS (R12.1.1) database. But I am facing some issues.
    When I run run this concurrent program from EBS, I get following exception message:
    Wed Aug 08 01:18:04 GMT 2012: In openConection()
    Wed Aug 08 01:18:04 GMT 2012: Before Loading Driver com.microsoft.jdbc.sqlserver.SQLServerDriver
    Wed Aug 08 01:18:04 GMT 2012: openConection() ClassNotFoundException: java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
    Wed Aug 08 01:18:04 GMT 2012: Before Calling processPrintMachineRecords()
    Wed Aug 08 01:18:04 GMT 2012: Exception:: java.lang.NullPointerException
    Wed Aug 08 01:18:04 GMT 2012: In closeSQLServerConnection().......closing JDBC Connection
    Wed Aug 08 01:18:04 GMT 2012: Connection object was null, hence skipping close
    Wed Aug 08 01:18:04 GMT 2012: After Calling processPrintMachineRecords()
    The I read somewhere on internet that I should set CLASSPATH in options field of concurrent program definition. So I provided classpath as follows:
    -cp /rs01/u02/applmgr/utyeb02/apps/apps_st/appl/au/12.0.0/appsborg.zip:/rs01/u02/applmgr/utyeb02/apps/apps_st/comn/java/classes/apps.zip:/rs01/u02/applmgr/utyeb02/apps/apps_st/comn/java/classes/sqljdbc_4.0/enu/sqljdbc.jar
    In this classpath sqljdbc.jar contains the classes for connecting to MS SQL Server DB. However after giving classpath like this I started getting different error:
    Exception in thread "main" java.lang.NoClassDefFoundError: oracle/apps/fnd/cp/request/Run
    Caused by: java.lang.ClassNotFoundException: oracle.apps.fnd.cp.request.Run
         at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
    It appears from the error message that after giving this CLASSPATH, program was not able to find the "Run" method itself. In otherwords, CLASSPATH screwed it further.
    Can anybody please point out what am I doing wrong here?
    Regards
    Java Code:
    package oracle.apps.custom.printmachine;
    import java.sql.*;
    import oracle.apps.fnd.cp.request.* ;
    import java.io.*;
    import oracle.apps.fnd.util.*;
    public class PrintMachineInterface implements JavaConcurrentProgram {
    public static final String M_SUCCESS = "SUCCESS";
    public static final String M_ERROR = "ERROR";
    public static final String M_WARNING = "WARNING";
    int mRequestStatus = -1;
    int max_number_of_records = 99999999;
    private String mSqlServerHost = "mysqlserver.domain.com";
    // Application Short Name
    private String applName;
    CpContext mCtx;
    LogFile logFile;
    OutFile outFile;
    Connection mConn = null;
    ReqCompletion lRC;
    public PrintMachineInterface(){
    // if no parameter value is specified for APPLNAME then use FND
    //as default value
    applName = "FND";
    private void logMessage(String str) {
    java.util.Date now = new java.util.Date();
    logFile.writeln(now.toString() + ": " + str, LogFile.STATEMENT);
    static String mInsertRecord = " Declare " + " BEGIN "
    + " INSERT INTO XXGFN_GBL_CE_PM_STAGE(ID, KEY, FILENAME, PRINTED_AT, CREATED_AT, DOCTYPE, LANGUAGE, OU, TRX_ID, DOC_ID, REQ_ID, TEMPLATE, PAGES, DOC_TEXT, TIMES_RECEIVED)"
    + " VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10, :11, :12, :13, substr(:14,2000), :15);"
    + " COMMIT;"
    + " END;";
    static Connection con = null;
    public void openConection() {
    logMessage( "In openConection()");
    try {
    logMessage( "Before Loading Driver com.microsoft.jdbc.sqlserver.SQLServerDriver");
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
    logMessage( "After Loading Driver com.microsoft.jdbc.sqlserver.SQLServerDriver");
    logMessage( "Attempting to connect to " + mSqlServerHost);
    con = DriverManager.getConnection("jdbc:microsoft:sqlserver://" + mSqlServerHost + ":1433;User=sql_user;Password=sql_pwd");
    logMessage( "After con assigned from getConnection(jdbc:microsoft:sqlserver://" + mSqlServerHost + ":1433;User=pm_dba_access;Password=*****");
    } catch (java.lang.ClassNotFoundException e) {
    logMessage("openConection() ClassNotFoundException: " + e);
    } catch (SQLException ex) {
    logMessage("openConection() SQLException: " + ex);
    public void closeSQLServerConnection() {
    try {
    logMessage( "In closeSQLServerConnection().......closing JDBC Connection");
    if (con != null)
    logMessage( "Con is not null");
    con.close();
    logMessage( "Con Closed Successfully");
    else
    logMessage( "Connection object was null, hence skipping close");
    } catch (SQLException ex) {
    logMessage("SQLException: " + ex);
    } catch (Exception ex) {
    logMessage("Exception in closeSQLServerConnection() : " + ex);
    private void populate_staging_table(
    String p_id,
    String p_key,
    String p_filename,
    String p_printed_at,
    String p_created_at,
    String p_doctype,
    String p_language,
    String p_ou,
    String p_trx_id,
    String p_doc_id,
    String p_req_id,
    String p_template,
    String p_pages,
    String p_doc_text,
    String p_times_received
    PreparedStatement lStmt = null;
    logMessage("Populating data from PrintMachine history table");
    try {
    lStmt = mConn.prepareCall(mInsertRecord);
    lStmt.setString(1, p_id);
    lStmt.setString(2, p_key);
    lStmt.setString(3, p_filename);
    lStmt.setString(4, p_printed_at);
    lStmt.setString(5, p_created_at);
    lStmt.setString(6, p_doctype);
    lStmt.setString(7, p_language);
    lStmt.setString(8, p_ou);
    lStmt.setString(9, p_trx_id);
    lStmt.setString(10, p_doc_id);
    lStmt.setString(11, p_req_id);
    lStmt.setString(12, p_template);
    lStmt.setString(13, p_pages);
    lStmt.setString(14, p_doc_text);
    lStmt.setString(15, p_times_received);
    lStmt.execute();
    lStmt.close();
    } catch (SQLException s) {
    logMessage("Exception thrown w/ error message: "
    + s.getMessage());
    s.printStackTrace();
    finally {
    try {
    if (lStmt != null)
    lStmt.close();
    } catch (SQLException e) {
    logMessage("SQLException: " + e);
    private void processPrintMachineRecords() {
    int number_of_recs = 0;
    try {
    PreparedStatement stmt = con.prepareStatement("SELECT TOP 1000 ID, Key, Filename, PrintedAt, CreatedAt, Doctype, Language,OU, TransactionID, DocumentID, RequestID, Template, Pages, Documenttext, TimesReceived FROM PM_DATA.dbo.History" );
    ResultSet rst = stmt.executeQuery();
    while (rst.next()) {
    number_of_recs++;
    if (number_of_recs == max_number_of_records) break;
    populate_staging_table(
    rst.getString(1), rst.getString(2)
    ,rst.getString(3), rst.getString(4)
    ,rst.getString(5), rst.getString(6)
    ,rst.getString(7), rst.getString(8)
    ,rst.getString(9), rst.getString(10)
    ,rst.getString(11), rst.getString(12)
    ,rst.getString(13), rst.getString(14)
    ,rst.getString(15)
    stmt.close();
    rst.close();
    mConn.commit();
    } catch (SQLException ex) {
    logMessage("SQLException: " + ex);
    catch (Exception ex) {
    logMessage("Exception:: " + ex);
    closeSQLServerConnection();
    public void runProgram(CpContext pCpContext) {
    applName = "XXGFN";
    String l_file_path = null;
    mCtx = pCpContext;
    //get handle on request completion object for reporting status
    lRC = pCpContext.getReqCompletion();
    // assign logfile
    logFile = pCpContext.getLogFile();
    // assign outfile
    outFile = pCpContext.getOutFile();
    // get the JDBC connection object
    mConn = pCpContext.getJDBCConnection();
    l_file_path = ((new File(outFile.getFileName())).getParent() == null ? ""
    : (new File(outFile.getFileName())).getParent());
    // get parameter list object from CpContext
    ParameterList lPara = pCpContext.getParameterList();
    while (lPara.hasMoreElements())
    NameValueType aNVT = lPara.nextParameter();
    if ( aNVT.getName().equals("APPLNAME") )
    applName = aNVT.getValue();
    /** openConection() Opens the connection to SQL Server Database*/
    openConection() ;
    logMessage("Before Calling processPrintMachineRecords()");
    processPrintMachineRecords();
    logMessage("After Calling processPrintMachineRecords()");
    try{
    setCompletion(ReqCompletion.NORMAL, "Request Completed Normal");
    } catch (Exception e) {
    setCompletion(ReqCompletion.ERROR, e.toString());
    } finally {
    pCpContext.releaseJDBCConnection();
    * Sets the request completion status based on proper precedence. ERROR >
    * WARNING > NORMAL
    * @param pStatus
    * Status of the request.
    * @param pCompletionText
    * Request's completion text.
    public void setCompletion(int pStatus, String pCompletionText) {
    if ((pStatus == ReqCompletion.ERROR)
    || ((pStatus == ReqCompletion.WARNING) && (mRequestStatus != ReqCompletion.ERROR))
    || ((pStatus == ReqCompletion.NORMAL)
    && (mRequestStatus != ReqCompletion.WARNING) && (mRequestStatus != ReqCompletion.ERROR))) {
    mRequestStatus = pStatus;
    lRC.setCompletion(pStatus, pCompletionText);
    }

    ok
    i used Template.java as input
    useful MOS:
    How To Create a Java Concurrent Program? [ID 827563.1]
    Java Concurrent Program FAQ [ID 827575.1]
    i used
    //goto ms sql server 2008r2       
            try{
             Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");        
             con = java.sql.DriverManager.getConnection( 
                                          "jdbc:sqlserver://1.2.3.4:1433;databaseName=test;selectMethod=cursor", 
                                          "test", "test");          
              if(con!=null) System.out.println("Connection Successful!");
            }catch(Exception e){
              e.printStackTrace();
              System.out.println("Error Trace in getConnection() : " + e.getMessage());
            }1.2.3.4 - ip of instance with sqlserver2008r2 :)
    in your code
    >
    try {
    logMessage( "Before Loading Driver com.microsoft.jdbc.sqlserver.SQLServerDriver");
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
    logMessage( "After Loading Driver com.microsoft.jdbc.sqlserver.SQLServerDriver");
    logMessage( "Attempting to connect to " + mSqlServerHost);
    con = DriverManager.getConnection("jdbc:microsoft:sqlserver://" + mSqlServerHost + ":1433;User=sql_user;Password=sql_pwd");
    logMessage( "After con assigned from getConnection(jdbc:microsoft:sqlserver://" + mSqlServerHost + ":1433;User=pm_dba_access;Password=*****");
    } catch (java.lang.ClassNotFoundException e) {
    logMessage("openConection() ClassNotFoundException: " + e);
    } catch (SQLException ex) {
    logMessage("openConection() SQLException: " + ex);
    >
    try my case for Driver and Connection
    put result .class file to needed directory
    put sqljdbc4.jar to /rs01/u02/applmgr/utyeb02/apps/apps_st/comn/java/lib
    and for concurrent program option
    -classpath /rs01/u02/applmgr/utyeb02/apps/apps_st/comn/java/classes:/rs01/u02/applmgr/utyeb02/apps/apps_st/appl/au/12.0.0/appsborg.zip:/rs01/u02/applmgr/utyeb02/apps/apps_st/comn/java/lib/sqljdbc4.jaralso useful mos:
    Classpath Setting of Third Party Jar Files in R12 Java Concurrent Program (JCP) [ID 1292694.1]

  • Java Concurrent Program Errors out

    Hi All,
    Request you to help me in this issue as this is on high priority.
    we have registered a Java Concurrent Program Named Genus Merge Two P45 Pdf's which gives the output in pdf format.
    The concurrent program errors out showing the log as follows :
    GENUS Custom: Version : UNKNOWN
    Copyright (c) 1979, 1999, Oracle Corporation. All rights reserved.
    GEN_MERGE_TWO_PDFS module: Genus Merge Two P45 Pdf's
    Current system time is 10-MAR-2010 07:10:43
    Exception in static block of jtf.cache.appsimpl.AppsCacheLogger. Stack trace is: oracle.apps.fnd.common.AppsException: oracle.apps.fnd.common.PoolException: Exception creating new Poolable object.
         at oracle.apps.fnd.profiles.Profiles.getProfileOption(Profiles.java:1509)
         at oracle.apps.fnd.profiles.Profiles.getProfile(Profiles.java:362)
         at oracle.apps.fnd.profiles.ExtendedProfileStore.getSpecificProfileFromDB(ExtendedProfileStore.java:210)
         at oracle.apps.fnd.profiles.ExtendedProfileStore.getSpecificProfile(ExtendedProfileStore.java:169)
         at oracle.apps.fnd.profiles.ExtendedProfileStore.getProfile(ExtendedProfileStore.java:148)
         at oracle.apps.fnd.common.logging.DebugEventManager.configureUsingDatabaseValues(DebugEventManager.java:1201)
         at oracle.apps.fnd.common.logging.DebugEventManager.configureLogging(DebugEventManager.java:1044)
         at oracle.apps.fnd.common.logging.DebugEventManager.internalReinit(DebugEventManager.java:1013)
         at oracle.apps.fnd.common.logging.DebugEventManager.reInitialize(DebugEventManager.java:980)
         at oracle.apps.fnd.common.logging.DebugEventManager.reInitialize(DebugEventManager.java:967)
         at oracle.apps.fnd.common.AppsLog.reInitialize(AppsLog.java:570)
         at oracle.apps.fnd.common.AppsContext.initLog(AppsContext.java:593)
         at oracle.apps.fnd.common.AppsContext.initializeContext(AppsContext.java:570)
         at oracle.apps.fnd.common.AppsContext.initializeContext(AppsContext.java:524)
         at oracle.apps.fnd.common.AppsContext.<init>(AppsContext.java:292)
         at oracle.apps.fnd.common.WebAppsContext.<init>(WebAppsContext.java:1002)
         at oracle.apps.jtf.cache.ArchitectureWrapper.createAppsContextWithDBCFile(ArchitectureWrapper.java:143)
         at oracle.apps.jtf.cache.ArchitectureWrapper.createDefaultAppsContext(ArchitectureWrapper.java:107)
         at oracle.apps.jtf.cache.ArchitectureWrapper.createAppsContext(ArchitectureWrapper.java:96)
         at oracle.apps.jtf.cache.appsimpl.AppsCacheLogger.<clinit>(AppsCacheLogger.java:43)
         at oracle.apps.jtf.cache.appsimpl.AppsCacheEnvironment.getCacheLogger(AppsCacheEnvironment.java:67)
         at oracle.apps.jtf.cache.CacheManager.initCache(CacheManager.java:711)
         at oracle.apps.jtf.cache.CacheManager.<clinit>(CacheManager.java:378)
         at oracle.apps.fnd.cache.Cache.setCacheFullName(Cache.java:228)
         at oracle.apps.fnd.cache.Cache.initCache(Cache.java:114)
         at oracle.apps.fnd.cache.Cache.<init>(Cache.java:89)
         at oracle.apps.fnd.cache.AppsCache.<init>(AppsCache.java:86)
         at oracle.apps.fnd.cache.AolCaches.getCache(AolCaches.java:155)
         at oracle.apps.fnd.profiles.Profiles.<clinit>(Profiles.java:241)
         at oracle.apps.fnd.profiles.ExtendedProfileStore.init(ExtendedProfileStore.java:498)
         at oracle.apps.fnd.profiles.ExtendedProfileStore.<init>(ExtendedProfileStore.java:119)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
         at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
         at oracle.apps.fnd.common.AppsContext.instantiateProfileStore(AppsContext.java:3959)
         at oracle.apps.fnd.common.AppsContext.makeProfileStore(AppsContext.java:780)
         at oracle.apps.fnd.common.Context.setProfileStore(Context.java:767)
         at oracle.apps.fnd.common.Context.setProfileStore(Context.java:749)
         at oracle.apps.fnd.common.AppsContext.initializeContext(AppsContext.java:564)
         at oracle.apps.fnd.common.AppsContext.initializeContext(AppsContext.java:524)
         at oracle.apps.fnd.common.AppsContext.<init>(AppsContext.java:292)
         at oracle.apps.fnd.cp.request.CpContext.<init>(CpContext.java:141)
         at oracle.apps.fnd.cp.request.CpContext.<init>(CpContext.java:124)
         at oracle.apps.fnd.cp.request.Run.main(Run.java:127)
    Caused by: oracle.apps.fnd.common.PoolException: Exception creating new Poolable object.
         at oracle.apps.fnd.common.Pool.createObject(Pool.java:1321)
         at oracle.apps.fnd.common.Pool.borrowObject(Pool.java:1062)
         at oracle.apps.fnd.security.DBConnObjPool.borrowObject(DBConnObjPool.java:752)
         at oracle.apps.fnd.security.AppsConnectionManager.borrowConnection(AppsConnectionManager.java:297)
         at oracle.apps.fnd.common.Context.borrowConnection(Context.java:1720)
         at oracle.apps.fnd.common.AppsContext.getPrivateConnectionFinal(AppsContext.java:2306)
         at oracle.apps.fnd.common.AppsContext.getPrivateConnection(AppsContext.java:2243)
         at oracle.apps.fnd.common.AppsContext.getJDBCConnection(AppsContext.java:2101)
         at oracle.apps.fnd.common.AppsContext.getJDBCConnection(AppsContext.java:1910)
         at oracle.apps.fnd.common.AppsContext.getJDBCConnection(AppsContext.java:1754)
         at oracle.apps.fnd.common.AppsContext.getJDBCConnection(AppsContext.java:1767)
         at oracle.apps.fnd.common.Context.getJDBCConnection(Context.java:1453)
         at oracle.apps.fnd.cache.GenericCacheLoader.load(GenericCacheLoader.java:168)
         at oracle.apps.fnd.profiles.Profiles.getProfileOption(Profiles.java:1500)
         ... 44 more
    Caused by: java.lang.AbstractMethodError: oracle.sql.LnxLibThin.lnxnuc([BILjava/lang/String;)Ljava/lang/String;
         at oracle.sql.NUMBER.toInt(NUMBER.java:414)
         at oracle.jdbc.dbaccess.DBConversion.NumberBytesToInt(DBConversion.java:2959)
         at oracle.jdbc.driver.OracleStatement.getIntValue(OracleStatement.java:4596)
         at oracle.jdbc.driver.OracleResultSetImpl.getInt(OracleResultSetImpl.java:536)
         at oracle.apps.fnd.security.ConnectionManager.setClientData(ConnectionManager.java:1497)
         at oracle.apps.fnd.security.ConnectionManager.dbConnect(ConnectionManager.java:1446)
         at oracle.apps.fnd.security.ConnectionManager.dbConnect(ConnectionManager.java:1325)
         at oracle.apps.fnd.security.AppsConnectionManager.makeGwyuidConn(AppsConnectionManager.java:884)
         at oracle.apps.fnd.security.AppsConnectionManager.getGwyuidConn(AppsConnectionManager.java:962)
         at oracle.apps.fnd.security.AppsConnectionManager.makeGuestConnection(AppsConnectionManager.java:780)
         at oracle.apps.fnd.security.DBConnObj.<init>(DBConnObj.java:246)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
         at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
         at oracle.apps.fnd.common.Pool.createObject(Pool.java:1308)
         ... 57 more
    Exception in static block of jtf.cache.CacheManager. Stack trace is: oracle.apps.jtf.base.resources.FrameworkException: oracle.apps.fnd.common.PoolException: Exception creating new Poolable object.
         at oracle.apps.jtf.cache.CacheManager.initCache(CacheManager.java:718)
         at oracle.apps.jtf.cache.CacheManager.<clinit>(CacheManager.java:378)
         at oracle.apps.fnd.cache.Cache.setCacheFullName(Cache.java:228)
         at oracle.apps.fnd.cache.Cache.initCache(Cache.java:114)
         at oracle.apps.fnd.cache.Cache.<init>(Cache.java:89)
         at oracle.apps.fnd.cache.AppsCache.<init>(AppsCache.java:86)
         at oracle.apps.fnd.cache.AolCaches.getCache(AolCaches.java:155)
         at oracle.apps.fnd.profiles.Profiles.<clinit>(Profiles.java:241)
         at oracle.apps.fnd.profiles.ExtendedProfileStore.init(ExtendedProfileStore.java:498)
         at oracle.apps.fnd.profiles.ExtendedProfileStore.<init>(ExtendedProfileStore.java:119)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
         at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
         at oracle.apps.fnd.common.AppsContext.instantiateProfileStore(AppsContext.java:3959)
         at oracle.apps.fnd.common.AppsContext.makeProfileStore(AppsContext.java:780)
         at oracle.apps.fnd.common.Context.setProfileStore(Context.java:767)
         at oracle.apps.fnd.common.Context.setProfileStore(Context.java:749)
         at oracle.apps.fnd.common.AppsContext.initializeContext(AppsContext.java:564)
         at oracle.apps.fnd.common.AppsContext.initializeContext(AppsContext.java:524)
         at oracle.apps.fnd.common.AppsContext.<init>(AppsContext.java:292)
         at oracle.apps.fnd.cp.request.CpContext.<init>(CpContext.java:141)
         at oracle.apps.fnd.cp.request.CpContext.<init>(CpContext.java:124)
         at oracle.apps.fnd.cp.request.Run.main(Run.java:127)
    Caused by: oracle.apps.jtf.base.resources.FrameworkException: oracle.apps.fnd.common.PoolException: Exception creating new Poolable object.
         at oracle.apps.jtf.base.resources.FrameworkException.convertException(FrameworkException.java:607)
         at oracle.apps.jtf.base.resources.FrameworkException.addException(FrameworkException.java:585)
         at oracle.apps.jtf.base.resources.FrameworkException.<init>(FrameworkException.java:66)
         at oracle.apps.jtf.base.resources.FrameworkException.<init>(FrameworkException.java:88)
         at oracle.apps.jtf.base.resources.FrameworkException.<init>(FrameworkException.java:202)
         at oracle.apps.jtf.base.resources.FrameworkException.<init>(FrameworkException.java:218)
         at oracle.apps.jtf.base.resources.FrameworkException.<init>(FrameworkException.java:249)
         ... 24 more
    Exception in thread "main" oracle.apps.fnd.common.PoolException: Exception creating new Poolable object.
         at oracle.apps.fnd.common.Pool.createObject(Pool.java:1321)
         at oracle.apps.fnd.common.Pool.borrowObject(Pool.java:1062)
         at oracle.apps.fnd.security.DBConnObjPool.borrowObject(DBConnObjPool.java:752)
         at oracle.apps.fnd.security.AppsConnectionManager.borrowConnection(AppsConnectionManager.java:297)
         at oracle.apps.fnd.common.Context.borrowConnection(Context.java:1720)
         at oracle.apps.fnd.common.AppsContext.getPrivateConnectionFinal(AppsContext.java:2306)
         at oracle.apps.fnd.common.AppsContext.getPrivateConnection(AppsContext.java:2243)
         at oracle.apps.fnd.common.AppsContext.getJDBCConnection(AppsContext.java:2101)
         at oracle.apps.fnd.common.AppsContext.getLocalJDBCConnection(AppsContext.java:2481)
         at oracle.apps.fnd.common.AppsContext.getLocalJDBCConnection(AppsContext.java:2416)
         at oracle.apps.fnd.common.AppsContext.getLocalJDBCConnection(AppsContext.java:2397)
         at oracle.apps.fnd.common.ProfileCache.getProfileObject(ProfileCache.java:110)
         at oracle.apps.fnd.common.NativeProfileStore.getSpecificProfileFromDB(NativeProfileStore.java:375)
         at oracle.apps.fnd.common.NativeProfileStore.getProfile(NativeProfileStore.java:314)
         at oracle.apps.fnd.common.logging.DebugEventManager.configureUsingDatabaseValues(DebugEventManager.java:1201)
         at oracle.apps.fnd.common.logging.DebugEventManager.configureLogging(DebugEventManager.java:1044)
         at oracle.apps.fnd.common.logging.DebugEventManager.internalReinit(DebugEventManager.java:1013)
         at oracle.apps.fnd.common.logging.DebugEventManager.reInitialize(DebugEventManager.java:980)
         at oracle.apps.fnd.common.logging.DebugEventManager.reInitialize(DebugEventManager.java:967)
         at oracle.apps.fnd.common.AppsLog.reInitialize(AppsLog.java:570)
         at oracle.apps.fnd.common.AppsContext.initLog(AppsContext.java:593)
         at oracle.apps.fnd.common.AppsContext.initializeContext(AppsContext.java:570)
         at oracle.apps.fnd.common.AppsContext.initializeContext(AppsContext.java:524)
         at oracle.apps.fnd.common.AppsContext.<init>(AppsContext.java:292)
         at oracle.apps.fnd.cp.request.CpContext.<init>(CpContext.java:141)
         at oracle.apps.fnd.cp.request.CpContext.<init>(CpContext.java:124)
         at oracle.apps.fnd.cp.request.Run.main(Run.java:127)
    Caused by: java.lang.AbstractMethodError: oracle.sql.LnxLibThin.lnxnuc([BILjava/lang/String;)Ljava/lang/String;
         at oracle.sql.NUMBER.toInt(NUMBER.java:414)
         at oracle.jdbc.dbaccess.DBConversion.NumberBytesToInt(DBConversion.java:2959)
         at oracle.jdbc.driver.OracleStatement.getIntValue(OracleStatement.java:4596)
         at oracle.jdbc.driver.OracleResultSetImpl.getInt(OracleResultSetImpl.java:536)
         at oracle.apps.fnd.security.ConnectionManager.setClientData(ConnectionManager.java:1497)
         at oracle.apps.fnd.security.ConnectionManager.dbConnect(ConnectionManager.java:1446)
         at oracle.apps.fnd.security.ConnectionManager.dbConnect(ConnectionManager.java:1325)
         at oracle.apps.fnd.security.AppsConnectionManager.makeGwyuidConn(AppsConnectionManager.java:884)
         at oracle.apps.fnd.security.AppsConnectionManager.getGwyuidConn(AppsConnectionManager.java:962)
         at oracle.apps.fnd.security.AppsConnectionManager.makeGuestConnection(AppsConnectionManager.java:780)
         at oracle.apps.fnd.security.DBConnObj.<init>(DBConnObj.java:246)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
         at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
         at oracle.apps.fnd.common.Pool.createObject(Pool.java:1308)
         ... 26 more
    Start of log messages from FND_FILE
    End of log messages from FND_FILE
    oracle.apps.genus.utils.MergePdfs
    Program exited with status 1
    Executing request completion options...
    Finished executing request completion options.
    Concurrent request completed
    Current system time is 10-MAR-2010 07:10:47
    ---------------------------------------------------------------------------

    Hi,
    FYI,
    I am not sure about this error,
    Use the following links, hope it may solve your problem,
    http://oracleappstechnology.blogspot.com/2007/09/oracleappsfndcommonpoolexception.html
    http://www.appsdbatechstuff.com/2008/06/java-workflow-mailer-does-not-startup.html
    http://it.toolbox.com/wiki/index.php/Oracle_Apps_-JavaConcurrent_Program
    Io exception: The Network Adapter could not establish the connection
    Regards,
    Hari

  • Possible to extend java Concurrent Program and replace standard??

    Hi All!
    i have following developing need. There is a java concurrent program POXPOPDF (PO Output for Communication). The customer needs this program to do actually something complete different than printing the PO in PDF. The executable for this CP is java class PoGenerateDocumentCP in oracle.apps.po.communicate package.
    We thought that we may be able to extend that class and then in some way made OA to use the extended java class instead of the standard. This is possbile and simple for OA Framework pages unsing classes as controllers, but I don't know how it could be done for CP (if there's a way to do it without violent intervention in standard system).. Is it possbile, can anyone help me with this.
    The thing is that instead of reformatting the XML returned from PO_COMMUNICATION_PVT.POXMLGEN (function POXMLGEN in database package PO_COMMUNICATION_PVT) into PDF we want to reformat into another XML and then send it in other way to a webservice. Once I have the XML from POXMLGEN I have no problem to reformat it into another XML (I think, I have done it iwith other issues/processes). The webservice and the call to it is no problem and is already use with other purposes in other processes, but here (replaceing this stadard java class for an extension/new one) I am a little lost.
    Appreciate very much your help.
    Regards,
    Patricia

    Never mind, I see now that FND_REQUEST.SUBMIT_REQUEST() really does work, I tried with a different standard java concurrent program and it worked fine, and then I figured out that my parameters into fnd_request.submit_request for concurrent program APXVVCF4 were not correct (application short name was invalid for concurrent program).
    Thanks for the Info!

Maybe you are looking for