Java application to call BOXI cluster report server

Dear all,
We have a BOXI 3.1 cluster consisting of 2 servers, says server1 and server2.
Which server should the java application call to? server1 or server2? I don't realize there is BOXI cluster common hostname that can be resolved by DNS.
If the application calls to server1, what if server1 is down?
Many thanks

For the Java version of the BusinessObjects Enterprise SDK starting with XI 3.x, CMS members and their "Name Server Port" are persisted by the SDK in the file %HOME%\.businessobjects\clusterinfo.1200.properties file.    This file is read when SessionMgr is instantiated.
When logon method with a CMS member name/port is invoked, it's looked up to determine what cluster the member belongs to, as recorded in the properties file.  Then a random CMS member from that cluster is selected, and connection is attempted to that CMS Name Server.
So regardless of what CMS name you enter for the logon, it should at least fail over to a live one.
The only issue happens if there's no clusterinfo.1200.properties file (i.e., fresh install on the SDK machine) or not accessible (if the process has no rights to access that file).  Then you have to ensure the CMS name you enter is to a live one.    If it's a fresh install and there's sufficient file access, the initial contact with a live CMS Name Service will retrieve all CMS members, and the SDK will update teh properties file.
So you shouldn't have to worry about which CMS name you specify.
Sincerely,
Ted Ueda

