Datasource & Oracle

Hi! I have a problem!
When i run my client application i have an exception : javax.ejb.CreateException: javax.ejb.EJBException: nested exception is: java.sql.SQLException: No suitable driver
this is the setting in resource.properties:
jdbcDataSource.0.name=jdbc/Oracle
jdbcDataSource.0.url=jdbc\:oracle\:thin\:@localhost\:1521\:EugenZ
jdbcDriver.0.name=oracle.jdbc.driver.OracleDriver
this is my classpath setting:
%J2EE_HOME%\lib\j2ee.jar;%J2EE_HOME%\lib\system\cloudscape.jar;%J2EE_HOME%\lib\system\cloudutil.jar;%J2EE_HOME%\lib\cloudscape\RmiJdbc.jar;%J2EE_HOME%\lib\system\classes12.jar;.
May be problem in server configuration (reset data or not load (setenv.bat)?).
since i already declare classpath for oracle JDBC Driver (classes12.jar), why the program still can't found the oracle.jdbc.driver.OracleDriver? please help. thanks.

See reply in the JDBC Forum. Please do not crosspost.

Similar Messages

  • GET_APPLICATION_PROPERTY(DATASOURCE) = 'ORACLE'  DS 10gR1 vs. DS 10gR2

    I have a form that was compiled under 10gR1 DS and launches fine, but after compiling it under 10gR2 DS it is not responding in the same manner as 10gR1 to an if statement in the code checking to see if it is connected to an ORACLE database.
    In the 10gR1 version of the form
    The check to see if the form was connected to an oracle database would return false after EXIT_FORM(NO_VALIDATE);
    And this is what was expected to happen with the 10gR2 version of the form.
    But in the 10gR2 version of the form
    After the EXIT_FORM(NO_VALIDATE); statement
    the if GET_APPLICATION_PROPERTY(DATASOURCE) = 'ORACLE' statment returns a true and causes the form to break because its not connected to the database anymore but the code in this if statement contains sql against database tables
    How come only for DS 10gR2 after the EXIT_FORM(NO_VALIDATE); statement
    the get_application_property(DATASOURCE) = 'ORACLE' is true, Even though its not connected to the database anymore?
    Thanks,
    Michelle

    HI...i have a similiar problem. we recently migration to 10g and still using oracle forms 6i. Problem is that i have a logon for which check the datasource to determine the status of the login user.
    If the user, currently is expired or logged out, it should remeber a message otherwise if the datasource is not oracle then show unable to connect on log out.
    On the form, there is a on_logon trigger..
    if i do a show message, i can see that if the user is expired it will not pickup the datasource, instead it is null, logging out the user.
    please have a look at the code below:
    logon(:login.user_name,:login.password||'@'||:login.instance_name,false);
    v_datasource := get_application_property(DATASOURCE);
    if v_datasource = 'ORACLE' then
    begin
    select account_status
    into v_status
    from dba_users
    where username = v_username;
    if v_status like 'LOCKED%' then
    v_message := 'This users account is locked - contact support';
    end if;
    if v_status like 'EXPIRED%' then
    :global.user_name := v_username;
    :global.new_password := 'N';
    :global.old_password := v_password;
    call_form('c_passmnt', hide, do_replace, no_query_only);
    if :global.new_password = 'N' then
    v_message := 'Password not changed - contact support';
    else
    :login.user_name := v_old_username;
    :login.password := :global.new_password_new;
    logout; SYNCHRONIZE;
    logon(:login.user_name,:login.password||'@'||:login.instance_name,true);
    end if;
    end if;

  • Bug in WLS 6.1 DataSource + Oracle Pool

    Does any one has arrived to execute an Oracle Stored procedure which
    return a CURSOR in response with JDBC through the DataSource?
    It's working perfectly with WLS 5.1sp9 to 6.0sp2
    and NOT with the 6.1 (even sp1) ...
    Exception : weblogic.jdbc.rmi.internal.ResultSetImpl
    Any idea ?
    Best regards.

    Does any one has arrived to execute an Oracle Stored procedure which
    return a CURSOR in response with JDBC through the DataSource?
    It's working perfectly with WLS 5.1sp9 to 6.0sp2
    and NOT with the 6.1 (even sp1) ...
    Exception : weblogic.jdbc.rmi.internal.ResultSetImpl
    Any idea ?
    Best regards.

  • Connecting via Datasource - Oracle equivalent to DB2DataSource

    Hi
    Have anybody use to connect to oracle via Datasource (using JNDI rather using driver managers) for J2EE (no EJB) development ? (I use WSAD 5.0)
    I had in DB2 there is a class called "DB2DataSource " coming from a package COM.ibm.db2.jndi.DB2InitialContextFactory..
    By digging into Oracle documents in their site they said use following to get InitialContextFactory...
    import com.evermind.sql.DriverManagerDataSource;
    import com.evermind.server;
    Also I included jndi.jar in the project.
    Still I am getting error for above two packages. Where does these packages reside.
    (I have oracle 9i free downloaded version installed)
    What is OC4J ?
    Oracle also said JNDI will beloaded by OC4J.
    Thanks
    Mei

    Hi all
    Thanks for not responding to my question.
    I found that the oracle equivalent package was,
    import oracle.jdbc.pool.OracleDataSource;
    I am all set..
    Mei..

  • Could not retreive datasource oracle in webdynpro

    Hi,
    I've defined a datasource for oracle in the visual administrator :
    jdbc datasource :
    Data Source Type:   driver-based
    Driver Library:  ojdbc14.jar
    SQL Engine:   vendor sql
    Isolation Level:   default
    driver class :   oracle.jdbc.OracleDriver
    URL:  jdbc:oracle:thin:@<host>:<port>:<sid>
    I try to use it in my webdynpro :
    javax.sql.DataSource ds=(javax.sql.DataSource)ctx.lookup(<dataSource name>);
    java.sql.Connection con=ds.getConnection();
    java.sql.Statement stmt=con.createStatement();
    con.close();
    But it throws the following exception :
    com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException: Object not found in lookup of Baical_V1.
    Does someone know what I could do ?
    Thanks
    Regards
    Claire

    Thanks Anilkumar,
    I've resolved my problem :
    this parameters can't work :
    Data Source Type: driver-based
    Driver Library: ojdbc14.jar
    SQL Engine: vendor sql
    Isolation Level: default
    driver class : oracle.jdbc.OracleDriver
    URL: jdbc:oracle:thin:@<host>:<port>:<sid>
    like it is explained in thread :
    JDBC Connector in NetWeaver Dev Studio WebAS
    I couldn't issue with a "driver-based" dataSource type AND the ojdbc14.jar driver like indicated in note 941594.
    I've used this parameters :
    Datasource type: ConnectionPoolDataSource
    JDBC Version: 2.0
    Driver: <name of the ojdbc14.jar deployed driver> (this driver has to be deployed before ! : http://help.sap.com/saphelp_nw04/helpdata/en/80/4f34c587f05048adee640f4c346417/frameset.htm)
    SQL Engine: vendor sql
    Isolation Level: default
    Driver class: oracle.jdbc.pool.OracleDataSourceFactory
    CPDS Classname: oracle.jdbc.pool.OracleConnectionPoolDataSource
    Additional properties:
    url = jdbc:oracle:thin:@host:port:instance
    user = xxxx
    password = yyyyy
    (Names of properties must be lower-cased)
    A good solution to find where was the problem, was to try to declare the datasource directly in the application (adding a data-sources.xml in the META-INF directory http://help.sap.com/saphelp_nw04/helpdata/en/64/0bee3da7138e5be10000000a114084/frameset.htm
    ) so you can have the detail of the exception in the datasource when you deploy the application, whereas when you create a wrong datasource, in the WAS, you have no message !
    Regards,
    Claire

  • NamingException when trying to lookup DataSource (Oracle)

    I am using Sun 6.1 Web Server with Oracle 9i, and we are evaluating these products (so no support contract).
    I have a connection pool configured as follows:
    <RESOURCES>
    <JDBCCONNECTIONPOOL name="foo_pool" datasourceclassname="oracle.jdbc.pool.OracleDataSource" steadypoolsize="8" maxpoolsize="32" poolresizequantity="2" idletimeout="300" maxwaittime="60000" connectionvalidationrequired="on" connectionvalidationmethod="meta-data" validationtablename="" failallconnections="off" transactionisolationlevel="read-committed" isolationlevelguaranteed="off">
    <PROPERTY name="URL" value="jdbc:oracle:thin:@XX.XX.XX.XXX:1521:oracledv"/>
    <PROPERTY name="User" value=" . . . "/>
    <PROPERTY name="Password" value=" . . . "/>
    </JDBCCONNECTIONPOOL>
    <JDBCRESOURCE jndiname="jdbc/foo_pool" poolname="foo_pool" enabled="on"/>
    </RESOURCES>
    Of course the user and password values are filled in.
    The foo_pool object is there within the JDBC context, and the class of the object as reported by listBindings is javax.sql.DataSource.
    I am trying to lookup the DataSource from a JSP deployed within a web app.
    However, I am getting a NamingException with the explanation "cannot create resource instance". The cause and rootCause Throwable fields of this NamingException are null (big help that is).
    The line that causes the exception is the one that invokes lookup on the "jdbc" sub context, with the parameter "foo_pool".
    I have set up JDBC connection pools to Oracle in the past using WebLogic and JBoss, so I am at least somewhat competent at this. Still somehow I get the feeling that some class is missing, or there is an attempt to instantiate the wrong class or an incompatible class, but since there is no information beyond "cannot instantiate" I have no idea where else to look, after having googled until I am blue in the face.
    Can anyone help?
    Thanks,
    Erik

    Does this help?
    http://swforum.sun.com/jive/thread.jspa?forumID=16&threadID=24492

  • User Level Vs. Application Level Authorization and Authentication for Container Managed Datasources (Oracle Connection Pools)

    Oracle Database Server 9i supports the usage of LABELS to enforce highly granular
    resource access restrictions at the database level independent of the application
    that is accessing it. In order to use this however, the particular user, and
    not just the application, accessing the database must be known. Oracle Application
    Server (Oracle's J2EE product line) solves this by providing the ability to PROXY
    the identity of the application user and creditials (SSL Certs for instance) down
    to the database server.
    I haven't seen a similar ability for BEA Weblogic Server 8.1 which allow the user
    identity and credientials to be PROXIED to the database server. Is this possible?
    Have I missed an important document?
    Thanks for any input,
    Raymond Tiong

    On 3 Feb 2004 12:51:26 -0800, Raymond Tiong <[email protected]> wrote:
    >
    Oracle Database Server 9i supports the usage of LABELS to enforce highly
    granular
    resource access restrictions at the database level independent of the
    application
    that is accessing it. In order to use this however, the particular
    user, and
    not just the application, accessing the database must be known. Oracle
    Application
    Server (Oracle's J2EE product line) solves this by providing the ability
    to PROXY
    the identity of the application user and creditials (SSL Certs for
    instance) down
    to the database server.
    I haven't seen a similar ability for BEA Weblogic Server 8.1 which allow
    the user
    identity and credientials to be PROXIED to the database server. Is this
    possible?
    Have I missed an important document?
    Thanks for any input,
    Raymond Tiong
    I think there is a section in the JDBC documentation for 8.1 which
    describes what it takes to utilize Oracle 9i extension called "Virtual
    Private Database". With this extension, one might be able to proxy the
    callers
    identity to the DB.
    See: http://e-docs.bea.com/wls/docs81/jdbc/thirdparty.html#1103627

  • Public webservice as datasource, oracle database as destination

    Hello,
    So: there is some public webservice I need integrate with: http://www.granica.gov.pl/Services/czasyService/granica.wsdl. I need to set this webservice as data source with my odi project. What is the simplest way to do this? Is this possible to create dataserver/model from wsdl and set this as source in my interface?
    Edited by: 960949 on 2012-10-09 00:41

    When I try to invoke this webservice, exception is thrown:
    com.sunopsis.wsinvocation.SnpsWSInvocationException: javax.xml.ws.WebServiceException: java.lang.ExceptionInInitializerError
         at oracle.odi.wsinvocation.client.impl.jaxws.OdiJaxwsClientImpl.requestReply(OdiJaxwsClientImpl.java:73)
         at oracle.odi.wsinvocation.client.impl.jaxws.OdiJaxwsOracleClientImpl.requestReply(OdiJaxwsOracleClientImpl.java:44)
         at com.sunopsis.graphical.wsclient.RequestWsPane$11$1.doInBackground(RequestWsPane.java:1235)
         at com.sunopsis.graphical.tools.utils.swingworker.SwingWorker$1.call(SwingWorker.java:240)
         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
         at java.util.concurrent.FutureTask.run(FutureTask.java:139)
         at com.sunopsis.graphical.tools.utils.swingworker.SwingWorker.run(SwingWorker.java:279)
         at oracle.ide.dialogs.ProgressBar.run(ProgressBar.java:656)
         at java.lang.Thread.run(Thread.java:662)
    Caused by: javax.xml.ws.WebServiceException: java.lang.ExceptionInInitializerError
         at com.sun.xml.internal.ws.client.dispatch.DispatchImpl.doInvoke(DispatchImpl.java:188)
         at com.sun.xml.internal.ws.client.dispatch.DispatchImpl.invoke(DispatchImpl.java:195)
         at oracle.odi.wsinvocation.client.impl.jaxws.OdiJaxwsClientImpl.requestReply(OdiJaxwsClientImpl.java:66)
         at oracle.odi.wsinvocation.client.impl.jaxws.OdiJaxwsOracleClientImpl.requestReply(OdiJaxwsOracleClientImpl.java:44)
         at com.sunopsis.graphical.wsclient.RequestWsPane$11$1.doInBackground(RequestWsPane.java:1237)
         ... 6 more
    Caused by: java.lang.ExceptionInInitializerError
         at com.sun.xml.internal.ws.client.dispatch.DispatchImpl.doInvoke(DispatchImpl.java:173)
         at com.sun.xml.internal.ws.client.dispatch.DispatchImpl.invoke(DispatchImpl.java:195)
         at oracle.odi.wsinvocation.client.impl.jaxws.OdiJaxwsClientImpl.requestReply(OdiJaxwsClientImpl.java:66)
         at oracle.odi.wsinvocation.client.impl.jaxws.OdiJaxwsOracleClientImpl.requestReply(OdiJaxwsOracleClientImpl.java:44)
         at com.sunopsis.graphical.wsclient.RequestWsPane$11$1.doInBackground(RequestWsPane.java:1235)
         at com.sunopsis.graphical.tools.utils.swingworker.SwingWorker$1.call(SwingWorker.java:240)
         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
         at com.sunopsis.graphical.tools.utils.swingworker.SwingWorker.run(SwingWorker.java:278)
         at oracle.ide.dialogs.ProgressBar.run(ProgressBar.java:655)
         ... 1 more
    Caused by: java.lang.ClassCastException: com.sun.xml.bind.v2.runtime.JAXBContextImpl
         at com.sun.xml.internal.ws.fault.SOAPFaultBuilder.<clinit>(SOAPFaultBuilder.java:533)
         at com.sun.xml.internal.ws.client.dispatch.DispatchImpl.doInvoke(DispatchImpl.java:173)
         at com.sun.xml.internal.ws.client.dispatch.DispatchImpl.invoke(DispatchImpl.java:195)
         at oracle.odi.wsinvocation.client.impl.jaxws.OdiJaxwsClientImpl.requestReply(OdiJaxwsClientImpl.java:66)
         at oracle.odi.wsinvocation.client.impl.jaxws.OdiJaxwsOracleClientImpl.requestReply(OdiJaxwsOracleClientImpl.java:44)
         at com.sunopsis.graphical.wsclient.RequestWsPane$11$1.doInBackground(RequestWsPane.java:1237)
         at com.sunopsis.graphical.tools.utils.swingworker.SwingWorker$1.call(SwingWorker.java:240)
         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
         at java.util.concurrent.FutureTask.run(FutureTask.java:139)
         at com.sunopsis.graphical.tools.utils.swingworker.SwingWorker.run(SwingWorker.java:279)
         at oracle.ide.dialogs.ProgressBar.run(ProgressBar.java:656)
         ... 1 more
    What's wrong?

  • Need example of  "validation query" under Data & Services Datasources Oracle Advanced Settings

    Courious how to use it for some sort of proxy validation into the oracle 10/11 database.
    Anyone using it?
    Also interested in knowing anything about "Log Activity" and "Log database calls to _______________"

    Hi,
    Could you elucidate with an example of how one would go about doing that.  I did find an old thread,
    Re: How to ACCEPT values on APEX page sent from outside APEX through POSTmethod
    but as you are suggesting perhaps there is a 'better way' to do this now with the new Listener and Apex RESTful web services.  I think it is great that we can now create RESTful service pretty easily from queries on one database through the Workspace RESTful services module, but how to ACCEPT values eludes this 'newbie' user of web services.
    Pat

  • How to configure Oracle Datasource in Tomcat

    Hello,
    My configuration of a Tomcat Datasource (oracle) appears to be wrong. Either that or my oraclejdbc.jar file is in the wrong place. Perhaps my classpath setting is wrong. Any help is appreciated.
    Tomcat console error:
    20070423 20:46:22.514 http-8080-Processor24(0x005878d2)
    JdbcUtil#getDataSourceObject() Throw com.waveset.util.ConfigurationError: Failed to load JDBC DataSource 'java:comp/env/jdbc/wrsPool':
    ==> javax.naming.OperationNotSupportedException: Can't generate an absolute name for this namespace
    Trace output from JdbcUtil:
    XPRESS exception:
    Can't call method getDataSourceObject on class com.waveset.util.JdbcUtil ==> com.waveset.util.ConfigurationError: Failed to load JDBC DataSource 'java:comp/env/jdbc/wrsPool': ==> javax.naming.OperationNotSupportedException: Can't generate an absolute name for this namespace
    XPRESS exception:
    Can't call method queryRecords on class com.waveset.util.JdbcUtil ==> java.lang.NullPointerException:
    The express code used to call JdbcUtil follows:
    <defvar name='dataSource'>
    <new class='javax.sql.DataSource'/>
    </defvar>
    <set name='dataSource'>
    <invoke name='getDataSourceObject' class='com.waveset.util.JdbcUtil'>
    <null/>
    <s>java:comp/env/jdbc/wrsPool</s>
    <null/>
    </invoke>
    </set>
    The Tomcat configuration *.xml file
    <?xml version='1.0' encoding='utf-8'?>
    <Context docBase="wavex" path="/wavex" useNaming="false" workDir="work\Catalina\localhost\wavex">
    <Resource name="jdbc/waveexPool " type="javax.sql.DataSource"/>
    <Resource name="jdbc/wrsPool" type="javax.sql.DataSource"/>
    <ResourceParams name="jdbc/waveexPool ">
    <parameter>
    <name>url</name>
    <value>jdbc:sqlserver://localhost:1433;DatabaseName=WaveEx</value>
    </parameter>
    <parameter>
    <name>password</name>
    <value></value>
    </parameter>
    <parameter>
    <name>maxActive</name>
    <value>4</value>
    </parameter>
    <parameter>
    <name>maxWait</name>
    <value>5000</value>
    </parameter>
    <parameter>
    <name>driverClassName</name>
    <value>com.microsoft.sqlserver.jdbc.SQLServerDriver</value>
    </parameter>
    <parameter>
    <name>username</name>
    <value></value>
    </parameter>
    <parameter>
    <name>maxIdle</name>
    <value>2</value>
    </parameter>
    </ResourceParams>
    <ResourceParams name="jdbc/wrsPool">
    <parameter>
    <name>url</name>
    <value>jdbc:oracle:thin:@vega.vf.lmco.com:1521:dev2</value>
    </parameter>
    <parameter>
    <name>password</name>
    <value></value>
    </parameter>
    <parameter>
    <name>maxActive</name>
    <value>4</value>
    </parameter>
    <parameter>
    <name>maxWait</name>
    <value>5000</value>
    </parameter>
    <parameter>
    <name>driverClassName</name>
    <value>oracle.jdbc.driver.OracleDriver</value>
    </parameter>
    <parameter>
    <name>username</name>
    <value></value>
    </parameter>
    <parameter>
    <name>maxIdle</name>
    <value>2</value>
    </parameter>
    </ResourceParams>
    </Context>
    Environment is:
    IDM 7.0 on Windows 2000, sql server houses the repository.
    Tomcat 5.0.28 with JDK 1.6

    thanks for the reply, i have configured the connection pool settings in the tomcat.
    I created a class with static method, which will return the connection object.
    whenever i need the connection object, iam invoking the static method, once its usage is over iam closing thew connection..
    is it the right way of using the connection object in the web application.

  • J2EE RI: error in creating Oracle XA Datasource

    I want to use the Oracle XA driver within Sun's J2EE Reference Implementation.
    So I put the JDBC driver JAR files to the $J2EE_HOME/lib/system directory and add it to the J2EE_CLASSPATH environment variable.
    Then I add the XA Datasource with the following command:
    j2eeadmin -addJdbcXADatasource jdbc/MyXADB oracle.jdbc.xa.client.OracleXADataSource
    TEST_USER TEST_PWD -props serverName=myserver portNumber=1521 databaseName=work
    driverType=thin
    When I start the server an error occurs. The log file system.err contains the following error mesage:
    Binding DataSource, name = jdbc/MyXADB, url = jdbc/MyXADB__xa
    Binding DataSource, name = jdbc/MyXADB__xa, dataSource = oracle.jdbc.xa.client.OracleXADataSource@7b6643
    Error in creating data source object: jdbc/MyXADB__xa
    The log file error.log contains the following message:
    Logging for J2EE Server Version: 1.3_01-b01 started at: Thu Oct 25 19:05:14 CEST 2001..
    Using the Java HotSpot(TM) Client VM and the version number 1.3.1_01 from Sun Microsystems Inc..
    VM is using the classpath: d:\j2sdkee1.3\lib\system\cloudscape.jar;d:\j2sdkee1.3\lib\system\tools.jar;d:\j2sdkee1.3\lib\cloudscape\RmiJdbc.jar;d:\j2sdkee1.3\lib\cloudscape\cloudclient.jar;d:\j2sdkee1.3\lib\classes;d:\j2sdkee1.3\classes;d:\j2sdkee1.3\lib\j2ee.jar;d:\j2sdkee1.3\lib\locale;d:\j2sdkee1.3\lib\system\classes12.zip;d:\j2sdkee1.3\lib\system\jndi.zip;d:\j2sdkee1.3\lib\system\jta.zip;d:\jdk1.3.1\lib\tools.jar;d:\j2sdkee1.3\lib\jhall.jar .
    J2EE Home Directory has been set to: d:\j2sdkee1.3.
    javax.naming.CommunicationException: java.rmi.MarshalException: CORBA BAD_PARAM 1398079494 Maybe; nested exception is:
         org.omg.CORBA.BAD_PARAM: minor code: 1398079494 completed: Maybe
         at com.sun.enterprise.naming.SerialContext.rebind(SerialContext.java:226)
         at com.sun.enterprise.naming.SerialContext.rebind(SerialContext.java:238)
         at javax.naming.InitialContext.rebind(InitialContext.java:370)
         at com.sun.enterprise.naming.NamingManagerImpl.publishObject(NamingManagerImpl.java:210)
         at com.sun.enterprise.naming.NamingManagerImpl.publishObject(NamingManagerImpl.java:169)
         at com.sun.enterprise.resource.ResourceInstaller.installJdbcXADataSources(ResourceInstaller.java:466)
         at com.sun.enterprise.resource.ResourceInstaller.installJdbcDataSources(ResourceInstaller.java:353)
         at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:268)
         at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:913)
    Thank you for any help!

    Hi Manfed,
    I've got exactly the same problem mit j2sdkee 1.3.1. Have yor resolved the problem in the meantime?
    If so, please post the solution. Thanks.
    Helmut

  • In Java,how can I get remote oracle server's system time using a XAOracle datasource

    I want to get remote oracle server's system time,for example,I use a TxDataSource:
    DRIVER className:weblogic.jdbc.oci.xa.XADataSource
    URL:jdbc:weblogic:oracle:lanhaibo
    JNDI Name:
    the following is the code which shows the exception that: sqlexception:the JDBC2.0
    method is not implemented,why? what should I do?:
    Properties prop = new Properties();
    prop.put(Context.INITIAL_CONTEXT_FACTORY,
    "weblogic.jndi.WLInitialContextFactory");
    prop.put(Context.PROVIDER_URL,"t3://"+"localhost"+":" + "7001");
    initCtx = new InitialContext(prop);
    DataSource ds = (DataSource)initCtx.lookup(strDataSource);
    Connection conn = ds.getConnection();
    String sqlQuery = "select to_char(sysdate,'yyyy') YYYY,to_char(sysdate, 'MM')
    MM,to_char(sysdate, '" +
    "dd') DD,to_char(sysdate, 'hh24') HH,to_char(sysdate, 'mi') MI,to_char(sysdate,
    '" +
    "ss') SS from dual"
    preparedStatement pstmt = conn.prepareStatement(sqlQury);
    StringBuffer sb = new StringBuffer();
    ResultSet resultset = pstmt.executeQuery();
    if(rs.next()){
    strYear = rs.getString("yyyy");
    strMonth = rs.getString("MM");
    strDay = rs.getString("DD");
    strHour = rs.getString("HH");
    strMinute = rs.getString("MI");
    strSecond = rs.getString("SS");
    sb.append(strYear);
    sb.append("/");
    sb.append(strMonth);
    sb.append("/");
    sb.append(strDay);
    sb.append(" ");
    sb.append(strHour);
    sb.append(":");
    sb.append(strMinute);
    sb.append(":");
    sb.append(strSecond);

    Joden asked:
    "I want to get a remote oracle server's time by XADataSource,
    use:"select sysdate from dual", but return a null value,and give
    the message"sqlexception the jdbc2.0 method is not implemented",
    why?"
    Let me see your code. A simple executeQuery() should do the trick:
    Statement s = c.createStatement();
    ResultSet r = s.executeQuery("select sysdate from dual");
    while (r.next())
    java.sql.Timestamp t = r.getTimestamp(1);
    Guillaume Grussenmeyer wrote:
    Hi.
    I guess you are using weblogic.jdbc.oci.xa.XADataSource as a
    datasource.
    Weblogic JDriver for Oracle "implementation" is really weak as a lot
    of methods are not implemented.
    This is why you get this message.
    You may find the (very impressive) list of non implemented methods at
    http://e-docs.bea.com/wls/docs70/oracle/API_joci.html#1162621 (sorry
    HTML links don't seem to work here).
    Any call to one of this methods will give you these nasty message and
    exception.
    Try to use the "official" Oracle JDBC driver XA Datasource
    (oracle.jdbc.xa.client.OracleXADataSource) instead of Weblogic JDriver
    for Oracle one's.

  • Who can explain how EJB connect to Oracle9i DB with DataSource?

    I have taken 4 days into this problem. I am developing EJB with J2EE1.3 and Oracle9i DB, I can connect to DB in code with DriverManager. But I want to use DataSource to connect to DB. I failed, I can not get new way to resolve it when I after try to connect with javax.sql.DataSource, oracle.jdbc.pool.OracleDataSource and oracle.jdbc.pool.OracleConnectionPoolDataSource.
    I have got different Exceptions when I coding different ways:
    one is:
    Caught an exception.
    java.rmi.ServerException: RemoteException occurred in server thread; nested exce
    ption is:
    java.rmi.RemoteException: nested exception is: javax.ejb.EJBException: U
    nable to connect to database. com.sun.enterprise.resource.JdbcDataSource; nested
    exception is:
    javax.ejb.EJBException: Unable to connect to database. com.sun.enterpris
    e.resource.JdbcDataSource
    java.rmi.RemoteException: nested exception is: javax.ejb.EJBException: Unable to
    connect to database. com.sun.enterprise.resource.JdbcDataSource; nested excepti
    on is:
    javax.ejb.EJBException: Unable to connect to database. com.sun.enterpris
    e.resource.JdbcDataSource
    javax.ejb.EJBException: Unable to connect to database. com.sun.enterprise.resour
    ce.JdbcDataSource
    <<no stack trace available>>
    the Other is:
    Caught an exception.
    java.rmi.ServerException: RemoteException occurred in server thread; nested exce
    ption is:
    java.rmi.RemoteException: nested exception is: javax.ejb.EJBException: U
    nable to connect to database. makeConnection:Io Exception: Connection refused(DESCRIP
    TION=(TMP=)(VSNNUM=150999297)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4)
    ))); nested exception is:
    javax.ejb.EJBException: Unable to connect to database. makeConnection:Io
    Exception: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=150999297)(ERR=12505)(ERROR_
    STACK=(ERROR=(CODE=12505)(EMFI=4))))
    java.rmi.RemoteException: nested exception is: javax.ejb.EJBException: Unable to
    connect to database. makeConnection:Io Exception: Connection refused(DESCRIPTION=(TM
    P=)(VSNNUM=150999297)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4)))); nes
    ted exception is:
    javax.ejb.EJBException: Unable to connect to database. makeConnection:Io
    Exception: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=150999297)(ERR=12505)(ERROR_
    STACK=(ERROR=(CODE=12505)(EMFI=4))))
    javax.ejb.EJBException: Unable to connect to database. makeConnection:Io Exception: C
    onnection refused(DESCRIPTION=(TMP=)(VSNNUM=150999297)(ERR=12505)(ERROR_STACK=(E
    RROR=(CODE=12505)(EMFI=4))))
    <<no stack trace available>>
    My codes related are:
    private void makeConnection() throws NamingException, SQLException {
    try{
    InitialContext ic = new InitialContext();
    OracleConnectionPoolDataSource ocpds = (OracleConnectionPoolDataSource) ic.lookup(dbName);
    PooledConnection pc = ocpds.getPooledConnection();
    con = pc.getConnection();
    }catch(SQLException ex){
    throw new SQLException("makeConnection:" + ex.getMessage());
    DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
    con = DriverManager.getConnection(
    "jdbc:oracle:thin:@172.28.200.43:1521:shcd",
    "lijun", "xiaotian"); */
    public void setEntityContext(EntityContext context) {
    this.context = context;
    try {
    makeConnection();
    } catch (Exception ex) {
    throw new EJBException("Unable to connect to database. " +
    ex.getMessage());
    I believe I set JNDI and config EJB right, because I can run it with Cloudscape DB all right.
    who can tell me where is my WRONG, or tell me how to connect to Oracle9i DB?

    Hi Jhlijun,
    I am facing the same problem at the moment. However, I am not using a pooled connection. The following is my code. I am trying to connect a stateless session bean to an Oracle 9i database with result being fed back to a jsp page.
    package Test;
    import javax.naming.*;
    import java.sql.*;
    import java.util.*;
    import javax.ejb.*;
    import javax.sql.DataSource;
    import javax.sql.*;
    public class TestSessionEJBbean extends java.lang.Object implements javax.ejb.SessionBean
    String q="Select NAMETITLE,NAMEFIRST,NAMELAST from People where PeopleRSN<100";
         protected boolean create() throws java.lang.Exception
    return true;
    public TestSessionEJBbean()
    {   // EJB constructors don't have a server context.
    private void unhandledEvent( String listenerName, String methodName, java.lang.Object event )
    // method for interface javax.ejb.SessionBean
    public void ejbActivate() throws javax.ejb.EJBException, java.rmi.RemoteException
    // To Do
    // method for interface javax.ejb.SessionBean
    public void ejbPassivate() throws javax.ejb.EJBException, java.rmi.RemoteException
    // To Do
    // method for interface javax.ejb.SessionBean
    public void ejbRemove() throws javax.ejb.EJBException, java.rmi.RemoteException
    // To Do
    // method for interface javax.ejb.SessionBean
    public void setSessionContext( javax.ejb.SessionContext parm0 ) throws javax.ejb.EJBException, java.rmi.RemoteException
    this._sessionContext = parm0;          // generated helper code
    // To Do
    * Test Method
    public String Test() throws javax.ejb.EJBException
    return "Hi! I am the SessionEjbBean.";
    * Session Context of this EJB.
    * Set in 'setSessionContext()' before any 'ejbCreate()' is executed.
    private javax.ejb.SessionContext _sessionContext;
    * ejbCreate Method
    public void ejbCreate() throws javax.ejb.EJBException, javax.ejb.CreateException
    try {
    create(); // This 'create()' is used for internal initialization.
    catch( java.lang.Exception __e) {
    System.err.println( __e.toString() + " " + __e.getMessage() );
    // TODO: implement
    * getDBConnection Method
         public sun.jdbc.rowset.CachedRowSet getDBConnection() throws javax.ejb.EJBException
         String testPrint = "Starting...";//Only to check output
         Connection conn;
         sun.jdbc.rowset.CachedRowSet crset=null;
         try {
              testPrint += "before new InitialContext()....";//Only to check output
              InitialContext ic = new InitialContext();
              DataSource ds = (DataSource)ic.lookup("java:comp/env/jdbc/coquit");
              testPrint += "before ds.getConnection()....";//Only to check output
              conn = ds.getConnection("coquit","coquit");          
                   testPrint += "before conn.createStatement()....";
                   Statement stmt=conn.createStatement();
                   testPrint += "before stmt.executeQuery(....)";
                   ResultSet rset = stmt.executeQuery(q);
                   testPrint += "before new sun.jdbc.rowset.CachedRowSet()";     
                   crset = new sun.jdbc.rowset.CachedRowSet();
                   testPrint += "before crset.populate(rset)";
                   crset.populate(rset);
                   rset.close();
                   stmt.close();
                   conn.close();
         } catch (NamingException ne) {
         System.out.println("TestSessionEJBbean::getDBConnection Naming Exception " + ne);
         }catch (Exception e){
         System.out.println(testPrint+"...TestSessionEJBbean::getDBConnectionException" + e);
         System.out.println("\n\n");
         e.printStackTrace();
         return crset;

  • A lot of problems with Oracle BI SEE 11g

    I have a lot of problems with Oracle BI SEE 11g
    1. I upgraded my BI SEE 10 repository and can it openning in offline mode.
    2. I can't deploy my upgraded repository in EM MW Control 11g - when i try to open Farm_bifoundation_domain->Business Intelligence->coreapplication, i get error "Stream closed
    For more information, please see the server's error log for an entry beggining with: Server Exception during PPR, #41".
    Opening Logs by EM control doesn't work too.
    in file middleware\user_projects\domains\bifoundation_domain\servers\AdminServer\logs\AdminServer.log i see this event:
    <Error> <HTTP> <oratest.itera.ru> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <b639ac3e56e9a463:bd6fa7f:12ac7271e09:-8000-00000000000009e8> <1283408423378> <BEA-101019> <[ServletContext@329875093[app:em module:/em path:/em spec-version:2.5]] Servlet failed with IOException
    java.io.IOException: Stream closed
    Have you any ideas?
    3. Ok, i taking sample repository and adding a new datasource in it:
    Database: Oracle 8i
    Connection pool:
    Call interface OCI 8i/9i
    Data source name:
    (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP) (Host = oraapp) (Port = 1521) ) ) (CONNECT_DATA = (SID = MYSID) ) )
    This settings are working fine in BI 10.
    In BI 11g i get this funny error: "The connection has failed". I lost my time in attempts to connect to Oracle DB 8, but have not results. After that i hacked button "Query DBMS" at "Features" tab, pressed it and when get error "ORA-03134: Connections to this server version are no longer supported.".
    Therefore Oracle 8 DB as datasource not supported. Am i right?
    4. In sample repository i added oracle DB 10 as datasource, then added two dual tables and their connection to all layers.
    Now i open BI Answers, and trying to create report with one dummy column, Now i have this error:
    Error
         View Display Error
    Odbc driver returned an error (SQLExecDirectW).
    Error Details
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 42016] Check database specific features table. Must be able to push at least a single table reference to a remote database (HY000)
    SQL Issued: SELECT s_0, s_1 FROM ( SELECT 0 s_0, "ORA10G"."dual"."dummy" s_1 FROM "ORA10G" ) djm
    Database features are defaults.
    Does anyone solve this problem?

    Turribeach, Thanks for you time.
    1. It was not a question
    3. Yes, i have read platforms, but not supported datasources. Now i see, that BI 11g support as datasource Oracle DB 9.2.0.7 or higher. I am sorry.
    4. I'm using OCI connection type
    Now i recreate Database in Physical schema and answers is showing report data for me! But only from one table, when i use columns from to tables from one datasource, i geting error:
    Error View Display Error Odbc driver returned an error (SQLExecDirectW). Error Details Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 46008] Internal error: File server/Utility/Server/DataType/SUKeyCompare.cpp, line 875. (HY000) SQL Issued: SELECT s_0, s_1, s_2 FROM ( SELECT 0 s_0, "Ora10g"."hierarchy_obj_cust_v"."sort_order" s_1, "Ora10g"."NSI_SCHEMA"."SCHEMA_NAME" s_2 FROM "Ora10g" ) djm
    Edited by: serzzzh on 03.09.2010 3:44

  • Oracle 8i jdbc/Tomcat connection issues

    Tomcat 4.1.8
    Oracle 8i JDBC Driver
    I have been able to create the DataSource as a global resource and as a local resource inside the context of the application.
    The code hangs when it attempts to create a connection. I have been able to connect to the database and perform the necessary query in a standalone application to ensure that I actually can connect.
    JSP Code:
    <html>
    <head>
    <title>VTW App</title>
    </head>
    <body>
    <%
    vtw.VTWApp tst = new vtw.VTWApp();
    tst.init();
    %>
    <h2>Results</h2>
    <%= tst.getList() %>
    </body>
    </html>
    Java Code (Class called by JSP):
    package vtw;
    import javax.naming.*;
    import javax.sql.*;
    import java.sql.*;
    public class VTWApp {
    String list = "EMPTY";
    public void init() {
    try{
    Context ctx = new InitialContext();
    if(ctx == null )
    throw new Exception("Boom - No Context");
    System.out.println("Context Created ...");
    DataSource ds =
    (DataSource)ctx.lookup(
    "java:comp/env/jdbc/oracleDB");
    if (ds != null) {
              System.out.println("DataSource Created ...");
    Connection conn = ds.getConnection();
    System.out.println("Connection Pulled");
    if(conn != null) {
                   System.out.println("Connection Good");
                   Statement st = conn.createStatement();
                   String query = "";
                   query += "select grpid, to_char(min(dtlastendtime),'mm-dd-yyyy hh24:mi:ss') ";
                   query += "from calc_table where equipmentsernum in (";
                   query += "'888000','888001'";
                   query += ") group by grpid";
                   ResultSet rs = st.executeQuery(query);
                   if(rs != null) {
                        list = "";
                        while(rs.next()) {
                             list += (rs.getString(1) + "," + rs.getString(2));
                   rs.close();
                   conn.close();
                   System.out.println("Connection Closed");
              } else {
                   System.out.println("Connection Not Established");
    }catch(Exception e) {
    e.printStackTrace();
    public String getList() { return list; }
    }

    I figured out the issue ...
    In the server.xml file the resource & resource params needed to be modified..
    1. Set type to oracle.jdbc.pool.OracleDataSource
    2. Set factory to oracle.jdbc.pool.OracleDataSourceFactory
    3. In the Java code cast the context lookup to an OracleDataSource instead of a java.sql.DataSource
    Oracles DataSource does not subclass the jdbc DataSource for its OracleDataSource class everything works fine now.
    <Resource name="jdbc/mydb" scope="Shareable" type="oracle.jdbc.pool.OracleDataSource"/>
    <ResourceParams name="jdbc/mydb">
    <parameter>
    <name>validationQuery</name>
    <value></value>
    </parameter>
                   <parameter>
                        <name>factory</name>
                        <value>oracle.jdbc.pool.OracleDataSourceFactory</value>
                   </parameter>
    <parameter>
    <name>driverClassName</name>
    <value>oracle.jdbc.driver.OracleDriver</value>
    </parameter>
    <parameter>
         <name>url</name>
         <value>jdbc:oracle:thin:@server.company.com:1521:dbname</value>
    </parameter>
    <parameter>
    <name>password</name>
    <value>guest</value>
    </parameter>
                   <parameter>
                        <name>maxWait</name>
                        <value>10000</value>
                   </parameter>
                   <parameter>
                        <name>maxActive</name>
                        <value>100</value>
                   </parameter>
    <parameter>
    <name>user</name>
    <value>guest</value>
    </parameter>
    <parameter>
    <name>maxIdle</name>
    <value>2</value>
    </parameter>
    </ResourceParams>

Maybe you are looking for