Home

  

Product

  

Buy

  

Support

 First Line 
 FAQs 
 Tutorials 
 Registered Users 
 User Guide 
 Knowledge Base 

News

  

Press

  

Downloads

  

Contact

  

Company

  

Partners

  

Resources

 
 
Technical FAQ

    Database
  • My Pervasive database does not have security. When I try and run the JCodeBox Query Tool against it I get the following error: Insufficient arguments to start JCodeBox Query Tool (4). What can I do?
  • A column in my Oracle table has a datatype float. When JCodeBox creates an EJB based on this table, the java datatype is Object. Why?
  • Why do I get the following error when I try to connect to a database: Unable to retrieve catalog/schema list for connection: xxx SQLException connecting to URL: xxxxxx
  • Why do I get the following error connecting to postgresql:

    java.sql.SQLException: ERROR: No such attribute or function 'oid'
    at org.postgresql.Connection.ExecSQL(Connection.java:393)

  • I get a No such function 'pg_encoding_to_char' with the specified attributes when using PostgresQL. What does this mean?
  • EJB 2 Relationships
  • What does the Add CMR to ejbCreate setting do?
  • What does the remove CMR from CMP setting do?
  • General
  • When I start JCodeBox I get the following message: JCodeBox: No Java compiler available. What does this mean?
  • How do I set the default base package?
  • How do I set the default application name?
  • How do I set the default DataSource JNDI name?
  • How do I get tracing information output when I'm running my application?
  • I get the following error: Out of memory. Please increase available memory How do I correct this?
  • How do I set the default output directory?
  • How do I close the JCodeBox about window?
  • The Compile Package and Deploy options on the Create Application dialog are all disabled. What's causing this?
  • Why do I get the following error when I try and run JCodeBox: java.lang.VerifyError ... Incompatible object argument for function
  • I changed my web app colors in JCodeBox options but when I deploy my application, on some pages (i.e. system menu) the application name and page name at the top of the page are still displayed in the original colors. Why is this and how do I change it?
  • How do I create a html page with an image on it in my web application?
  • Why aren't all of the methods I've entered for a view helper available for selection as the target view helper method in the define JSP form dialog?
  • Installation
  • I can't run JCodeBox and the problems seem to be related to the xml/xsl libraries. What could be causing this?
  • Why do I get the following error when I try to install JCodeBox on linux:

    Exception in thread "main" java.lang.NoClassDefFoundError
    at java.lang.Class.forName0(Native Method)

  • Why do I get the following error when I try to install/run JCodeBox on linux:

    libstdc++-libc6.1-1.so.2: cannot open shared object file: No such file or directory

  •   My Pervasive database does not have security. When I try and run the JCodeBox Query Tool against it I get the following error: Insufficient arguments to start JCodeBox Query Tool (4). What can I do?To top of page

    Modify your connection details in JCodeBox and enter a dummy User ID and password.

      A column in my Oracle table has a datatype float. When JCodeBox creates an EJB based on this table, the java datatype is Object. Why?To top of page

    Some Oracle JDBC drivers map the Oracle FLOAT datatype to the java java.lang.Object datatype (JDBC Type Other). In JCodeBox on the Fields tab in the Define XXX EJB dialog, you can change the datatype (i.e. to double or float) by double clicking on it.

      Why do I get the following error when I try to connect to a database: Unable to retrieve catalog/schema list for connection: xxx SQLException connecting to URL: xxxxxxTo top of page

    This can be caused by a number of different reasons. Try checking the following:

    • The format of the JDBC URL entered for this connection. It must be in the correct format for your JDBC driver (check your driver's documentation)
    • Check that the database system you are trying to connect to is running at the location (address/port) specified in your JDBC URL
    • Check that you have the correct login information to connect to the database

      Why do I get the following error connecting to postgresql:

    java.sql.SQLException: ERROR: No such attribute or function 'oid'
    at org.postgresql.Connection.ExecSQL(Connection.java:393)

    To top of page

    This can be caused if you try to connect to a postgresql version 7 database using a postgresql version 6 JDBC driver. Try upgrading to a version 7 driver i.e. pg73jdbc2.jar.

      I get a No such function 'pg_encoding_to_char' with the specified attributes when using PostgresQL. What does this mean?To top of page

    We have noticed the following error with some versions of the PostgreSQL driver but not with others:

    SQLException: Something unusual has occurred to cause the driver to fail. Please report this exception: Exception: java.sql.SQLException: ERROR: No such function 'pg_encoding_to_char' with the specified attributes

    java.sql.SQLException: ERROR: No such function 'pg_encoding_to_char' with the specified attributes
    at org.postgresql.core.QueryExecutor.execute(QueryExecutor.java:94)
    at
    org.postgresql.Connection.ExecSQL(Connection.java:398) at
    org.postgresql.Connection.ExecSQL(Connection.java:381) at
    org.postgresql.Connection.openConnection(Connection.java:314) at
    org.postgresql.Driver.connect(Driver.java:149) at
    java.sql.DriverManager.getConnection(DriverManager.java:517) at
    java.sql.DriverManager.getConnection(DriverManager.java:177)

    Pending further investigation we recommend trying a different version PostgreSQL driver (we have used jdbc7.0-1.2.jar successfully).

      What does the Add CMR to ejbCreate setting do?To top of page

    It adds CMR (Container Managed Relationship) fields to the end of all ejbCreate methods in your bean.

    This means therefore that the CMR fields are also appended to your ejbPostCreate methods where you can initialise your CMR fields (as specified in the J2EE 1.3 specification)

      What does the remove CMR from CMP setting do?To top of page

    It removes any CMR (Container Managed Relationship) fields in your bean from the list of fields being managed by CMP (Container Managed Persistence). Having dual CMR/CMP fields can cause problems in some application servers.

      When I start JCodeBox I get the following message: JCodeBox: No Java compiler available. What does this mean?To top of page

    JCodeBox can (optionally) build and deploy your applications so that you can see them up and running immediately. To do this it needs access to a Java compiler. This message is advising that during startup JCodeBox could not find a suitable Java compiler (and therefore will not be able to build and deploy your applications. It will still be able to generate your applications however). To resolve this issue add the tools.jar archive in your Java JDK distribution to the JCodeBox classpath (Tools/classpath menu) and re-start.

      How do I set the default base package?To top of page

    Choose Tools->Options… menu to display the JCodeBox options dialog. Select the Application tab and enter your base package name in the field provided.

      How do I set the default application name?To top of page

    Choose Tools->Options… menu to display the JCodeBox options dialog. Select the Application tab and enter your default application name in the field provided.

      How do I set the default DataSource JNDI name?To top of page

    Choose Tools->Options… menu to display the JCodeBox options dialog. Select the Application tab and enter your default DataSource JNDI name in the field provided.

      How do I get tracing information output when I'm running my application?To top of page

    Open the Options dialog (Tools->Options), select the Application tab and select Include trace output.

      I get the following error: Out of memory. Please increase available memory How do I correct this?To top of page

    Increase the memory available to JCodeBox by following these steps:

    1. Edit the jcodebox.lax file in the JCodeBox installation directory
    2. Locate the line: lax.nl.java.option.additional=-Xms8m -Xmx256m
    3. Increase the number 256 (i.e. to 512)

      How do I set the default output directory?To top of page

    Choose Tools->Options… menu to display the JCodeBox options dialog. Select the Application tab and use the Browse… button to select your default output directory.

      How do I close the JCodeBox about window?To top of page

    Click on it.

      The Compile Package and Deploy options on the Create Application dialog are all disabled. What's causing this?To top of page

    This is caused because the target application server you have selected for your application has not been configured for compilation (and therefore packaging ) or deployment. To resolve this go to the Enterprise server setup dialog (Tools->Enterprise server setup menu) and configure your target application server for compilation (by adding the necessary libraries to the additional classpath libraries list) and optionally deployment (by selecting a deployment directory). Or, select a different target application server for your application that has already been configured.

      Why do I get the following error when I try and run JCodeBox: java.lang.VerifyError ... Incompatible object argument for functionTo top of page

    This can be caused if the JVM loads a library (jar) that JCodeBox uses but does not load it from the JCodeBox installation directory and the library is a different version to the one that ships with JCodeBox. This is more likely to happen to users using the "endorsed" method of loading libraries introduced with JDK 1.4 i.e. jars in the "endorsed" directory will be loaded before any others.

    Example
    JCodeBox uses Xerces.jar
    User installs a product (i.e. JWSDP) that installs Xerces.jar in the "endorsed" directory
    User installs JCodeBox
    When the user tries to run JCodeBox a java.lang.VerifyError is thrown because the Xerces.jar in the "endorsed" directory is used instead of the one that ships with JCodeBox

      I changed my web app colors in JCodeBox options but when I deploy my application, on some pages (i.e. system menu) the application name and page name at the top of the page are still displayed in the original colors. Why is this and how do I change it?To top of page

    System pages are created when you first create your application - you will see them displayed in blue in the application window. System pages use the colors that are in effect when you first create your application and are fully generated so are not affected by subsequent color changes. To change colors for system pages simply edit them as normal JSP (right mouse/edit...) and enter the color codes into the JSP body.

      How do I create a html page with an image on it in my web application?To top of page

    Create a Resource component to contain your image i.e. if your image is on your local disk at: D:\temp\anumap.jpg and you want to call it img1.jpg in your web application and put it in the img sub directory put the following entries in your resource component:

    name: img1.jpg
    path: /img
    location: D:\temp\anumap.jpg

    Then create a Text component to contain your html page i.e. if your page is called pg1.html and it should be located in the /pg directory put the following entries in your text component

    name: pg1.html
    path: /pg

    Then, to reference the image from the html page use the following img tag in the content/html for the page:

    <img src="../img/img1.jpg">

    i.e. your content could be similar to:

    <html><body>
    <h2>Image</h2>
    <img src="../img/img1.jpg">
    </body></html>

      Why aren't all of the methods I've entered for a view helper available for selection as the target view helper method in the define JSP form dialog?To top of page

    Only methods with no parameters can be selected as target view helper methods. View helper methods have access to the following instance variables:

    1. HttpServletRequest request
    2. HttpServletResponse response
    3. ServletContext servletcontext

      I can't run JCodeBox and the problems seem to be related to the xml/xsl libraries. What could be causing this?To top of page

    The wrong xerces/xalan/jaxp library (i.e. not the ones that shipped with JCodeBox) could have been picked up. This can happen in a number of scenarios including:

    • If you are using JDK 1.3 an old version of one of these libraries could be in the lib/ext directory
    • The SUN JDK 1.3 can include an old version of JAXP in the crimson.jar library that ships with it
    • The Sun JDK 1.4 can be shipped to include an old version of Xalan
    • If you are using Sun JDK 1.4 an old version of one of these libraries could be in the endorsed directory (See the Endorsed Standards Override Mechanism)

    Please see the xerces/xalan FAQ pages on the apache website for further details on these and other problems related to incorrect versions of xerces/xalan being loaded

      Why do I get the following error when I try to install JCodeBox on linux:

    Exception in thread "main" java.lang.NoClassDefFoundError
    at java.lang.Class.forName0(Native Method)

    To top of page

    This is usually caused by one of the following:
    1. You are trying to install JCodeBox outside of an X windows session (gnome, kde, etc)

    2. X windows needs to be running before you attempt to install JCodeBox. After starting X windows, run the JCodeBox installation script (setup.bin) in an xterm/konsole/etc window.

    3. A compatibility issue between Java and the linux c++ libraries

    4. There is a known compatibility problem between some versions of Java and some versions of linux that can cause Java not to run. The problem is caused by a mismatch of the linux c++ libraries (libstdc++) i.e. Java is linked with one version of the libraries and the linux distribution does not have this version installed (it might have a newer version installed). Further details on this problem can be found on the Java bug parade at:

      http://developer.java.sun.com/developer/bugParade/bugs/4694590.html

      At the time of writing we know of two possible workaraounds:

      • Install the linux c++ libraries required by Java

      • Install the library files (libstdc++-libc6.1-1.so.2) required by Java.

      • Create a symlink from your installed libstdc++ to the version required by Java

      • i.e. if you have libstdc++-libc6.2-2.so.3 installed, create a symlink to the version required by Java i.e.:
        ln -s libstdc++-libc6.2-2.so.3 libstdc++-libc6.1-1.so.2

        Please note that this workaround is not recommended as it could introduce unexpected problems (the library names are changed because there are fundamental differences between the versions which may not be immediately apparent). However we have had reports from customers who have used this approach.

      Why do I get the following error when I try to install/run JCodeBox on linux:

    libstdc++-libc6.1-1.so.2: cannot open shared object file: No such file or directory

    To top of page

    There is a known compatibility problem between some versions of Java and some versions of linux that can cause Java not to run. The problem is caused by a mismatch of the linux c++ libraries (libstdc++) i.e. Java is linked with one version of the libraries and the linux distribution does not have this version installed (it might have a newer version installed). Further details on this problem can be found on the Java bug parade at:

    http://developer.java.sun.com/developer/bugParade/bugs/4694590.html

    At the time of writing we know of two possible workaraounds:

    • Install the linux c++ libraries required by Java

    • Install the library files (libstdc++-libc6.1-1.so.2) required by Java.

    • Create a symlink from your installed libstdc++ to the version required by Java

    • i.e. if you have libstdc++-libc6.2-2.so.3 installed, create a symlink to the version required by Java i.e.:
      ln -s libstdc++-libc6.2-2.so.3 libstdc++-libc6.1-1.so.2

      Please note that this workaround is not recommended as it could introduce unexpected problems (the library names are changed because there are fundamental differences between the versions which may not be immediately apparent). However we have had reports from customers who have used this approach.

    [an error occurred while processing this directive]