Oracle JDBC Configuration for Process Flow failed

 17 Replies
 0 Subscribed to this topic
 52 Subscribed to this forum
Sort:
Author
Messages
JavaCafe
Advanced Member
Posts: 23
Advanced Member

    I try to configure oracle JDBC for process Flow but unsusscessful. Here is what I did:

    On PF server (Windows server 2003):
     - Placed oracle driver jar file (ojdbc14.jar from Oracle site) in $GENDIR\bpm\jar directory
     - Add the following line in pfserv.cfg file to include the driver jar in classpath:
        pfserv.common.classpath.5%GENDIR%bpm/jar/ojdbc14.jar
     - Restart the PF server.
    On Designer Desktop:
     - Placed the same driver jar file in \lib directory
     - modified the designer.bat file to include the driver jar file in classpath
     - open Designer and enter parameters in JDBC tab:
       JDBC Driver: oracle.jdbc.driver.OracleDriver
       Database URL: jdbc:oracle:thin:@serverIP:PORT:INSTANCENAME.

    But when I tried to buid a SQL query  node I got the error:
    java.lang.NoClassDefFoundError
     at java/lang/Class.forName
     at com/lawson/bpm/processflow/workFlow/flowGraph/FgSQL.getJDBCConnection
     at workFlow/gui/FormSQLQueryWizard.sqlConnect

    Please point out if I was missing something or incorrect. Your kind help would be appreciated.

    David Britton
    Veteran Member
    Posts: 53
    Veteran Member
      Process Flow is based on JDK 1.1.1 (per the GSC) which requires "classes111.zip" from Oracle 7 in order to build SQL or run locally. There is no intent on the part of Lawson to upgrade the designer to use something from this century.

      The actual PF Engine on the servers is based on JDK1.4, so you can always use something like TOAD to build your SQL, paste it in your flow and "Run on Server" to test.
      JavaCafe
      Advanced Member
      Posts: 23
      Advanced Member
        David;

        Thanks for your reply. I can run SQL query "on the server" but always get error if run the same query locally (uncheck "Run on server" box). The error I get something like:
        SQLQuery8550_RETURN_MSG = ORA-00942: table or view does not exist
        OR
        SQLQuery8550_RETURN_CODE = 600
        SQLQuery8550_errorCode = 1
        SQLQuery8550_informationCode = 600
        SQLQuery8550_returnMessage = ORA-00600: internal error code, arguments: [ttcgcshnd-1], [0], [], [], [], [], [], []

        So I think I configured JDBC on Designer not correctly. Please advise.
        David Britton
        Veteran Member
        Posts: 53
        Veteran Member
          Are you able to build a query using the "SQL Query" ->[right click]properties -> "Build" function in designer?

          I had problems building queries and executing locally using the "ojdbc14.jar" file for Oracle. At the recommendation of the Lawson GSC I included "classes111.zip" from Oracle 7 in my class path I was able to run locally.

          The Process Flow engine on the server was built against jdk1.4 and will run with the jar file from Oracle 9 and up, but the designer was built against jdk1.1 and requires the class file from ORacle 7.

          Below is my jdbc configuration:

          Driver: oracle.jdbc.driver.OracleDriver
          URL: jdbc:oracle:thin:@[my_oracle_server]:1521:[my_sidd]
          User: [my user]
          Password: [my password]


          I built a simple query against the EMPLOYEE table and ran both locally and "Run on Server" and got valid results.

          The query was:

          SELECT EMPLOYEE, LAST_NAME, FIRST_NAME FROM HRSTAGE9.EMPLOYEE WHERE EMPLOYEE = 262246
          David Britton
          Veteran Member
          Posts: 53
          Veteran Member
            My designer.bat file is:

            set LAW_JAVA_HOME=%LAW81_JAVA_HOME%
            SET CLASSPATH=.;.\lib\lawrm.jar;.\lib\bpmsso.jar;.\lib\bpm-clients.jar;.\lib\bpm-commons.jar;.\lib\activation.jar;.\lib\collections.jar;.\lib\jakarta-oro-2.0.jar;.\lib\jbcl.jar;.\lib\jcfield450K.jar;.\lib\js.jar;.\lib\xbean.jar;.\lib\mailapi.jar;.\lib\mercjava.jar;.\lib\pf-xmljava.jar;.\lib\pf-rel802.jar;.\lib\SheridanActvList.zip;.\lib\smtp.jar;.\lib\xercesImpl.jar;.\lib\xml-apis.jar;.\lib\unijdbc.jar;.\lib\ojdbc.jar;.\lib\classes111.zip;.\lib\msutil.jar;.\lib\msbase.jar;.\lib\mssqlserver.jar

            start Designer.exe
            David Britton
            Veteran Member
            Posts: 53
            Veteran Member
              Test adding reply. I added response that shows up when I view history for this page but not when I go to the page directly.
              John Henley
              Posts: 3353
                David, the pages are cached, so sometimes you won't see the response right away. You can always press Ctrl-F5 (browser refresh) to see it.
                Thanks for using the LawsonGuru.com forums!
                John
                JavaCafe
                Advanced Member
                Posts: 23
                Advanced Member
                  David;

                  I've checked my Designer.bat and it's same as yours (Classes111.zip in classpath). I ran a simple query agaisnt Employee table successfully if "Run on server" but failed in locally. Here's the error I got:

                  Executing Sql ..... SELECT EMPLOYEE, LAST_NAME, FIRST_NAME FROM LAWSON.EMPLOYEE WHERE EMPLOYEE = 42043
                  SQLQuery8550_RETURN_MSG = ORA-00600: internal error code, arguments: [ttcgcshnd-1], [0], [], [], [], [], [], [].

                  I tried it on 3 different PCs and the results are the same.

                  Thanks for your response.
                  Sam Simpson
                  Veteran Member
                  Posts: 239
                  Veteran Member
                    Setting up JDBC is really a pain in the neck specially for oracle client. I'm assuming you are using oracle. Your classpath should really be Classess111.jar.
                    What I learned is that JDBC does not really works good with oracle10g so you may have to reinstall oracle9 client in your PC. Ever since I did this, I
                    never have a problem with JDBC connectivity Good luck!
                    David Britton
                    Veteran Member
                    Posts: 53
                    Veteran Member

                      Is the "classes111.zip" file in the "lib" directory under the install directory for Process Flow Designer?
                      Make sure you don't have an old "ojdbc14.jar" in the path. Mine does show "ojdbc.jar" which doesn't exist so it apparently doesn't interfere or break things.

                      For example yy classes111.zip is at: C:\Program Files\Lawson Software\ProcessFlow900\lib

                      My designer.bat and designer.exe are under C:\Program Files\Lawson Software\ProcessFlow900

                      I can't answer to the Oracle 10 question as I have the Oracle 8 client installed on my PC. We are 10gR2 on our servers.

                      I guess they changed the naming conventions after 1.1 from .zip to .jar. According to Lawson support the jdk1.1.1 they used was Microsoft's version which was not updated after the SUN/MicroSoft court battle was settled (won by Sun). That may be part of the reason MicroSoft didn't use the .jar suffix (pure speculation on my part).
                      JavaCafe
                      Advanced Member
                      Posts: 23
                      Advanced Member
                        Sam and David;

                        Thank you for your responses to my problem. Yes! I have Oracle 10g client installed. There're a lot of .NET apps that I developed and using ODP.NET (10g version) on my PC so I don't want to reinstall other Oracle client. If you guys have any suggestion please let me know. Again thanks for your helps.
                        David Britton
                        Veteran Member
                        Posts: 53
                        Veteran Member
                          I was thinking about this some more. I don't think the jdbc driver needs an Oracle client installed. If that is the case the version of Oracle on your PC is irrelevnt.
                          JavaCafe
                          Advanced Member
                          Posts: 23
                          Advanced Member
                            David;

                            That's what I thought so. Oracle client isn't needed for JDBC driver. I will try on a PC without Oracle client installed and see what happen. Thanks for your help.
                            Sam Simpson
                            Veteran Member
                            Posts: 239
                            Veteran Member
                              Part of your connect string is coming from your tnsnames.
                              John Henley
                              Posts: 3353
                                Posted By Sam Simpson on 05/15/2009 10:55 AM
                                Part of your connect string is coming from your tnsnames.

                                I disagree. The whole idea of the "Thin" driver is that you don't have to have the Oracle client loaded at all.  All of the info in the connect string is used to connect to the server:

                                jdbc:oracle:thin:@serverIP:PORT:INSTANCENAME

                                 

                                Thanks for using the LawsonGuru.com forums!
                                John
                                JavaCafe
                                Advanced Member
                                Posts: 23
                                Advanced Member
                                  Hi everyone;

                                  I did try on a PC without Oracle client installed but no luck. Same configuration, same query and got the same error when run locally:
                                  Executing Sql ..... SELECT EMPLOYEE, LAST_NAME, FIRST_NAME FROM LAWSON.EMPLOYEE WHERE EMPLOYEE = 42043
                                  SQLQuery8550_RETURN_MSG = ORA-00600: internal error code, arguments: [ttcgcshnd-1], [0], [], [], [], [], [], [].

                                  Any thought, idea please help me out.

                                  Thanks



                                  JavaCafe
                                  Advanced Member
                                  Posts: 23
                                  Advanced Member
                                    David;
                                    I replaced the classes.zip with classes.jar (from Oracle 9i) then it worked. Just in case if anyone encounter the same problem.
                                    Again thanks for all your helps
                                    RussB
                                    Posts: 3
                                      Thanks much folks. You answered all my questions to make this work!