JAVA UFL java-heap problem

Hi,
Outline
I have developed a User Function Library (UFL) in Java to Internationalize the reports. I have followed the guide provided by BusinessObject: http://www.sdn.sap.com/irj/boc/index?rid=/library/uuid/20d050fc-6464-2b10-88aa-a31e24c4febf&overridelayout=true
System Specifications:
Windows XP
Intel Pentium 4 CPU 3.00GHz
Memory: 3 GB (RAM) 
Crystal Reports: 2008  version 12.1.3.1028
Java: JDK 1.6.0.13
Problem
Run into a Java heap space when the report is refreshing.
Description.
I open the report and click the refresh button. The report starts to quickly fetch data but then starts to slow down, it comes to the point where it stops fetching data. After a few seconds, the Formula Editor pops-up, highlights the Internationalization formula and then another small window titled "Crystal Reports" pops up with the message "Java heap space".
Comments
I know that I am running into a memory problem. I have check my memory in the Wondows Task Manager under the tab Performance and I see that my memory never reaches the maximum amount I have. I have also tried changing the Java versions, have also tried the UFL with Crystal reports XI and also tried with different computers all with which I get the same problem.
Has anyone encountered the same problem, if so, how were you able to fix it?
Thank you very much for your help.
Valentine

Valentine,
How big is the report? I had a similar problem when trying to produce a large report, although it did not have any UFL reference.
I increased the JVM stack size with the "-Xms32m -Xmx256m" flags.
But for the life of me I cannot remember where I set this from running within Eclipse. I will have a look around and see
if I can remember, but in the mean time it might help.
Darren

