Subject Re: client-java/lib
Author mailmur@yahoo.com
As others have posted here, point is to get .jar files in binary
format from CVS repository. This is how I made it work with WinCVS
client.

Don't know why ".jar" files does not come automatically in binary
format. That's something to do with cvs and is beyond my knowledge.

YOU WILL NEED tcl-macro support in Wincvs. You must
install "tcl832.exe" package to use console commands. Find it from
WinCVS site.

Console commands are typed and ENTERed on a bottom frame.

HOW TO GET CLIENT-JAVA SOURCES WITH WINCVS

0) Get client-java CVS project to a local machine
This will get .jars in "file" format. We will fix it in next step.


(1) Update all .jar files in "binary file" format to local machine
* activate "client-java/lib" folder from the left-side frame
* run console command: cvs update -A -d -kb
* activate "client-java/src/lib" folder from the left-side frame
* run console command: cvs update -A -d -kb

You must rerun commands if you update entire "client-java" package as
it will always rewrite .jars in bad format.


(2) Few source files were missing.
I had problems with one "client-java/src/jdbcTest/Harness" package.
It did not have three files required before able to compile the
driver. Files are related to a test program, so we can live without
them. However, you must create a skeleton source files to pass the
next Ant-compilation step.

Save the following skeleton files to Harness folder.

[File 1: SupportedSQLType.java]
package jdbcTest.harness;

public class SupportedSQLType {

public String getTypeName() { return null; }
public int getPrecision() { return 0; }

public int NULLABLE() { return 0; }

}

[File 2: TestCase.java]
package jdbcTest.harness;

public class TestCase {
public TestCase(String s) { }

}

[File 3: TestModule.java]
package jdbcTest.harness;

import java.sql.*;

public abstract class TestModule {

public TestCase createTestCase(String s) { return null; }
public void execTestCase(TestCase tc) throws java.sql.SQLException
{ }
public void test(java.sql.Statement stmt, String s) { }
public void passed() { }
public void failed() { }
public void stop() { }
public void result(String s) { }
public void result(int i) { }
public void result(Object o) { }

public void assert(boolean b, String s) { }
public void verify(boolean b, String s) { }

public void trySQL(Connection c, String s) { }
public void executeSQL(Connection c, String s) { }
public SupportedSQLType getSupportedSQLType(int i) { return null; }
public boolean next(java.sql.ResultSet rs) { return true; }
public void exception(Exception ex) { }
public void exception(java.sql.SQLException ex) { }

public String getUrl() { return null; }
public String getSignon() { return null; }
public String getPassword() { return null; }

}


(3) Compile source code. I made a new .bat file to "client-
java\src\build" folder and run it. Note, that I pass "jar-ra"
parameter to a Ant-program. This will compile a pure driver .jar file
without the JBOSS application server's deployment files.

[build.bat file]
SET JAVA_HOME=c:\jdk1.3.1
SET CLASSPATH=%JAVA_HOME%/lib/tools.jar
SET
TARGET_CLASSPATH=../../lib/ant.jar;../../lib/jaxp.jar;../../lib/junit.
jar
SET TARGET_CLASSPATH=%
TARGET_CLASSPATH%;../../lib/optional.jar;../../lib/parser.jar

%JAVA_HOME%\bin\java -cp %TARGET_CLASSPATH%;/../../build/classes;%
CLASSPATH% org.apache.tools.ant.Main jar-ra

pause


(4) It is Done
You should have a firebirdsql.jar file in "client-java\build\jar"
folder. Test it, submit bugs and problems to an appropriate forums,
contribute if you could give a helping hand.


> Hi all,
> I am trying to compile the Type 4 driver using the files on
> sourceforge but I think all the files in the client-java/lib
directory
> are corrupt!