[DataDirect][OpenEdge JDBC Driver] Transliteration failed, r

Posted by Admin on 29-Dec-2010 03:01

Hello,

after I beholen the problem with the semicolon, are new error Occurred.

this procedure:

------------------------------------------------

CREATE PROCEDURE Test01()
BEGIN
    String message = 'Hello World';
END

--------------

had this error:

[DataDirect][OpenEdge JDBC Driver][OpenEdge] Error from Java compiler. Compiler massage follow. (10727)
C:\OpenEdge\WR1\SQL_1428_3088\LARISSA.KORNOWSKI_TEST01_SP.java:2:'{'
expected

public final class LARISSA.KORNOWSKI_TEST01_SP extends JavaBaseSP

C:\OpenEdge\WR

------------------------------------------------

and this procedure:

------------------------------------------------

CREATE PROCEDURE proc1()
BEGIN
SQLIStatement in_lara = new SQLIStatement("Insert INTO lara_test_tab Values (4, 'Roman', 'Quadflieg', 'Freund') ");
in_lara.execute();
END

--------------

has this error:

[DataDirect][OpenEdge JDBC Driver] Transliteration failed, reason: invalid UTF8 data

------------------------------------------------

Now I have changed the setting: in Properties > Info I have set "Text file encoding 'to UTF-8. Now the "Error from Java compiler. Compiler massage follow. (10 727)"-error from the first procedure has also a "failed transliteration, reason: invalid UTF8 data"-error.

Have I made it worse? How can I eliminate the error?
The solutions, that I've found in other forums, deal with a different driver. ...

All Replies

Posted by bdearborn on 29-Dec-2010 03:02

Hi,

I am currently out of the office on and will be returning to the

office on January 3rd. I will be checking email but If you need

immediate assistance please call my cell phone at 503-805-8598 or

contact Jim Stein at jstein@cornerstar.com.

Thanks,

Bryn Dearborn

503-805-8598

--

Bryn Dearborn

503-928-8115 (Work)

503-805-8598 (Cell)

Cornerstar

Posted by egarcia on 29-Dec-2010 07:49

Hello,

Just some few suggestions.

The first procedure has single quotes (') but it should use double quotes (") since the stored procedure is actually based on Java.

You mentioned about setting "Text file encoding 'to UTF-8". I think that  you may need to play some more with these options

You can troubleshoot compilation errors of stored procedures by looking at the source code of the stored procedure.

When the stored procedure fails to compile, you can find a .java file, for example, LARISSA_KORNOWSKI_TEST01_SP.java in the working directory for the database.

Take a look at the .java file and see if there is something that  seems to be out of place, perhaps, there are unexpected characters. There is also a .lst file that you can check for compilation errors.

Also, you could even launch proenv and then  run javac from the command line. (You need to include the appropriate jar files in the classpath environment variable or use the -classpath option. I do not know the jar files off the top of my head.)

javac LARISSA_KORNOWSKI_TEST01_SP.java

I noticed that in the text of the error message it has "LARISSA.KORNOWSKI_TEST01_SP" instead of "LARISSA_KORNOWSKI_TEST01_SP".

I wonder if this causing the problem.

I hope this helps.

Posted by Admin on 03-Jan-2011 01:35

Hello egarcia, a happy new year!

Thanks for your answer.
larissa.kornowski is the user-name in the Connection Profile. And I can thus do not change easily. Can the problem really be at the point?

I changed the quotes:

CREATE PROCEDURE Test01() 
BEGIN
    String message = "Hello World";
END

The first error was:

C:\OpenEdge\WRK1\SQL_3008_3820\LARISSA.KORNOWSKI_TEST01_SP.java:2: '{' expected
public final class LARISSA.KORNOWSKI_TEST01_SP extends JavaBaseSP
                          ^
C:\OpenEdge\WRK1\SQL_3008_3820\LARISSA.KORNOWSKI_TEST01_SP.java:29: '}' expected
^
2 errors

This is the Jar file. In my opinion there is no error:

import com.progress.sql.sp.*;
public final class LARISSA.KORNOWSKI_TEST01_SP extends JavaBaseSP
{
    public void finalize()
    {
        super.finalize();
    }
   
    public int dhTPwrap (SQLDA OLDROW,
                         SQLDA NEWROW)
               throws DhSQLException
    {
        return 0;
    };
   
    public int dhSPwrap (SQLDA input_da,
                         SQLDA output_da,
                         DhSQLResultSet SQLResultSet)
               throws DhSQLException
    {
        if(input_da != null) {
        }
        String message = "Hello World";
        if(output_da != null) {
        }
        return 0;
    }
}

I have not changed anything and compiled again in OpenEdge Architect.
Only now is this error:

[DataDirect][OpenEdge JDBC Driver] Transliteration failed, reason: invalid UTF8 data

I have tried all sorts of "Text file encoding", but there is always the same error.

Posted by Admin on 04-Jan-2011 08:50

I found out how to create user! I created the user sysprogress. Now when I want to create a procedure that immediately comes "failed transliteration, reason: invalid UTF8 data"-error. I really think the "Error from Java compiler. compilers massage follow. (10 727)"-error was due to the point in the class name.

But how do I get the UTF8-error away?

This thread is closed