Similar Messages

  • Java UFLs in Crystal Reports

    I've installed BO XI Enterprise on a Linux server.
    Wrote a Java UFL and designed a report to use the Java UFL.
    I deployed my rpt file & the ufl's jar on the linux server.
    Re-started tomcat.
    I can see my report file using "infoview", but when I run my report (by clicking the link to my report), I get following error:
    "Error Formulas: @TestUFL - UFL 'myUFLs.MyTestLibrary' that implements this function is missing."
    I'm not sure where to deploy my UFL's jar file so I copied it under tomcat/bin, but it seems the application is not picking it up.
    Can anyone please help where am I going wrong?
    Thanks.

    Hi Chris
    In a similar issue where a .Net application was used,the problem was solved by registering the dll at C:\Windows\system 32.
    So, can your try that.
    Thanks

  • How to figure out the size of an object - java out of heap memory error

    Hi all,
    I am using an object that I found in a library that I didn't create so I don't know its internal state or members.
    I created a single one of these objects and I call announce() on this object which just sends a UDP announcement over the channel to notify listeners. However, after a message #124,288 I get a java out of heap memory error.
    I am wondering if this announce() method is causing the state of the object to grow with every call...it seems unlikely but I want to check to see if it's reserving a growing amount of heap memory without ever allowing it to free.
    My question is how can I check how big the object is within my program? I'd like to check, for instance, at every 10,000 messages sent how much memory the object is taking up. Is there a method call for that? Would I have to use some kind of debugger or memory monitor? I would like something easy to use.
    Please let me know, and thanks in advance.
    Julian

    jboolean23 wrote:
    Thanks for the quick reply.
    I say it's unlikely that the methods I call are filling up heap memory because I have one Message object. This one Message has a myMsg String member. Whenever I want to change the message I call myMsg = "anewstringhere". And then I do myMessageObject.announce(); And for that reason i say I only have one Message object. The only thing added to the heap would be the strings that I replace myMsg with. The old references to myMsg are no longer valid and should be garbage collected..
    Unless of course if you are calling intern() on them.
    so here's my train of thought (and this isn't what my actual code looks like):
    myMessageObject.myMsg = "hello" //creates a string on the heap? I assume this is equivalent to saying myMsg = new String("hello")No they are not the same.
    The text literal will be in the intern space. Both code fragments would do that.
    The second example would create a second instance of String(). That second instance would be cleaned when no longer referenced. But the literal will not.
    Is my thought process correct? You are calling a third party library right so mock it (write a simple replacement that does the minimal correct functionality.) Substitute it in your code. And then run. If it still fails then the problem is in your code. If not then it is either in the library or the way that you use the library.

  • JSP and Java Beans with Database Problem

    hellow, this is my first posting and i hope to help me as fast as you can...
    my problem is simplly i cant get any data from the database (whatever the database it is, i test it with MS Access and MySQL server) when i use a bean, But if i put my connection statement in the JSP file thair is no problem... ???? !!!!
    for example i have a class "Authentication" that have a method to test if the username and password is correct or not and return 1 if true, 0 if false, -1 if thair are some problem in connecting DB.
    now if i create a normal java application that uses this method, it's work and no problems, BUT if i used a JSP page to use this method it's return allways -1

    T1 class:
    package VX;
    import java.sql.*;
    import java.util.*;
    import javax.swing.*;
    public class T1
    //public MBJDBConnection(String driver,String url)
    public T1()
    JDBC_DRIVER = "com.mysql.jdbc.Driver";//driver;
    DATABASE_URL = "jdbc:mysql://localhost:3306/rawafed?user=root;password=0000";//url;
    //=======DB CONNECTION===========================================
    private static String JDBC_DRIVER;
    private static String DATABASE_URL;
    protected Connection connection;
    protected Statement statement;
    //===========End DBC==============================================
    public int update(String sqlUpdate)
         int i=0;
              //connectDB();
              try{
                   i=statement.executeUpdate(""+sqlUpdate);
                   catch(Exception e)
                        System.out.println("Error Inserting Statement Or Connection Not Opened");
              //disconnectDB();
         return i;
    public ResultSet select(String sqlQuery)
              //connectDB();
              ResultSet rs;
              try
              {//open try
              rs=statement.executeQuery(""+sqlQuery);
                   return rs;
              }//end try
              catch(Exception e2)
                   //System.out.println("Error Selecting Statement Or Connection Not Opened");
              }//end catch
              //add to array list
         //return resultList;
         return null;
    //------Methods-------
    public void connectDB()
    //===========================Connection===================
    try
    Class.forName(JDBC_DRIVER);
    catch(Exception e)
    System.out.println("Error : FOR NAME");
    try
    connection = DriverManager.getConnection(DATABASE_URL, "root", "0000");
    catch(Exception e)
    System.out.println("Error : DB URL");
    try
    statement = connection.createStatement();
    catch(Exception e)
    System.out.println("Error : CREATE STATEMENT ERROR");
    public void disconnectDB()
    try
    statement.close();
    connection.close();
    catch(Exception e2)
    System.out.println("Error : CAN'T CLOSE DB");
    T2 Class
    package VX;
    // class Person.
    //Required Class : EDC.EDCDB
    import java.sql.*;
    public class T2
         public T2()
              //initialization
         //........................ Attributes .........................
         private String user;
         private String password;
         private T1 db=new T1();
         private ResultSet rs;
         //......................... Methods .........................
         public String getAdmin(String u,String p)// 0: Failure, 1:Success and he is Administrator, 2: success and he is a regular employee 3: SUCCESS AND HE IS agent
              try
              user=u;
              password=p;
              rs=db.select("SELECT emp_id,password FROM Employee WHERE emp_id="+user+" AND password="+password+" AND Rank_ID=1");
              if(rs.next())
                   return ""+1;
              else
                   rs=db.select("SELECT emp_id,password FROM Employee WHERE emp_id="+user+" AND password="+password+" AND Rank_ID=2");
                   if(rs.next())
                        return ""+2;
                   else
                        rs=db.select("SELECT emp_id,password FROM Employee WHERE emp_id="+user+" AND password="+password+" AND Rank_ID=3");
                        if(rs.next())
                             return ""+3;
                        else return ""+0;
              catch(Exception e){System.out.println("Error \n"+e.getMessage());return ""+e.getMessage()+"\n"+(-1);}
         public int getCard(String u,String p)// 0: Failure, 1:Success and he is Administrator, 2: success
              user=u;
              password=p;
              try
              db.connectDB();
              rs=db.select("SELECT Card_ID,password FROM Card WHERE Card_ID='"+user+"' AND password='"+password+"'");
              if(rs.next())
                   return 1;
              return 0;
              catch(Exception w)
                   return -1;
              finally
                   //System.out.println("Done");
                   db.disconnectDB();
         public int getAny()
              return 1;
    }//end class
    This is a tested class and it's work OK
    import VX.T2;
    public class T3
         public static void main(String [] args)
              System.out.println("System Started...");
              try
                   T2 t2=new T2();
                   System.out.println(t2.getCard("1","a"));
              catch(Exception e)
                   System.out.println("Opsssss ...");
    Now this is the JSP Code that OK and Run without any problems
    <%@ page contentType="text/html; charset=windows-1256" language="java" import="java.sql.*" errorPage="" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1256" />
    <title>test</title>
    </head>
    <body>
    <%
    //Mazin B. Jabarin 20210464
    //Testing JSP - MySQL Server Driver
    String connectionURL = "jdbc:mysql://localhost:3306/EDCDB?user=root;password=0000";
    Connection connection = null;
    Statement statement = null;
    ResultSet rs = null;
    %>
    <%
    try{
    Class.forName("com.mysql.jdbc.Driver");
    connection = DriverManager.getConnection(connectionURL, "root", "0000");
    statement = connection.createStatement();
    rs = statement.executeQuery("SELECT * FROM a");
    while (rs.next()) {
    out.println(rs.getString("id")+"<br>");
    rs.close();
    catch(Exception e)
    out.print("Error : "+e.getMessage());
    %>
    </body>
    </html>
    Now this JSP File always returns (-1) ???? !!!!!!!
    <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*" import="VX.T2" import="java.util.*" errorPage="" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title>Untitled Document</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <body>
    <%
    try
    T2 t2=new T2();
    out.println("Result Still : "+t2.getCard("1","a"));
    catch(Exception w)
    out.println("<BR> Error In Execution ??? "+w.getMessage());
    %>
    </body>
    </html>
    ++++++++++++++++++++++++++++
    any one can help me please :(
    i use tomcat as web-application
    and i install jdk 1.5
    also JBulder 7
    (now i supposed that the JBulder make some conflict, so i uninstalled it but still Not Working) ...
    before one year i was working just like this way and it was working
    but now i dont know what is the problem
    i am really need help.

  • The JAVA program for "Philosopher Problem"

    When I learn the book of "Operating Systems (Design and Implementation)"(written by Andrew S.Tanenbaum), I try to write a program for the "Philosopher Problem" . In the book there is a sample of this problem in C language, and I write it in JAVA. The following is my program, I have tested it. It is correct, but maybe it is not the most efficient way to solve the problem. Can you think out a more efficient program in JAVA to solve this problem?
    * Philosopher Eating Problem
    * @author mubin
    * @version 1.0
    public class PhilosopherEating {
    //Philosophers' number
    private final static int PHER_NUM = 20;
    //Philosophers' state
    private volatile static int[] pherState = new int[PHER_NUM];
    //THINKING
    private final static int THINKING = 0;
    //HUNGRY
    private final static int HUNGRY = 1;
    //EATING
    private final static int EATING = 2;
    //Philosophers thread group
    public static Philosopher[] philosophers = new Philosopher[PHER_NUM];
    //finish indicator
    public volatile static boolean finished =false;
    //thread lock
    public static Object threadLock = new Object();
    public PhilosopherEating() {
    * Philosopher class
    * @author mubin
    * @version 1.0
    public static class Philosopher extends Thread{
    int pherNo ;
    public Philosopher(int no){
    this.pherNo = no;
    public void run(){
    while(!PhilosopherEating.finished){
    think();
    takeForks(this.pherNo);
    eat();
    putForks(this.pherNo);
    * Thinking
    private void think(){
    System.out.println("Philosopher"+this.pherNo+"is thinking...");
    try {
    Thread.sleep( (int)(Math.random()*100));
    }catch (Exception ex) {
    ex.printStackTrace(System.out);
    * Eating
    private void eat(){
    System.out.println("Philosopher"+this.pherNo+"is eating...");
    try {
    Thread.sleep( (int)(Math.random()*100));
    }catch (Exception ex) {
    ex.printStackTrace(System.out);
    * Take the fork
    private void takeForks(int no){
    //System.out.println("takeForks:no:"+no);
    synchronized (threadLock) {
    pherState[no] = HUNGRY;
    testPher(no);
    * Put down the fork
    private void putForks(int no){
    //System.out.println("putForks:no:"+no);
    synchronized (threadLock) {
    pherState[no] = THINKING;
    if( pherState[getLeft()]==HUNGRY ){
    philosophers[getLeft()].interrupt();
    if( pherState[getRight()]==HUNGRY ){
    philosophers[getRight()].interrupt();
    * Return the NO. of philosopher who is sitting at the left side of this philosopher
    * @return the NO. of the left philosopher
    private int getLeft(){
    int ret = (pherNo-1)<0? PHER_NUM-1 : (pherNo-1);
    return ret;
    * Return the NO. of philosopher who is sitting at the right side of this philosopher
    * @return the NO. of the right philosopher
    private int getRight(){
    int ret = (pherNo+1)>=PHER_NUM ? 0 :(pherNo+1);
    return ret;
    private void testPher(int no){
    while(true){
    if(pherState[no]==HUNGRY
    &&pherState[getLeft()]!=EATING
    &&pherState[getRight()]!=EATING) {
    pherState[no] = EATING;
    //Print and check the philosophers' state
    printPher(pherState);
    return;
    }else{
    try {
    System.out.println(" Philosopher "+this.pherNo+"is waiting a fork");
    threadLock.wait();
    }catch (java.lang.InterruptedException ex) {
    System.out.println(" Philosopher "+this.pherNo+"is interrupted and woken up to take fork");
    //when it is interrupted, do nothing. Just let it continue!
    }//end of while(true)
    * Print and check the philosophers' state.
    * To insure there are no two philosophers sit side by side
    * are eating at the same time.
    private static void printPher(int[] phers){
    System.out.print(" philosophers' state��");
    for (int i = 0; i < phers.length; i++) {
    System.out.print(" "+phers);
    System.out.println("");
    for (int i = 0; i < phers.length-1; i++) {
    if (phers[i]==EATING && phers[i+1]==EATING){
    System.err.println(i+" and "+(i+1)+"two of philosophers sitted side by side are eating at the same time!");
    if (phers[0]==EATING && phers[PHER_NUM-1]==EATING){
    System.err.println("0 and "+PHER_NUM+"two of philosophers sitted side by side are eating at the same time!");
    public static void main(String[] args) {
    for (int i = 0; i < PHER_NUM; i++) {
    PhilosopherEating.pherState[i] = THINKING;
    PhilosopherEating aPhilosopherEating = new PhilosopherEating();
    for (int i = 0; i < PHER_NUM; i++) {
    philosophers[i] = new Philosopher(i);
    philosophers[i].start();
    try {
    Thread.sleep(30000);
    catch (InterruptedException ex) {
    ex.printStackTrace(System.out);
    //End all the threads of philosophers
    PhilosopherEating.finished = true;

    this problem is about learning how to use threads/synchronise objects etc, the efficiency of the code isn't really an issue, if that's what you mean. As for the efficiency of the solution, it's very hard to tell how efficient it is, but as long as all the philosphers get to eat there's no problem. I haven't really scrutized your code, but I'm not sure that you have a deadlock free solution: as long as it is possible for all the phils to pick up one fork at the same time there's a problem, and it seems from your code that each philosopher will pick up "his" fork. Again, I could be wrong, I haven't really looked. If you haven't come up with a solution, try drawing it on paper and working it out, or if you're lazy a quick google will probably give you the answer, but I'm pretty sure nobody here will :)

  • Issue with launching Java Program - Java Library Problem?

    I hope this is the right forum, I apologize if it isn't. I am having issues launching a program for a video game that uses java. One of the devs told me to post my issue here, as he doesn't know how much more help he can give with this issue. Using the java -jar command, this is the printout I get:
    Microsoft Windows [Version 6.0.6002]
    Copyright (c) 2006 Microsoft Corporation.  All rights reserved.
    C:\Users\vecdran>java -version
    java version "1.6.0_20"
    Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
    Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode, sharing)
    C:\Users\vecdran>chdir C:\Games\Steam\Steamapps\common\Crysis\mods\mwll\actionma
    pper\dist
    C:\Games\Steam\steamapps\common\crysis\Mods\mwll\Actionmapper\dist>java -jar Act
    ionmapper.jar
    Jun 18, 2010 2:25:19 PM org.jdesktop.application.Application$1 run
    *SEVERE: Application class mwllactionmapper.MWLLActionmapperApp failed to launch*
    *java.lang.NullPointerException*
    at javax.swing.ImageIcon.<init>(Unknown Source)
    at javax.swing.ImageIcon.<init>(Unknown Source)
    at sun.swing.WindowsPlacesBar.<init>(Unknown Source)
    at com.sun.java.swing.plaf.windows.WindowsFileChooserUI.updateUseShellFo
    lder(Unknown Source)
    at com.sun.java.swing.plaf.windows.WindowsFileChooserUI.installComponent
    s(Unknown Source)
    at javax.swing.plaf.basic.BasicFileChooserUI.installUI(Unknown Source)
    at com.sun.java.swing.plaf.windows.WindowsFileChooserUI.installUI(Unknow
    n Source)
    at javax.swing.JComponent.setUI(Unknown Source)
    at javax.swing.JFileChooser.updateUI(Unknown Source)
    at javax.swing.JFileChooser.setup(Unknown Source)
    at javax.swing.JFileChooser.<init>(Unknown Source)
    at javax.swing.JFileChooser.<init>(Unknown Source)
    at mwllactionmapper.model.ActionmapsFileModel.getMWLLDocumentsFolder(Act
    ionmapsFileModel.java:141)
    at mwllactionmapper.model.ActionmapsFileModel.getMWLLProfiles(Actionmaps
    FileModel.java:160)
    at mwllactionmapper.MWLLActionmapperView.doSelectProfile(MWLLActionmappe
    rView.java:603)
    at mwllactionmapper.MWLLActionmapperView.<init>(MWLLActionmapperView.jav
    a:75)
    at mwllactionmapper.MWLLActionmapperApp.startup(MWLLActionmapperApp.java
    :21)
    at org.jdesktop.application.Application$1.run(Application.java:171)
    at java.awt.event.InvocationEvent.dispatch(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)
    Exception in thread "AWT-EventQueue-0" java.lang.Error: Application class mwllac
    tionmapper.MWLLActionmapperApp failed to launch
    at org.jdesktop.application.Application$1.run(Application.java:177)
    at java.awt.event.InvocationEvent.dispatch(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)
    Caused by: java.lang.NullPointerException
    at javax.swing.ImageIcon.<init>(Unknown Source)
    at javax.swing.ImageIcon.<init>(Unknown Source)
    at sun.swing.WindowsPlacesBar.<init>(Unknown Source)
    at com.sun.java.swing.plaf.windows.WindowsFileChooserUI.updateUseShellFo
    lder(Unknown Source)
    at com.sun.java.swing.plaf.windows.WindowsFileChooserUI.installComponent
    s(Unknown Source)
    at javax.swing.plaf.basic.BasicFileChooserUI.installUI(Unknown Source)
    at com.sun.java.swing.plaf.windows.WindowsFileChooserUI.installUI(Unknow
    n Source)
    at javax.swing.JComponent.setUI(Unknown Source)
    at javax.swing.JFileChooser.updateUI(Unknown Source)
    at javax.swing.JFileChooser.setup(Unknown Source)
    at javax.swing.JFileChooser.<init>(Unknown Source)
    at javax.swing.JFileChooser.<init>(Unknown Source)
    at mwllactionmapper.model.ActionmapsFileModel.getMWLLDocumentsFolder(Act
    ionmapsFileModel.java:141)
    at mwllactionmapper.model.ActionmapsFileModel.getMWLLProfiles(Actionmaps
    FileModel.java:160)
    at mwllactionmapper.MWLLActionmapperView.doSelectProfile(MWLLActionmappe
    rView.java:603)
    at mwllactionmapper.MWLLActionmapperView.<init>(MWLLActionmapperView.jav
    a:75)
    at mwllactionmapper.MWLLActionmapperApp.startup(MWLLActionmapperApp.java
    :21)
    at org.jdesktop.application.Application$1.run(Application.java:171)
    ... 8 more
    C:\Games\Steam\steamapps\common\crysis\Mods\mwll\Actionmapper\dist>As you can see, my Java is completely up to date, and this is the only program I appear to have problems launching. I have no idea what to do from here. :(
    PS.
    I had to add the Java path to my System -> Environmental Variables -> Path variable, as it was not there from the start, and before adding it command prompt wouldn't recognize java commands. Don't know whether this indicates anything.
    Edited by: vecdran on Jun 20, 2010 11:23 AM

    [Bug ID 4711700|http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4711700] is eerily similar to what you're experiencing. Although the bug was reported against an older version of the JDK the last comment provides a workaround to the problem that may be helpful. Good luck.

  • BI setup: WebAS ABAP Setting - Java to ABAP communication problem

    Hello,
    i've got a problem during intallation of BI in Netweaver 2004s. The Diagnostics & Support Desktop Tool reports errors in WebAS ABAP Settings. These errors are:
    - "Web Template Validation failed due Java to ABAP communication problem (return code:ERSBOLAP018)"  with the suggested solution "Check Connector Connection of System Object in Portal System Landscape". What does it mean?
    - "Call ABAP->Java for function RSWR_RFC_SERVICE_TEST failed for destination <destination>" and "Call ABAP->Java for function RSRD_MAP_TO_PORTAL_USERS failed for destination <destination>" with suggested solution "Check the data of the destination in transaction SM59. Check that the target host is running and has registered a program id in the gateway." Run of transaction SM59 returns no errors.
    Further i've take a look in the log 'dev_jrfc.trc' and there i found the errors:
    - Exception thrown by application running in JCo Server
    java.lang.RuntimeException: Bean RSRD_MAP_TO_PORTAL_USERS not found on host <host>
    - Exception thrown by application running in JCo Server
    java.lang.RuntimeException: Bean RSWR_RFC_SERVICE_TEST not found on host  <host>
    - Exception thrown by application running in JCo Server
    java.lang.RuntimeException: Bean RSWR_PREEXECUTION_PROXY not found on host  <host>
    Can these errors be the cause of the WebAS ABAP Setting error displayed in the Diagnostics & Support Desktop Tool? How they can be solved?
    Thanks for your help,
    Martin

    Hello Chetan,
    thanks for your response. Maybe i've described my problem not clear enough. There is no problem of installation and usage of support & dektop tool, but of installation of BI. The support & dektop tool indicates the errors described above with no other hints. My questions is, if anybody knows, what is the cause of the errors and what i must do, to install BI correctly.
    Cheers,
    Martin

  • Using Java UFL with BOE XI

    Post Author: Elvyn
    CA Forum: Migration to XI R2
    We are using CR4E deployed on Linux. Some of our reports use Java UFLs.We are currently migrating to BOE XI and can't find support for Java UFLs.
    1) Is there a way to use Java UFL with BOE XI (on Linux)?2) If it is not supported, is there any alternative?

    Post Author: Elvyn
    CA Forum: Migration to XI R2
    We are using CR4E deployed on Linux. Some of our reports use Java UFLs.We are currently migrating to BOE XI and can't find support for Java UFLs.
    1) Is there a way to use Java UFL with BOE XI (on Linux)?2) If it is not supported, is there any alternative?

  • A Java security or permissions problem?

    First of all, I don't know much about Java, even its naming and version numbering nomenclature, and second, if there is a better group to ask this in, please let me know.
    System is Mac with 10.4.4. I have Java 1.3.1, 1.4.2, and J2SE 5.0 (1.5.0) installed. The Java preferences application lets me choose J2SE 5 or 1.4.2 to run applets via a browser. The problem happens in both settings.
    The problem is that we have a printer that serves a little Java-based management application to view history and otherwise manage it. When I hit the IP, I get the Java coffee cup for a few moments, then a blank area. It fails in both Safari and Internet Explorer.
    I'm pretty sure this used to work in OS X 10.4.3. It works from Windows which has runtime 1.4.something.
    In the Java console, I get the following. (I've snipped some lines.)
    ========================================
    Java Plug-in 1.5.0
    Using JRE version 1.5.0_05 Java HotSpot(TM) Client VM
    User home directory = /Users/timmurray
    java.security.AccessControlException: access denied
    (java.lang.RuntimePermission accessClassInPackage.com.apple.mrj)
    at
    java.security.AccessControlContext.checkPermission(AccessControlContext.java:264 )
    at java.security.AccessController.checkPermission(AccessController.java:427)
    at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
    at java.lang.SecurityManager.checkPackageAccess(SecurityManager.java:1512)
    <snipped 22 similar lines>
    Exception in thread "Thread-17" java.lang.NullPointerException
    at sun.plugin.util.GrayBoxPainter.showLoadingError(GrayBoxPainter.java:153)
    at sun.plugin.AppletViewer.showAppletException(AppletViewer.java:1968)
    at sun.applet.AppletPanel.runLoader(AppletPanel.java:664)
    at sun.applet.AppletPanel.run(AppletPanel.java:320)
    at java.lang.Thread.run(Thread.java:613)
    java.lang.NullPointerException
    at sun.plugin.util.GrayBoxPainter.showLoadingError(GrayBoxPainter.java:153)
    at sun.plugin.AppletViewer.showAppletStatus(AppletViewer.java:1898)
    at sun.applet.AppletPanel.run(AppletPanel.java:365)
    at java.lang.Thread.run(Thread.java:613)
    Exception in thread "thread
    applet-com.efi.appls.webtools.WebToolsApplet.class"
    java.lang.NullPointerException
    at sun.plugin.util.GrayBoxPainter.showLoadingError(GrayBoxPainter.java:153)
    at sun.plugin.AppletViewer.showAppletException(AppletViewer.java:1968)
    at sun.applet.AppletPanel.run(AppletPanel.java:529)
    at java.lang.Thread.run(Thread.java:613)
    ========================================
    This appears like a permissions problem, but I've fixed permissions several times.
    Any idea what the problem is, and is it fixable from my end?

    Problem has finally -- over a year later -- just gone away.

  • Will Java UFLs satisfy reports designed with COM UFLs

    cr_xi_java_ufl.pdf notes that "When using Crystal Reports" to design reports that contain user-defined function libraries (UFL), you can use only Java UFLs or only COM UFLs, but not both".
    Is that purely a statement about configuring the Developer to access the UFLs or does it indicate some sort of distinction between COM and Java UFLs.
    In particular can I take a report designed on Microsoft Windows and including a call to a UF that happened to be exposed by a COM UFL and then run it under Crystal Reports Server XI R2 for Linux using JRC and have the function call evaluated by a Java UF of the same signature within a Java UFL?

    Business Objects led me wrong.  Java UFLs DO satisfy reports designed with COM UFLs.
    If I take a report that was designed under Microsoft Windows and I added functions that were there via COM UFLs (certainly I have proved it by typing the UFL name in directly into the formula editor; I presume it will also work if you drag the COM UFL into the formula editor) and I then place that rpt file on my Linux machine and view that report using Crystal Reports Server XI R2 and Tomcat and JRC and I have Java UFLs on that Linux machine that have the same name and arguments as the COM one then the report runs OK and the Java UFLs do their job.
    (Now that is great news)

  • How can I expend(use) the JAVA UFL in CR XI?

    <p>Dear Expert,</p><p> Now I found the "u211java.jar" file and follow the guide to finish the JAVA UFL implement. My setp is:</p><p>1.  Add following file to the CLASSPATH: CrystalFormulas.jar ,CrystalReportingCommon.jar ,u211java.jar,log4j.are,icu4j.jar, Myfunction.class, MyLibrary.class</p><p>2. Set JAVA_HOME to D:\JDK1.5</p><p>3. Add the following registry key under HKEY_LOCAL_MACHINE\SOFTWARE\Business Objects\Suite 11.0\Crystal Reports : JREPath = path_to_J2SDK\jre\bin\client\jvm.dll</p><p>4. Add reference to the library to the CRConfig.xml file. </p><p class="code"><ExternalFunctionLibraryClassNames></p><p class="code">    <classname>MyLibrary</classname></p><p class="code"></ExternalFunctionLibraryClassNames></p><p>But when I open the CR and enpand the "Additional Function", I can&#39;t find anything like the guide show. Could you tell me how to find the root cause and how to fix it? </p><p>Many thanks!</p><p>Steven</p>

    <p>Java UFLs currently do not work with BusinessObjects Enterprise.  Only the COM UFLs work with Enterprise.</p><p>Currently the Java UFLs only work with the Java Reporting Component which comes with Crystal Reports Developer or Crystal Reports for Eclipse. <br /></p><p>Rob Horne<br /><a href="/blog/10">Rob&#39;s blog - http://diamond.businessobjects.com/blog/10</a></p>

  • Java.lang.OutOfMemoryError: heap allocation failed

    Hi,
    I am facing a strange which i cannot debug..
    Could anyone let me know what could be the exact reason for this kind of error...
    Exception in thread "172.24.36.74:class=SnmpAdaptorServer_172.24.36.74,protocol=snmp,port=161" java.lang.OutOfMemoryError: heap allocation failed
         at java.net.PlainDatagramSocketImpl.receive0(Native Method)
         at java.net.PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:136)
         at java.net.DatagramSocket.receive(DatagramSocket.java:712)
         at com.sun.management.comm.SnmpAdaptorServer.doReceive(SnmpAdaptorServer.java:1367)
         at com.sun.management.comm.CommunicatorServer.run(CommunicatorServer.java:617)
         at java.lang.Thread.run(Thread.java:595)
    terminate called after throwing an instance of 'std::bad_alloc'
    what(): St9bad_alloc
    Ur help on this is very much appreciated...
    Srinivasan.

    You are trying to receive a Datagram with an enormous byte array. The maximum size of a UDP datagram is 65535-28=65507 bytes, and the maximum practical size is 534 bytes.
    Best practice with UDP is to use a byte array one larger than the largest expected datagram, so you can detect truncations: if the size of the received datagram = the size of the byte array, you received an unexpectedly large message and it has probably been truncated.

  • Cannot get Java UFL to work on Vista

    <p>Hi,</p><p>we are having trouble getting our Java UFL to work in CR Designer on a machine running Vista. The same UFL works fine on a XP system. Doing the same setup on the Vista machine simple does not show the "Java UFLs" node in Formula Workshop&#39;s function tree. Additional functions is just empty...</p><p>Are there any special configurations to be done on Vista? Is there any chance to get a detailed error message? (no log4j output is generated) </p><p>Thanks for any ideas</p><p>Stefan</p><p>&#160;</p><p>&#160;</p>

    Sorry. My advice stands.
    Troubleshooting an unsupported system is an exercise in futility. You may or may not succeed but you'll always have the risk of something else going wrong at the worst possible time.
    Bob

  • Java VM: Java HotSpot(TM)  Error in weblogic 8.1 while running crystal rep

    I am trying to call crystal reports 9 RAS through weblogic 8.1.
    I am running a jsp.
    weblogic has jdk141_03.
    But, I am getting error at the below line in the jsp.
    ReportClientDocument clientDoc = new ReportClientDocument();
    The weblogic server crashes out giving below error.
    # HotSpot Virtual Machine Error, Internal Error
    # Please report this error at
    # http://java.sun.com/cgi-bin/bugreport.cgi
    # Java VM: Java HotSpot(TM) Client VM (1.4.1_03-b02 mixed mode)
    # Error ID: 43113F32554E54494D45110E4350500305
    # Problematic Thread: prio=5 tid=0x008E12C8 nid=0x6ec runnable
    Does anyone know the solution.
    thanks..

    i got the sam problem have you fix it yet ?
    please let me know what should i do.

  • Oracle BI 11.1.1.7.1: Calling BI webservices from Plsql Procedure: ORA-29532: Java call terminated by uncaught Java exception: java.lang.NoClassDefFoundError

    Hi,
         I have a requirement of calling BI webservices from Plsql stored procedure. I generated all my wsdl java classes and loaded them into the database. However, when I tried to call one of my java class using stored procedure, it is giving me"ORA-29532: Java call terminated by uncaught Java exception: java.lang.NoClassDefFoundError".
    *Cause:    A Java exception or error was signaled and could not be
               resolved by the Java code.
    *Action:   Modify Java code, if this behavior is not intended.
    But all my dependency classes are present in database as java class objects and are valid. Can some one help me out of this?

    Stiphane,
    You can look in USER_ERRORS to see if there's anything more specific reported by the compiler. But, it could also be the case that everything's OK (oddly enough). I loaded the JavaMail API in an 8.1.6 database and also got bytecode verifier errors, but it ran fine. Here are the errors I got when loading Sun's activation.jar, which ended up not being a problem:
    ORA-29552: verification warning: at offset 12 of <init> void (java.lang.String, java.lang.String) cannot access class$java$io$InputStream
    verifier is replacing bytecode at <init> void (java.lang.String, java.lang.String):12 by a throw at offset 18 of <init> void (java.lang.String, java.lang.String) cannot access class$java$io$InputStream
    verifier is replacing bytecode at <init> void (java.lang.String, java.lang.String):18 by a throw at offset 30 of <init> void (java.lang.String, java.lang.String) cannot access class$java$io$InputStream
    verifier is replacing bytecode at <init> void (java.lang.String, java.lang.String):30 by a throw
    Hope this helps,
    -Dan
    http://www.compuware.com/products/devpartner/db/oracle_debug.htm
    Debug PL/SQL and Java in the Oracle Database

Maybe you are looking for

  • I am new to After Effects and Motion 5 and I have a question

    Hello there, I am currently working on a personal side project for a family member. She would like me to make a video with recorded audio and pictures from the 1920's for my grandmother. I would like to give the parallax and 2.5D effect a try but as

  • Date Customer Exit in the query is not reflecting in the workbook

    Hello. We have a BI 7.0 Query where we have a restriction for req del date and billing date to show the month of current date - 2. We have written 2 customer exit variables and we have restricted the same. The query is working well. For Broadcasting,

  • Threading based on Message-ID's and not just Subject?

    Hi! When I add something to the Subject:-line while replying to a message my reply + subsequent replies from the other party becomes a new thread. To me, this is an error, and it must be because Thunderbird fails to use the following headers: Referen

  • Audio device disabled.

    HP pavilion dv4- 1502tu , windows 7  32- bit, no, no,

  • Odd outbound longdistance issue

    I have a T1 on a 2851 that for some long distance calls will pass 10 digits to the provider but for others will pass only the first 7 digits.... I am out of ideas.... dial-peer voice 200 voip destination-pattern 6... progress_ind setup enable 3 sessi