Similar Messages

  • Java Application connectivity to Coherence cluster

    I am looking around the options for Java application connecting to Coherence cluster..
    These are the options I seem to have
    1. Coherence Extend -
    2. Make Java application as a cluster member with no storage
    what are the pros/cons?
    Thanks

    Hi,
    Here are my thought off the top of my head
    *1. Use Extend if...*
    <li> Your application is short lived - i.e. does not run for very long (minutes)
    <li> Your application is not located close (in network terms) to the rest of the cluster
    <li> Your client uses a different version of Coherence to the cluster (there are caveats around this)
    <li> The client application is being developed by another team and its release cycle is not under your control
    Pros:
    Good for short lived applications
    Good for remotely located clients
    Can be written in other languages than Java
    Cons:
    Extend will perform slower than a cluster member as every request goes via the proxy server and then to the rest of the cluster.
    If using an invocation service where you want to run invocables across the cluster it needs a two step process.
    A badly written Extend client can perform requests which could take out the proxy server
    *2. Use a cluster member if...*
    <li> Your application runs for a long time - i.e. it is something like a web or application server
    <li> Your application is well behaved - i.e. does not have big GC pauses. A very badly behaved cluster member can destabilize the rest of the cluster
    <li> Your application is located close (in network terms) to the rest of the cluster
    Pros:
    Faster than an Extend client
    Cons:
    Needs to be stable
    Needs to be located close to the rest of the cluster
    Hope that helps as a start
    JK

  • How to run java application in Unix Box

    Hi,
    Would anybody show me how to run my server application in unix box?
    Thank you very much.
    Hung

    Your application should have a main class. Suppose it's called MyMain.class. I'll assume it's in the anonymous package. So you cd to the directory containing the class, and type java MyMainIf it's not in the default package, or is a jar file, say so.

  • What should be done in certmap.conf for 2-way SSL support from a standalone Java application to an SSL enabled LDAP Server

    To support certficate based client authentication using 2-way SSL from a standalone java application which uses JNDI and JSSE1.0.2 to connect to an SSL enabled LDAP Server how do we configure the certmap.conf?Is there any additional setup required at the LDAP Server side apart from enablinf SSL with the option"Required Client Authentication" enabled.The 2 way SSL handshake goes through but the access log file (After configuring the certmap.conf for the issuer DN of the client certficate etc..)shows SSL failed to LDAP DN?But inspite of this access log error the Java client does get an SSL Connection object with which it is able to connect to the LDAP.IS the certmap.conf file being looked up by the LDAP Server at all?

    have you out.flush() and out.close() before you call connection.getInputStream()?

  • Making jar file for java application with third party (Crystal Report)

    Hi all,
    I'm writing a java program that integrate with Crystal Report, I can run it in JBuilder fine, but when I try to make a jar file with JBuilder and run it, it either doesn't work or give me error.
    Case 1: If i only include the "dependencies", the program run but it woun't call the report when I open it. It give me the following error:
    com.businessobjects.reports.sdk.JRCCommunicationAdapter
    com.crystaldecisions.sdk.occa.report.lib.ReportSDKException: com.businessobjects.reports.sdk.JRCCommunicationAdapter---- Error code:-2147215357 Error code name:internal
         com.crystaldecisions.sdk.occa.report.lib.ReportSDKException.throwReportSDKException(ILjava.lang.String;)V(Unknown Source)
         com.crystaldecisions.proxy.remoteagent.z.a(Ljava.lang.String;)Lcom.crystaldecisions.proxy.remoteagent.ICommunicationAdapter;(Unknown Source)
         com.crystaldecisions.sdk.occa.report.application.ReportAppSession.int()V(Unknown Source)
         com.crystaldecisions.sdk.occa.report.application.ReportAppSession.initialize()V(Unknown Source)
         com.crystaldecisions.sdk.occa.report.application.ClientDocument.for()V(Unknown Source)
         com.crystaldecisions.sdk.occa.report.application.ReportClientDocument.for()V(Unknown Source)
         com.crystaldecisions.sdk.occa.report.application.ClientDocument.open(Ljava.lang.Object;I)V(Unknown Source)
         com.crystaldecisions.reports.sdk.ReportClientDocument.open(Ljava.lang.Object;I)V(Unknown Source)
         GOV.NE.REVENUE.LB775.CRYSTALREPORT.JRCViewReport.launchApplication(JRCViewReport.java:43)
         GOV.NE.REVENUE.LB775.LB775$5.actionPerformed(LB775.java:1114)</message>
    case 2: if I include the "dependence and resources" when create jar file, then the program won't run. It gives me a message:
    Cannot find main class. Program will exit.
    But I do have the manifest.mf file that contain the main class.
    Thank you very much for any help.

    Hello, I have the same problem, did you solved it?
    Thanks

  • Java.lang.OutOfMemoryError while starting Standalone Reports Server

    I am trying to start a standalone report server on AIX box, but is giving following error
    bash-3.00$ rwserver.sh server=repservername &
    java.lang.OutOfMemoryError: JVMXE006:OutOfMemoryError, stAllocAor executeJava failed
    kindly help

    was able to solve this
    there was corruption of reports config file

  • Servlet calls to Oracle Report Server

    I have an app server (oracle 9ias) which will be available to
    the public.
    However, I also have an oracle report server that produces pdf
    reports from an rdf template but the server will not be
    available to the public.
    How can I use JSP,java servlets or other means to access the
    report server from via the app server and generate the pdf
    reports to the clients browser, bearing in mind that the client
    has no direct access to the oracle report server?

    In your JSP or servlet you can make a URLConnection to the
    reports server, passing all appropiate paramters across in the
    URL ex/ http://reports_server/reportApplication/rwcgi60.exe?
    DESFORMAT=pdf&DESTYPE=FILE&DESNAME=outputname&server=servername&p
    aram1=...&param2=... etc. you can place all the report
    parameters and values and all the Oracle Report specific
    paramters on the URL in the above format. After you open the
    java.net.URLConnection with the appropiate connection, the
    report is submitted, you can then get any error streams, or
    codes from the URLConnection API.
    Jeff

  • Deploy Java Application in E Business Suite Apps Server

    Hi Gurus,
    Is it possible to deploy custom Java application using the bundle E Business Suite Apps Server?
    If yes, can you provide me a reference or a step by step guide that will help me do so.
    Many thanks

    The following metalink notes will helpful for u too
    Java Concurrent Program FAQ [ID 827575.1]
    How To Create a Java Concurrent Program? [ID 827563.1]
    How to register and execute Java Concurrent Program ?in Oracle Applications R11i ? [ID 186301.1]
    Regards
    Mazhar Hussain

  • Java application -  processing files on different unix server

    Hi,
    I was wondering if it is possible to
    a) read a file that is on a different unix server to the one that my java application is on
    b) move a file from one directory on the remote unix server to another directory on the remote unix server
    Regards,
    sabretooth

    for (b):
    If I were you I would set up a FTP account for your app on the remote unix server. Then I would get my hands on a simple ftp framework
    and simply:
    Ftp ftp = new Ftp("UNIXHostIP", username, password);
    ftp.connect();
    ftp.moveRemoteFile("form here","to here");
    ftp.disconnect();
    some frameworks:
    JScape, iNet Factory: com.jscape.inet.ftp.Ftp
    /n software, IP*Works: ipworks.Ftp
    Enterprise Distributed Technologies, Java FTP Client Library: com.enterprisedt.net.ftp.FTPClient
    IBM alphaWorks, FTP Bean Suite: com.ibm.network.ftp.protocol.FTPProtocol
    SourceForge, JFtp: net.sf.jftp.net.FtpConnection
    The Jakarta Project, Jakarta Commons/Net: org.apache.commons.net.ftp.FTPClient
    JavaShop JNetBeans: jshop.jnet.FTPClient
    Sun, JDK: sun.net.ftp.FtpClient
    Florent Cueto, JavaFTP API: com.cqs.ftp.FTP
    Bea Petrovicova, jFTP: cz.dhl.ftp.Ftp
    The Globus Project, Java CoG Kit: org.globus.io.ftp.FTPClient
    I recomend JScape's INetFactory (Easy to use)
    OR the one from Jakarta (Free)
    IP*Works (TOP Quality at a price)
    Check out http://www.javaworld.com/javaworld/jw-04-2003/jw-0404-ftp.html
    for a complete review of all the ftp frameworks
    Firewalls?
    make a folder that is public on the unix server-ie falls outside the firewall if there is one (fire walls might cause problems for you)
    Unless you know the password to get through the Proxy then this should not be a problem.

  • Standalone java application that calls Db2

    Hi,
    I am trying to use coherence in my standalone java
    application that makes JDBC calls to Db2.
    The sql statemet is like below:
    select lastName,firstName from employee where empNo=2224;
    In the application,I would read from the flat file say
    200 account numbers and query the database.
    If I have queried the database already with the given
    account,I want to retreive from the cache.
    I am having real trouble in getting this work with
    coherence software.
    Any psudo code in this regard will help me a lot.
    Thanks
    DJon

    Hi Jon,
    Thanks for the mail.I am struck in
    implementing the coherence in the sample program.
    any help in this regard is appreciated.
    Thanks
    DJon
    Below is the sample program that works without coherence.go to db2 and get the information.
    import java.sql.*;
    import java.util.*;
    public class DB2Client
    static void printColumn(String in)
    System.out.print(in);
    System.out.print(" | ");
    public static void main(String[] args)
    Driver myDriver = null;
    Connection myConnection = null;
    try
    myDriver =
    (Driver)Class.forName("com.ibm.db2.jcc.DB2Driver").newInstance();
    myConnection =
    DriverManager.getConnection("jdbc:db2:sample","dujon","jeff");
    PreparedStatement myStatement
    = myConnection.prepareStatement("SELECT
    empno,firstnme,lastname FROM employee where empno > ?");
    myStatement.setString(1,"00");
    ResultSet
    myResults=myStatement.executeQuery();
    while (myResults.next())
    printColumn(myResults.getString("empno") + "");
    printColumn(myResults.getString("firstnme") + "");
    printColumn(myResults.getString("lastname"));
    System.out.println();
    } catch (Exception e)
    e.printStackTrace();
    } finally
    try
    if (myConnection != null)
    myConnection.close();
    } catch (Exception e)
    Now,to implement the above sample with
    coherence I have written 2 programs.
    1. TangosolDB2Cache.java
    2. TestDB2Cache.java
    import com.tangosol.net.cache.CacheStore;
    import com.tangosol.util.Base;
    import java.sql.DriverManager;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.Collection;
    import java.util.Iterator;
    import java.util.LinkedList;
    import java.util.List;
    import java.util.Map;
    * An example implementation of CacheStore
    * interface.
    * @author erm 2003.05.01
    public class TangosolDB2Cache extends
    Base implements CacheStore
    // ----- constructors
    * Constructs DBCacheStore for a given
    database table.
    * @param sTableName the db table name
    public TangosolJDBCCache(String
    sTableName)
    m_sTableName = sTableName;
    configureConnection();
         * Set up the DB connection.
         protected void configureConnection()
              try
    Class.forName("com.ibm.db2.jcc.DB2Driver");
                   m_con =
    DriverManager.getConnection(DB_URL, DB_USERNAME, DB_PASSWORD);
                   m_con.setAutoCommit(true);
              catch (Exception e)
                   throw ensureRuntimeException(e,
    "Connection failed");
         // ---- accessors
    * Obtain the name of the table this
    CacheStore is persisting to.
    * @return the name of the table this
    CacheStore is persisting to
    public String getTableName()
    return m_sTableName;
    * Obtain the connection being used to
    connect to the database.
    * @return the connection used to
    connect to the database
    public Connection getConnection()
    return m_con;
    // ----- CacheStore Interface
    * Return the value associated with the
    specified key, or null if the
    * key does not have an associated
    value in the underlying store.
    * @param oKey key whose associated
    value is to be returned
    * @return the value associated with
    the specified key, or
    * <tt>null</tt> if no value is
    available for that key
    public Object load(Object oKey)
    Integer iKey = (Integer)key;
         return query("select
    lastName,firstName from employee where empNo = " + iKey);
    * Store the specified value under the
    specific key in the underlying
    * store. This method is intended to
    support both key/value creation
    * and value update for a specific key.
    * @param oKey key to store the
    value under
    * @param oValue value to be stored
    * @throws
    UnsupportedOperationException if this implementation or the
    * underlying store is
    read-only
    public void store(Object oKey, Object
    oValue)
              mycacheTable(oKey,oValue);
    public void erase(Object oKey)
         public void eraseAll(Collection
    colKeys)
              throw new
    UnsupportedOperationException();
         public Map loadAll(Collection colKeys)
              throw new
    UnsupportedOperationException();
         public void storeAll(Map mapEntries)
              throw new
    UnsupportedOperationException();
         // ----- data members
         Hashtable mycacheTable = new Hashtable(1000);
         * The connection.
         protected Connection m_con;
         * The db table name.
         protected String m_sTableName;
         * Driver class name.
         private static final String DB_DRIVER =
    "org.gjt.mm.mysql.Driver";
         * Connection URL.
         private static final String DB_URL =
    "jdbc:db2:sample";
         * User name.
         private static final String DB_USERNAME =
    "dujon";
         * Password.
         private static final String DB_PASSWORD =
    "jeff";
    TESTING THE ABOVE PROGRAM
    import com.tangosol.net.cache.CacheStore;
    import com.tangosol.util.Base;
    import
    com.tangosol.net.cache.MapCacheStore;
    import java.sql.DriverManager;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.Collection;
    import java.util.Iterator;
    import java.util.LinkedList;
    import java.util.List;
    import java.util.Map;
    public class TestDB2Cache {
         public static void main(String args[]){
                        TangosolJDBCCache mycache = new
    TangosolDB2Cache("employee");
                        Connection
    con=mycache.configureConnection();
                        MapCacheStore cacheStuff = new
    MapCacheStore(HashMap hmap);
                        String[] employeeNumbers =
    {"000010","000020","000030","000040","000050"};
                                  // find whether it has been cached already
                                       for(int
    i=0;i<employeeNumbers.length();i++){
                                       oCurValue =
    cacheStuff.load(employeeNumbers);
                                       if(oCurValue == null){
                                            // execute SQL statement
                                            con.executeQuery(oCurKey);
                                       else
                                            //get from cache the values and return
                                            cacheStuff.load(oCurKey);

  • Move subscription jobs from SQLServer Box to Report Server.

    environment info:
    All SQL Server 2008 r2 on Windows server 2008 r2.
    Reporting Services (SSRS instance) name: SSRSServerR
    There is no SQL Server installed on the reporting server.
    Production SQL Server instance Name: SQLServerP
    Now the person who installed the SQLServerP under a mistake installed the whole suite and installed the reporting services too on this machine.
    Scenario:
    Since the production sql server instance (SQLServerP) has the reporting services installed too
    AND
    The report server (SSRSServerR) doesnot have the SQLServer installed on it, this has resulted the subscription jobs on the production server.
    I want to migrate these subscription Jobs from SQLServerP to SSRSServerR
    I belive the following should be the steps:
    1. Install the SQL Server on the reporting server so that it may host the report server and report server tempDB databases.
    2. Restore the reportserver database on the reporting server. This will automatically put all of the subscriptions on the Report server.
    3. Schedule the reports again so that the jobs will be created again.
    Now the questions:
    1.    Is the above thought correct.  Please let me know if you want to add anything.
    2.     Since the new SQL Server installed on the report server will host the reportserver and reportserver tempdb databases, what edition of sql server is required. Will standard edition be enough.
    3.    To move the reporting subscription jobs, can I just script those from the SQLServerP and restore them on the newly installed sql instance on SSRSServerR.

    Hi Aanya,
    Your approach overall seem to be ok, a couple of things:
     - Once you restore the ReportServer database on the SSRS server, you don't need to schedule the reports as the schedules will be restored
    as well.
    - As part of the restore, all the SQL Agent jobs(related to subscriptions) will be copied over as well.
    - Once you finish restoring the ReportServer database on the SSRS server, you'll need to do some basic configuration as explain in the below
    MSDN article.
    I suggest you to go though this article -
    Moving the Report Server Databases to Another Computer
    Hope this helps.
    Shahfaisal Muhammed http://shahfaisalmuhammed.blogspot.com

  • Where to define .rpt file location in Crystal Report Server 2008

    Hi all,
    I have installed Crystal Report Server 2008 in my machine and trying to invoking the report from my java application. Earlier we have used Crystal Report Server XI Release 2 and in my java application i am passing crystal report server name, report name, parameters and it is woking fine in Crystal Report Server XI Release 2. But now I have installed Crystal Report Server 2008.
    In Crystal Report Server XI Release 2, we have a option to provide the report directory folder from the computer. That is in Central Configuration Manager - > Right click on Report Application Server -> Properties -> Parameter Tab -> Change Option Type to Server and And Select directory which contains the .rpt files.
    Like the same way, i need to give the report directory path in Crystal Report Server 2008. Then only the report server will find the report from the directory and display it. In my application i am passing the report name to the crystal report server. The report server will find the exact report from that folder from the local system and display it in application.
    I can able to give the report file directory in Crystal Report Server XI Release 2, but cannot able in Crystal Report Server 2008.
    Pls help me how could i do this?

    In Command Line Parameters of ReportApplicationServer

  • Error calling Report and unable to bind Report Server

    Hi,
    I use Oracle Database 10g with Oracle Developer 10.1.2, in Windows 2000.
    I don't have nor use Oracle Application Server though.
    I tried to call a report from a Form, using Run_Report_Object.
    But the following error appeared.
    Error FRM-41213 Unable to connect to Report Server rep_<computer_name>
    I also tried to call a report, using Web.Show_Document.
    It launch another web browser, but the following error occured
    REP-51002: Bind to Reports Server rep_<computer_name> failed
    Based on the white paper of Oracle Application Server 10g - Integrating Oracle Reports in Oracle Forms Services applications.
    I create my own report server using following command
    rwserver server=repsrv.
    Another java-based windows showed up. It shows that the server 'repsrv' is ready.
    I do the following:
    1. Navigate to http://localhost:8889/reports/rwservlet using web browser.
    It showed OracleAS Report Services - Servlet Command Help page.
    But there is no other window popup (The white paper stated that a 'in process' server
    should be invoked when starting a report for the first time).
    2. Navigate to http://localhost:8889/reports/rwservlet?userid=PRACTICE/PRTC@MYDB&report=C:\PRACTICE\FORM\MODULE1.JSP&destype=cache&desformat=html&paramform=no&p_1=P1&p_1=P2
    my schema is PRACTICE, password PRTC and database instance MYDB
    the report path = C:\FORM\MODULE1.JSP
    The following error occured
    REP-51002: Bind to Reports Server rep_<computer_name> failed
    3. Finally, I tried
    http://localhost:8889/reports/rwservlet?server=REPSRV&userid=PRACTICE/PRTC@MYDB&report=C:\PRACTICE\FORM\MODULE1.JSP&destype=cache&desformat=html&paramform=no&p_1=P1&p_1=P2
    The following error occured
    REP-51002: Bind to Reports Server repsrv failed
    I don't understand.
    It seems that the Report Service is not recognized although the java-based window state that the Report Server (repsrv) is ready.
    My questions:
    1. Does it means that my report server is not running?
    Or it is running but the web browser didn't recognize it?
    I use Internet Explorer 5 and Netscape 7, both of them showed the same error message.
    2. The paper said there is supposed to be 2 type of server, 'In process' and custom server.
    Both of them will create a configuration file in /reports/conf in DevSuiteHomeDirectory.
    I can see the custom report server's configuration file which I create using rwserver
    (repsrv.conf)
    but I can't see the 'in process' server's configuration file (rep_<computer_name>.conf).
    What am I supposed to do?
    3. Is there any steps with I supposed to do after the installation?
    Well, I didn't find any error during the installation, everything seems to be just fine.
    Perhaps, I need to modify some files, specifya report server name,
    create the 'in process' server manually.
    Many thanks,
    Imelda

    Hi,
    I have already tried your suggestion.
    Since I am in Windows 2000 platform, so I do the first suggestion from the documentation.
    If the host machine is not in a network (that is, it is a standalone machine).
    Solution for Windows platform: Install the MS loopback adapter, as described on the Miscrosoft Web site (http:\\microsoft.support.com). Then, specify an IP address for your machine (either XP or Windows 2000), as follows:
    1. On your desktop, right-click My Network Places, and choose Properties.
    2. Right-click the MS loopback adapter, and choose Properties.
    3. In the Properties dialog box, select Internet Protocol (TCP/IP), and click Properties.
    4. Select Use the following IP address, and enter a valid IP address. The subnet mask field will automatically populate. Do not use the local host IP (that is, 127.0.0.1). For example, enter: 198.162.1.1.
    5. Click OK, and follow the instructions displayed.
    There is also solution for UNIX platform.
    But I do the Solution for Windows platform only.
    But still I've got the following error message :
    REP-51002: Bind to Reports Server rep_<computer_name> failed
    And in the command line of OC4J which I started, the following error appeared :
    Not able to load oracle.reports.util.EnvironmentGlobal class
    Using oracle.reports.util.Environment class
    BTW,
    I also tried to use the command lin rwrun :
    rwrun report="D:\My Documents\TryReport\module1.jsp" userid=scott/tiger@orcl destype=file desformat=pdf desname="D:\My Documents\TryReport\module1.pdf"
    And somehow a PDF file appeared.
    It contains the output of the report I created.
    It exactly the same as the preview of the web layout which is run from Report Builder (Run Web Layout CTRL-R).
    Could this mean that the In-Process server is running?
    Perhaps the browser did not understand how to connect to Report Server?
    Is there anything should be done?
    Should I also do the Solution for UNIX platform? (Mine is Windows)
    And, why for Oracle Form (running as a servlet), everything seems to be normal?
    Does the Oracle Form use different server from Oracle Report?
    The problem is only when I tried to call report using a button inside Oracle Form.
    (Run_Report_Object and Web.Show_Document)
    Any light would be grateful.
    Many thanks,
    Buntoro

  • Error while running Java application using Crystal Reports 2011

    Hello,
    I would like to ask for your help.
    Environment details:
    Java based standalone application in Development environment.
    Crystal Reports 2011 (no SP applied)
    Oracle 11g ( 32 bit client installed)
    Win7 64 bit OS.
    Workflow:
    While running the java application, which will display the reports I am getting the below mentioned error. I guess that is because I am missing the Crystal runtimes (Correct me if I am wrong).
    I know that CR2011 do not have any sdks/ jar available for deployment. In this case, which runtimes should I be using? Does installing CR2011 be enough in the development box?
    Please provide me the link from which I can download the same.
    Let me know if I need to provide more details on this. Any suggestions are most welcome.
    Thank You.
    Code used:
    reportClientDoc = new ReportClientDocument();
    System.err.println("Opening the Report ");
    reportClientDoc.open(REPORT_PATH, 0);
    // this is where the error or exception is thrown
    _Error: _
    log4j:WARN No appenders could be found for logger (com.crystaldecisions.reports.reportdefinition.ReportDocument).
    log4j:WARN Please initialize the log4j system properly.
    com.crystaldecisions.sdkreport.lib.ReportSDKException: com/businessobjects/reports/jdbinterface/common/DBException---- Error code:-2147467259 Error code name:failed
                    at com.businessobjects.reports.sdk.JRCCommunicationAdapter.<init>(SourceFile:286)
                    at com.businessobjects.sdk.erom.jrc.a.<init>(SourceFile:43)
                    at com.businessobjects.sdk.erom.jrc.ReportAgentFactory.createAgent(SourceFile:46)
                    at com.crystaldecisions.proxy.remoteagent.RemoteAgent.<init>(SourceFile:703)
                    at com.crystaldecisions.proxy.remoteagent.RemoteAgent.a(SourceFile:662)
                    at com.crystaldecisions.proxy.remoteagent.RemoteAgent.a(SourceFile:632)
                    at com.crystaldecisions.sdk.report.application.ClientDocument.if(SourceFile:504)
                    at com.crystaldecisions.sdk.report.application.ClientDocument.open(SourceFile:669)
                    at com.crystaldecisions.reports.sdk.ReportClientDocument.open(Unknown Source)
                    at rp.batch.bo.RpJRCExportReport.runReportExport(RpJRCExportReport.java:517)
                    at rp.batch.bo.RpSchedReportRun.process(RpSchedReportRun.java:163)
                    at rp.batch.bo.RpSchedReportRun.drive(RpSchedReportRun.java:240)
                    at rp.batch.bo.RpSchedReportRun.main(RpSchedReportRun.java:265)
    Caused by: java.lang.NoClassDefFoundError: com/businessobjects/reports/jdbinterface/common/DBException
                    at com.crystaldecisions.reports.queryengine.Session.a2(SourceFile:244)
                    at com.crystaldecisions.reports.datafoundation.DataFoundation.do(SourceFile:376)
                    at com.crystaldecisions.reports.dataengine.dfadapter.DFAdapter.do(SourceFile:111)
                    at com.crystaldecisions.reports.dataengine.datafoundation.CreateDataConnectionCommand.new(SourceFile:81)
                    at com.crystaldecisions.reports.common.CommandManager.a(SourceFile:71)
                    at com.crystaldecisions.reports.common.Document.a(SourceFile:203)
                    at com.businessobjects.reports.reportconverter.v12.e.a(SourceFile:442)
                    at com.businessobjects.reports.reportconverter.v12.e.a(SourceFile:231)
                    at com.businessobjects.reports.reportconverter.v12.d.m(SourceFile:192)
                    at com.businessobjects.reports.reportconverter.v12.f.if(SourceFile:210)
                    at com.businessobjects.reports.reportconverter.v12.V12SaveLoader.a(SourceFile:242)
                    at com.businessobjects.reports.loader.ReportLoader.a(SourceFile:205)
                    at com.businessobjects.reports.sdk.JRCReportLoader.a(SourceFile:137)
                    at com.businessobjects.reports.sdk.JRCReportLoader.a(SourceFile:76)
                    at com.businessobjects.reports.sdk.requesthandler.ReportDocumentRequestHandler.a(SourceFile:136)
                    at com.businessobjects.reports.sdk.JRCCommunicationAdapter.<init>(SourceFile:229)
                    ... 12 more
    Caused by: java.lang.ClassNotFoundException: com.businessobjects.reports.jdbinterface.common.DBException
                    at java.net.URLClassLoader1.run(URLClassLoader.java:200)
                    at java.security.AccessController.doPrivileged(Native Method)
                    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
                    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
                    at sun.misc.LauncherAppClassLoader.loadClass(Launcher.java:301)
                    at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
                    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
                    ... 28 more

    Help me ...
    Ambient:
    Crystal Reports Viewer 14.0.0.0
    java.vendor = Sun Microsystems Inc.
    java.version = 1.6.0_37
    os.name = Windows NT (unknown)
    os.version = 6.2
    os.arch = amd64
    Exception:
    com.crystaldecisions.sdk.occa.report.lib.ReportSDKException: com.businessobjects.sdk.erom.jrc.ReportAgentFactory---- Error code:-2147215357 [CRSDK00000026] Error code name:internal
              at com.crystaldecisions.sdk.occa.report.lib.ReportSDKException.throwReportSDKException(ReportSDKException.java:112)
              at com.crystaldecisions.proxy.remoteagent.RemoteAgent.createDefaultAgent(RemoteAgent.java:1000)
              at com.crystaldecisions.sdk.occa.report.application.ClientDocument.initRemoteAgent(ClientDocument.java:770)
              at com.crystaldecisions.sdk.occa.report.application.ClientDocument.open(ClientDocument.java:961)
              at com.crystaldecisions.sdk.occa.report.application.ReportClientDocument.open(ReportClientDocument.java:226)
              at src.HelloWorldSwing.createAndShowGUI(HelloWorldSwing.java:54)
              at src.HelloWorldSwing.main(HelloWorldSwing.java:24)
    Source:
    import java.awt.BorderLayout;
    import javax.swing.JFrame;
    import com.crystaldecisions.ReportViewer.ReportViewerBean;
    import com.crystaldecisions.sdk.occa.report.application.DatabaseController;
    import com.crystaldecisions.sdk.occa.report.application.OpenReportOptions;
    import com.crystaldecisions.sdk.occa.report.application.ReportClientDocument;
    import com.crystaldecisions.sdk.occa.report.data.IConnectionInfo;
    import com.crystaldecisions.sdk.occa.report.reportsource.IReportSource;
    public class HelloWorldSwing {
               * @param args
              public static void main(String[] args) {
                        HelloWorldSwing pgm = new HelloWorldSwing();
                        try {
                                  pgm.createAndShowGUI();
                        } catch (Exception e) {
                                  e.printStackTrace();
                                  //JOptionPane.showMessageDialog(null, e.toString());
               * @throws Exception
              public void createAndShowGUI() throws Exception {
                        // Make sure we have nice window decorations.
                        JFrame.setDefaultLookAndFeelDecorated(false);
                        // Create and set up the window.
                        JFrame frame = new JFrame("HelloWorldSwing");
                        frame.setTitle("Titolo del Report");
                        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                        ReportViewerBean viewer = new ReportViewerBean();
                        viewer.init(new String[0], null, null, null);
                        ReportClientDocument rpt = new ReportClientDocument();
                        rpt.setReportAppServer(ReportClientDocument.inprocConnectionString); // inproc:jrc
                        rpt.open("Report.rpt", OpenReportOptions._openAsReadOnly);
                        IReportSource rptSource = rpt.getReportSource();
                        viewer.setReportSource(rptSource);
                        frame.getContentPane().add(viewer, BorderLayout.CENTER);
                        frame.setSize(1930, 1030);
                        frame.setVisible(true);
                        viewer.start();

  • How to call function in included dll file through java application.

    Hi All,
    i am trying to create an java application which call c# functions using JNI. i am completed with the code and it is running fine when i tried to run from netbeans IDE. But when i tried from Calculator.jar file, first time it throws this error:
    F:\JavaProjects\Calculator\dist>Java -jar Calculator.jar
    Exception in thread "main" java.lang.UnsatisfiedLinkError: no CSharpClient in java.library.path
    at java.lang.ClassLoader.loadLibrary(Unknown Source)
    at java.lang.Runtime.loadLibrary0(Unknown Source)
    at java.lang.System.loadLibrary(Unknown Source)
    at calculator.CalculatorApp.<clinit>(CalculatorApp.java:20)
    After that i included that dll file in the cuurent directory. And compiled and tried to run, it throws an unexpected error:
    F:\JavaProjects\Calculator\dist>Java -jar Calculator.jar
    *# An unexpected error has been detected by Java Runtime Environment:*
    *# Internal Error (0xe0434f4d), pid=2640, tid=3700*
    *# Java VM: Java HotSpot(TM) Client VM (1.6.0_02-b06 mixed mode, sharing)*
    *# Problematic frame:*
    *# C [kernel32.dll+0x12a5b]*
    *# An error report file with more information is saved as hs_err_pid2640.log*
    *# If you would like to submit a bug report, please visit:*
    *# http://java.sun.com/webapps/bugreport/crash.jsp*
    Anyone have idea how to solve this error.
    Thanks in advance.

    This error is created whenever things go sour on the native side. The first thing you can try, and I assume you are using a Java<->C++<->C# bridge which includes two dlls, one created by C++ and another by C#. Is to make sure that the C# dll is compiled using /t:module switch during compilation.
    If you are using VS2008, or VS2005, you can add a post build syntax like:
    csc /t:module /out:"$(ProjectDir)$(OutDir)YourModule.dll" "$(ProjectDir)YourCSfile.cs"
    Hope this helps! If not, ensure first that the native code works by creating a native test app for it.

Maybe you are looking for