Connection Pooling SQL EXception - MSSQL JDBC

guys,
i am running a mssql jdbc driver from microsoft(with javax support) and i can't get it running on my sun one server. Btw, I have tested this driver by connecting using a normal connection and it worked.. right now i am connecting via sun one's connection pooling interface. Do i need to use a diffrent connection string aside from connection as illustrated in the docs jdbc:microsoft:sqlserver://192.168.0.1:1433;databaseName=emp" have.. I am having these messages...
Exception
javax.servlet.ServletException: com.sun.enterprise.repository.J2EEResourceException
java.lang.NoSuchMethodException: setServerName
     at org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:507)
     at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:448)
     at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:266)
     at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1292)
     at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:510)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
     at org.apache.catalina.core.StandardWrapperValve.invokeServletService(StandardWrapperValve.java:720)
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:309)
     at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:212)
     at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:203)
     at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
     at com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.java:157)
     at com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)
Root Cause
java.sql.SQLException: com.sun.enterprise.repository.J2EEResourceException
java.lang.NoSuchMethodException: setServerName
     at com.sun.enterprise.resource.JdbcDataSource.internalGetConnection(JdbcDataSource.java:261)
     at com.sun.enterprise.resource.JdbcDataSource.getConnection(JdbcDataSource.java:98)
     at wasp.hr.login.action.LoginSubmitAction.execute(LoginSubmitAction.java:59)
     at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:446)
     at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:266)
     at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1292)
     at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:510)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
     at org.apache.catalina.core.StandardWrapperValve.invokeServletService(StandardWrapperValve.java:720)
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:309)
     at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:212)
     at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:203)
     at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
     at com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.java:157)
     at com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)

I am having similiar issue on this as well.. Did you ever resolve this problem successfully?
Thanks,
--kuan                                                                                                                                                                                                                       

Similar Messages

  • Java Web Server 6.1 & Pooled SQL Server 2000 JDBC Connections

    If anyone can shed some light on this problem I would greatly appreciate it.
    I am unsuccessfully trying to use a database connnection retrieved from a pool configured using Java System Web Server 6.1 with the SQL Server 2000 JDBC Driver.
    The background:
    1. I have downloaded the SQL Server 2000 JDBC Driver and installed it on the web server.
    2. I used the Administration GUI to add the .jars(namely msbase.jar, msutil.jar, and mssqlserver.jar), to the classpath.
    3. Upon creating a simply JSP to access connection metadata using the direct connect method, ie.,
    Class.forName( com.microsoft.jdbc.sqlserver.SQLServerDriver);
    Connection con = DriverManager.getConnection( "jdbc:microsoft:sqlserver:// ....
    I am shown a successful output of...
    JDBC Test
    Registering JDBC Driver
    driverClass: com.microsoft.jdbc.sqlserver.SQLServerDriver loaded and registered.
    Driver Information
    Driver Name: SQLServer
    Driver Version: 2.2.0037
    Database Information
    Database Name: Microsoft SQL Server
    Database Version: Microsoft SQL Server 2000 - 8.00.760 (Intel X86) Dec 17 2002 14:22:05 Copyright (c) 1988-2003 Microsoft Corporation Enterprise Edition on Windows NT 5.2 (Build 3790: )
    Avalilable Catalogs
    catalog: master
    catalog: msdb
    catalog: Northwind
    catalog: pubs
    catalog: tempdb
    4. This tells me that the web server has access to the files necessary and the classpath is configured correctly.
    Now the fun begins...
    In order to set up the JDBC Connection Pool I have done the following...
    1. I have created a web.xml file for the web-app which contains the JSP and includes the following entry
    <resource-ref>
    <res-ref-name>jdbc/devjwscp</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
    </resource-ref>
    2. I have used the "JDBC Connection Pools" link under the "Java" tab in the Administration GUI to create a connection pool.
    "Pool Name:" is "devjwscp"
    "DataSource Classname" is set to "com.microsoft.jdbcx.sqlserver.SQLServerDataSource". All other properties have been left alone.
    3. I have used the "JDBC Resources" link under the "Java" tab in the Administration GUI to create a JNDI resource.
    "JNDI Name" is set to "jdbc/devjwscp"
    "Status" is "true"
    "Pool Name" is "devjwscp"
    The web-app JSP comes back with the following exception.
    JDBC Test
    Exception Thrown
    Cannot create resource instance
    javax.naming.NamingException: Cannot create resource instanceorg.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:167)
    javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:301)
    org.apache.naming.NamingContext.lookup(NamingContext.java:834)
    org.apache.naming.NamingContext.lookup(NamingContext.java:181)
    org.apache.naming.NamingContext.lookup(NamingContext.java:822)
    org.apache.naming.NamingContext.lookup(NamingContext.java:181)
    org.apache.naming.NamingContext.lookup(NamingContext.java:822)
    org.apache.naming.NamingContext.lookup(NamingContext.java:181)
    org.apache.naming.NamingContext.lookup(NamingContext.java:822)
    org.apache.naming.NamingContext.lookup(NamingContext.java:194)
    org.apache.naming.SelectorContext.lookup(SelectorContext.java:183)
    javax.naming.InitialContext.lookup(InitialContext.java:347)
    _jsps._jdbctest_jsp._jspService(_jdbctest_jsp.java:236)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:908)
    com.iplanet.ias.web.jsp.JspServlet$JspServletWrapper.service(JspServlet.java:667)
    com.iplanet.ias.web.jsp.JspServlet.serviceJspFile(JspServlet.java:447)
    com.iplanet.ias.web.jsp.JspServlet.service(JspServlet.java:363)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:908)
    org.apache.catalina.core.StandardWrapperValve.invokeServletService(StandardWrapperValve.java:771)
    org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:322)
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:509)
    org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:212)
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:509)
    org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:209)
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:509)
    com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.java:161)
    com.iplanet.ias.web.WebContainer.service(WebContainer.java:586)
    4. FYI my server.xml <RESOURCE> entry looks as is shown below
    <RESOURCES>
    <JDBCCONNECTIONPOOL name="devjwscp" datasourceclassname="com.microsoft.jdbcx.sqlserver.SQLServerDataSource" steadypoolsize="8" maxpoolsize="32" poolresizequantity="2" idletimeout="300" maxwaittime="60000" connectionvalidationrequired="off" connectionvalidationmethod="auto-commit" validationtablename="" failallconnections="off" transactionisolationlevel="read-uncommitted" isolationlevelguaranteed="off">
    <PROPERTY name="serverName" value="secret"/>
    <PROPERTY name="portNumber" value="1433"/>
    <PROPERTY name="User" value="secret"/>
    <PROPERTY name="Password" value="secret"/>
    </JDBCCONNECTIONPOOL>
    <JDBCRESOURCE jndiname="jdbc/devjwscp" poolname="devjwscp" enabled="on"/>
    </RESOURCES>
    What gives? Do I need to add anything else to the server.xml? I know the server.xml for JWS differs from Apache. I have done an exhaustive search of the web. Many other individuals have had the same thing happen, buy none of them offered any explaination or remedy.
    Thanks in advance.

    Hi,
    Were you able to get it working.
    I am using
    Sun ONE Web Server 6.1SP2 B04/07/2004 18:47
    I am still getiing the same error. I also suspect that there is something wrong with thr DTD too. It gives me the following when the server comes up.
    Sun ONE Web Server 6.1SP2 B04/07/2004 18:47
    Listening for transport dt_socket at address: 1699
    info: CORE5076: Using [Java HotSpot(TM) Server VM, Version 1.4.2_04] from [Sun M
    icrosystems Inc.]
    info: WEB0100: Loading web module in virtual server [https-AW-NYNY-D609628.nna.
    wdpr.disy.com] at [acsanet]
    info: WEB0100: Loading web module in virtual server [https-AW-NYNY-D609628.nna.
    wdpr.disy.com] at [testing]
    failure: WEB0120: XML error parsing deployment descriptor [C:/Sun/WebServer6.1/h
    ttps-AW-NYNY-D609628.nna.wdpr.disy.com/webapps/https-AW-NYNY-D609628.nna.wdp
    r.disy.com/testing/WEB-INF/sun-web.xml]
    Failed to create the XML-DOM Document. Check your XML to make sure it is correc
    t.org.xml.sax.SAXParseException: Character conversion error: "Unconvertible UTF-8
    character beginning with 0xa0" (line number may be too low).
    at org.apache.crimson.parser.InputEntity.fatal(InputEntity.java:1100)
    at org.apache.crimson.parser.InputEntity.fillbuf(InputEntity.java:1072)
    at org.apache.crimson.parser.InputEntity.isXmlDeclOrTextDeclPrefix(Input
    Entity.java:914)
    at org.apache.crimson.parser.Parser2.maybeXmlDecl(Parser2.java:1183)
    at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:653)
    at org.apache.crimson.parser.Parser2.parse(Parser2.java:337)
    at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448)
    at org.apache.crimson.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl
    .java:185)
    at org.netbeans.modules.schema2beans.GraphManager.createXmlDocument(Grap
    hManager.java:711)
    at org.netbeans.modules.schema2beans.BaseBean.createGraph(BaseBean.java:
    2075)
    at com.iplanet.ias.web.WebContainer.loadWebModule(WebContainer.java:695)
    at com.iplanet.ias.web.WebContainer.loadStandaloneWebModule(WebContainer
    .java:626)
    at com.iplanet.ias.web.WebContainer.loadWebModules(WebContainer.java:600)
    at com.iplanet.ias.web.WebContainer.createVS(WebContainer.java:374)
    at com.iplanet.ias.server.J2EERunner.createVS(J2EERunner.java:223)
    info: WEB0100: Loading web module in virtual server [https-AW-NYNY-D609628.nna.wdpr.disy.com] at [search]
    config: HTTP4292: flex-init: Log file C:/Sun/WebServer6.1/https-AW-NYNY-D609628.
    nna.wdpr.disy.com/logs/access should be removed before changing its format
    info: HTTP3072: [LS ls1] http://AW-NYNY-D609628.nna.wdpr.disy.com:80 ready to
    accept requests
    startup: server started successfully
    info: CORE3274: successful server startup
    the sun-web.xml is as below:
    <?xml�version="1.0"�encoding="UTF-8"?>
    <!--
         Copyright 2002 Sun Microsystems, Inc. All rights reserved.
    -->
    <!DOCTYPE�sun-web-app�PUBLIC�"-//Sun�Microsystems,�Inc.//DTD�Application�Server�8.0�Servlet�2.4//EN"�"http://www.sun.com/software/appserver/dtds/sun-web-app_2_4-0.dtd">
    <sun-web-app>
         <resource-ref>
              <res-ref-name>jdbc/oraclePool</res-ref-name>
              <jndi-name>jdbc/oraclePool</jndi-name>
         </resource-ref>
    </sun-web-app>
    Am I using the right DTD ?
    Please let me know.
    Thank you.
    -- Martin Louis

  • A question about creating a Connection pool that uses Oracle JDBC

    Dear all,
    I have an issue with creating a connection pool within a web application in order to be used by several servlets. I appreciate if you could kindly give me a hand.
    I'm using:
    Web server: Apache-tomcat: 6.0.18
    Oracle Database 11g Enterprise: 11.1.0.6.0 - Production
    Operating system: Linux (ubuntu 8.10)
    IDE: Sun Netbeans
    Oralce JDBC Drivers: 11.1.0.7.0-Production (ojdbc6.jar and orai18n.jar)
    JDK 1.6
    Usually, just for creating a connection to my database (without using a connection pool), I proceed in the following way:
    String dbURL = "jdbc:oracle:thin:@localhost:1521:database01";
    String username = "scott";
    String user_password = "tiger";
    String userSqlQuery = "SELECT * FROM mytable";
    Connection connection = DriverManager.getConnection (dbURL, username, user_password);
    Statement statement = connection.createStatement();
    statement.executeUpdate(query_text);This works pretty well allowing to communicate with my oracle database. By this method I have run several projects
    with different queries (SELECT, INSERT, UPDATE, DELETE ,etc.) and each time it worked without any problem and
    returned the result of the query. Therefore I think that there is no problem with JDBC drivers
    However, when I want to create a connection pool, it seems that the lookup method cannot locate Oracle JDBC drivers. That is,
    try
         InitialContext ic = new InitialContext();
         Context envContext  = (Context)ic.lookup("java:/comp/env");
         dataSource = (DataSource)envContext.lookup("jdbc/oracle11gEnterprise");
           Connection connection = dataSource.getConnection();
    catch (Exception e)
         e.printStackTrace();
    }Just after calling dataSource.getConnection() the java.lang.NullPointerException is thrown.
    Any idea?
    Thanks in advance,
    And for your information, here are context.xml and web.xml files for my project
    Here is my context.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <Context antiJARLocking="true" path="/WebApplication1">
        <Resource name="jdbc/oracle11gEnterprise"
              scope="Shareable"
              type="javax.sql.DataSource"
              auth="Container"
              description="Oracle Database 11g Enterprise"
              maxActive="100"
              maxIdle="30"
              maxWait="10000"
              removeAbandoned="true"
              removeAbandonedTimeout="60"
              logAbandoned="true"
              url="jdbc:oracle:thin:@localhost:1521:database01"
              username="scott"
              password="tiger" />
    </Context>my web.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
        <ConsumeOutput>false</ConsumeOutput>
        <resource-ref>
            <res-ref-name>jdbc/oracle11gEnterprise</res-ref-name>
            <res-type>javax.sql.DataSource</res-type>
            <res-auth>Container</res-auth>
        </resource-ref>
        <!--
            .  And here as usual I write servlet definition and url mappings
        -->   

    nobody?

  • Sql.exception using jdbc:odbc Sqlserver 7

    hi
    i use java jdk 1.3 and sqlserver 7.0 on windows98 and establish a connection over jbc:odbc. I use executeUpdate() statement and insert something to a table. there is a trigger defined and sometimes i got an sql.exception, that no rowcount returned.
    can you help me ?
    thanks jens

    The trigger does a rollback in some cases.
    Obviously - try this out! - this causes that JDBC exception then.
    Now I see a problem in this, that the trigger does rollbacks concering the connection, but your Java program does not know that its connection's actual transaction has been rolled back. Imagine, if you have done several steps before without commitng yet, they are rolled back as well.
    So I would use this only with AutoCommit set to true.
    I think it's not a good idea in general to let a trigger do a rollback. But in this area I have few experiences.
    I assume you have to use this table schema and its trigger definition and can't change it.
    So I would find out the error code which this DBException contains.
    So in case of exceptions you can identify if this case has happened and react on it in your logic. You must interpretate this as an error or maybe as an expected condition - that depends on your logic.
    Another thought: can't you validate the values before you do the insert. Then this logic would not longer be encapsulated in the trigger, but maybe it is really a validation rule which the program should know anyway. What do you tell the user if it has occured?

  • SQL Exception in JDBC driver

    Hi,
    I try to use Access db with Jdev, it looks connection ok and I see the tables in the structure window, but when I try to create the Business components via the vizard, it gives SQL Syntax Error for the missing operator in query expression. and I can't see the tables in the lated dialogs.
    "((object_type='TABLE')) MINUS SELECT table_name, owner from all_snapshots"
    The vizard quite simple but is there a chance that i miss something. Any help is appreciated.

    Hi,
    It looks like you selected Oracle as your jdbc type. This will not work for non oracle jdbc connections.
    If you are connecting to Access, you probably want to use a more generic jdbc type.
    Check out http://otn.oracle.com/products/jdev/howtos/bc4j/bc_foreign_db_intro.html for details on connecting to foreign datasources.
    Thanks,
    Pete

  • Connect to sql sever using JDBC

    hi,
    I am new to Java and I am having problem running JDBC program. The error i get is that "main method not found". If I run other programs they r running fine. Please help me.
    thanks

    Are you trying to run a class with no main method?

  • Load balancing to JDBC connection pool

    from http://e-docs.bea.com/wls/docs61///////cluster/overview.html
    "WebLogic Server provides limited load balancing support for managing JDBC
    connections in a cluster. If you create an identical JDBC DataSource in each
    clustered WebLogic Server instance and configure those DataSources to use
    different connection pools, the cluster can support load balancing for JDBC
    connections. Note, however, that WebLogic Server provides no special load
    balancing policies for accessing connection pools. If one of your connection
    pools runs out of JDBC connections, the load balancing algorithm may still
    direct connection requests to the empty pool."
    How is this different from creating one connection pool with one datasource
    and targetting the cluster. Are they talking about load-balancing to
    different databases, or different servers in WLS. from a servlet or from a
    client side app?
    Can anyone elaborate?
    Thanks in advance.

    hi,
    without knowing the entire set of requirements or the motivation behind doing this, a few words from me
    this is usually done transparently to the applications server, that is having eg. Oracle instances mirroring eachother for extreme high-availability requirements.
    1. I would have taken the liberty of calling this business funcionality and let my middleware do the implementation of this. The most elegant solution would probably be to call the master DB for the CUD operation, then post a message to a queue letting the slave DB be updated asynchronously. If the message could not be sent, throw an exception and have the entire operation rolled back.
    If however this must happen realtime and transactions must be consistent, there are a few points to consider. And the quieing bit would not work.
    if this is something that should be done for all Create, Update and Delete operations, an intercepting JDBC driver could do the trick. Although there are all sorts of different problems that could arise from this, for starters, at least one of the DBMS involved here should be XA compliant. If the entire transaction should be XA compliant, both DBMS must be XA compliant. Next as for the transaction towards the "mirroring" DBMS you would have to do all the transaction stuff your self.
    For an example of an intercepting JDBC driver, I found thisone
    http://media.datadirect.com/download/docs/jdbc/jdbcref/spy.html
    I would guess that there are quite a few more.
    - [url http://blog.thej2eestruggle.com]Anders Mathisen
    Edited by anders.mathisen at 01/21/2007 2:53 PM

  • JDBC connecting MS SQL Server DB Help!!!

    I have some problems with connecting DB in my program.
    I read many forms of creation of connectin string and writting programs.
    Can anybody help me?
    I need an example of writting simple program connecting MS SQL Db with JDBC.

    hi neetLynx ,
    I am using JSQLConnect Driver for SqlServer 7.0 /2000
    Download it and use it
    Class.forName("com.jnetdirect.jsql.JSQLDriver");
         Connection con=DriverManager.getConnection("jdbc:JSQLConnect://ajit/database=pubs&user=sa");
         Statement stat=con.createStatement();
    ajit is the host name or the name of the local computer in which the database resides,pubs the database name
    and if u use a password just continue
    ("jdbc:JSQLConnect://ajit/database=pubs&user=sa&password= "
    rest u know....
    thanks
    royce

  • Connection Pooling in JDBC Adapter

    Does anybody know if the JDBC Adapter uses connection pooling? If yes, how can one adjust the pool size etc.
    Thanks!

    Hi Roland,
    Refer this note 831162...
    9. J2EE JDBC Connector and Connection Pooling
    Q: Does the JDBC Adapter support the use of the SAP WebAS J2EE engine's JDBC Connector and connection pool?
    A: Currently, each JDBC channel will create its own JDBC connection. The use of the J2EE engine's JDBC Connector and connection pooling mechanism is not supported.
    Regards
    Anand

  • ABAP statement for JDBC connection to SQL server

    Hi Gurus,
    i need to connect a WebDynpro abap to a SQL server.
    My OS is Unix so i cannot use a ODBC connection.
    Can anyone help me to know if it's possible to write an abap statement to connect the SQL server by JDBC connection?
    thanks a lot
    Regards
    Claudio.

    Hi,
          ELSEIF SCREEN-GROUP2 = 'PRO'.
          clear: list.
          if screen-name = 'ZAVBAK-ZZPROMO_ID'.
            exec sql.
       commit
              set connection :'CBREPOSITORYPRD'
            endexec.
            exec sql.
              CONNECT TO :'CBREPOSITORYPRD'
            endexec.
            exec sql.
              COMMIT
            endexec
          EXEC SQL.
              OPEN C1 FOR
              SELECT CutterRewardsUserListid,
                     SAPAccountNumber,
                     PromoID,
                     FirstName,
                     LastName
                     FROM CutterRewardsUserList
                     WHERE SAPAccountNumber = :XVBPA-KUNNR ORDER BY PromoID
            ENDEXEC.
            DO.
              EXEC SQL.
                FETCH NEXT C1 INTO :WA5
              ENDEXEC.
              IF SY-SUBRC = 0.
                PERFORM UPDATE_LIST.
              ELSE.
                EXIT.
              ENDIF.
            ENDDO.
            EXEC SQL.
              CLOSE C1
            ENDEXEC.

  • Ias support for EJB, JSP/servlets,JDBC, connection pooling, XML, SOAP, load balancing etc

    Please let me know where I can find more information regarding iPlanet usage/deployment/configuring/tuning etc for support of technologies - like EJB, JSP/servlets, JDBC, connection pooling, XML, load balancing, JDBC & Transactions
    (I have already read the 'Getting Started with the iPlanet Application Server' part five and six - http://developer.iplanet.com/appserver/testdrive/partfive.jsp and partsix.jsp)(I am using the ias testdrive version).

    Hi,
    It's difficult to explain unless the J2EE architecture is understood. Also, explaining things like load balancing, Transactions, tuning, are bit vague and could blow the disk space of this site.
    To get started, the best way is to test the sample applications and the best part is you don't require internet connection to follow each steps. Install iWS and iAS, open browser, type in http://hostname:port/ias-samples/index.html. You can find links to the sample applications bundled. Please follow the steps given on deploying the application. This will enable you to a higher level.
    Regards
    Ganesh .R
    Developer Technical Support
    Sun Microsystems
    http://www.sun.com/developers/support

  • JDev 10.1.3 - running any application results in connection pool error

    After creating a new project with a MySQL connection and since removing the project, I receive this error no matter which application I try to run through the local OC4J of JDev 10.1.3.0.4.3673.
    I can recreate this issue with a brand new app workspace & project with a single html file.
    06/07/06 14:08:19 WARNING: Application.setConfig Application: current-workspace-app is in failed state as initialization failedjava.lang.InstantiationException: Error occurred initializing connectors. Exception is: Exception creating connection pool. Exception: oracle.oc4j.sql.config.DataSourceConfigException: Unable to create : com.mysql.jdbc.Driver
    Jul 6, 2006 2:08:19 PM com.evermind.server.Application setConfig
    I'm guessing this is a connection pool issue, but I'm not sure how I associated this connection to the pool, or where to remove it. I've reviewed the help files and searched through this forum, and see references to the connection pool on the AS, but not JDev 10.1.3 itself.
    Any pointers are appreciated! In the mean time I'm continuing my search!

    Can you please clarify the following...
    1) Can we run MDB applications within JDeveloper 10.1.3 ? I noticed there is a jms.xml file in embedded OC4J.
    2) How can we test MDB applications within JDeveloper linked to a JMS Destination OC4J based ?

  • Cannot connect with SQL Server driver using Top Link with ADF/JSF

    I have a TopLink/ADF/JSF project that I'm starting using JDeveloper 10.1.3. The database is MS SQL Server. I went through and created all of the Top Link mappings, etc. but when I try to run my project under the OC4J instance built in to JDeveloper I get the error message below. I've tried putting SelectMethod=cursor everywhere I can think of, but nothing seems to help?
    Log Dump:
    [TopLink Info]: 2006.06.16 02:49:46.253--ServerSession(1679)--Thread(Thread[ApplicationServerThread-0,5,RequestThreadGroup])--TopLink, version: Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)
    [TopLink Config]: 2006.06.16 02:49:46.269--ServerSession(1679)--Connection(1680)--Thread(Thread[ApplicationServerThread-0,5,RequestThreadGroup])--connecting(DatabaseLogin(
    platform=>SQLServerPlatform
    user name=> "zeke"
    connector=>JNDIConnector datasource name=>jdbc/ZekeDB
    [TopLink Severe]: 2006.06.16 02:49:48.925--ServerSession(1679)--Thread(Thread[ApplicationServerThread-0,5,RequestThreadGroup])--Local Exception Stack:
    Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]JTA is not support when selectMethod=direct. Switch to selectMethod=cursor.Error Code: 0
    at oracle.toplink.exceptions.TopLinkException.<init>(TopLinkException.java:46)
    at oracle.toplink.exceptions.DatabaseException.<init>(DatabaseException.java:51)
    at oracle.toplink.exceptions.DatabaseException.sqlException(DatabaseException.java:276)
    at oracle.toplink.jndi.JNDIConnector.connect(JNDIConnector.java:115)
    at oracle.toplink.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:147)
    at oracle.toplink.internal.databaseaccess.DatasourceAccessor.connect(DatasourceAccessor.java:197)
    at oracle.toplink.internal.databaseaccess.DatabaseAccessor.connect(DatabaseAccessor.java:221)
    at oracle.toplink.internal.databaseaccess.DatasourceAccessor.connect(DatasourceAccessor.java:273)
    at oracle.toplink.threetier.ConnectionPool.buildConnection(ConnectionPool.java:81)
    at oracle.toplink.threetier.ConnectionPool.startUp(ConnectionPool.java:304)
    at oracle.toplink.threetier.ServerSession.connect(ServerSession.java:431)
    at oracle.toplink.publicinterface.DatabaseSession.login(DatabaseSession.java:511)
    at oracle.toplink.tools.sessionmanagement.SessionManager.getSession(SessionManager.java:317)
    at oracle.toplink.tools.sessionmanagement.SessionManager.getSession(SessionManager.java:372)
    at oracle.toplink.util.SessionFactory.getSharedSession(SessionFactory.java:103)
    at oracle.toplink.util.SessionFactory.getSharedSession(SessionFactory.java:82)
    at oracle.toplink.util.SessionFactory.acquireSession(SessionFactory.java:114)
    at com.mascocs.web.monitor.admin.datamodel.ZekeAdminSessionFacadeBean.findAllApps(ZekeAdminSessionFacadeBean.java:128)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:69)
    at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:69)
    at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:55)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:69)
    at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:69)
    at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:86)
    at ZekeAdminSessionFacadeLocal_StatelessSessionBeanWrapper0.findAllApps(ZekeAdminSessionFacadeLocal_StatelessSessionBeanWrapper0.java:165)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at oracle.adf.model.binding.DCInvokeMethod.invokeMethod(DCInvokeMethod.java:504)
    at oracle.adf.model.binding.DCDataControl.invokeMethod(DCDataControl.java:1796)
    at oracle.adf.model.generic.DCGenericDataControl.invokeMethod(DCGenericDataControl.java:248)
    at oracle.adf.model.binding.DCInvokeMethod.callMethod(DCInvokeMethod.java:216)
    at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1287)
    at oracle.adf.model.binding.DCDataControl.invokeOperation(DCDataControl.java:1802)
    at oracle.adf.model.generic.DCGenericDataControl.invokeOperation(DCGenericDataControl.java:266)
    at oracle.adf.model.adapter.AdapterDCService.invokeOperation(AdapterDCService.java:318)
    at oracle.jbo.uicli.binding.JUCtrlActionBinding.invoke(JUCtrlActionBinding.java:625)
    at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.invokeMethodAction(JUMethodIteratorDef.java:160)
    at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.initSourceRSI(JUMethodIteratorDef.java:542)
    at oracle.adf.model.binding.DCIteratorBinding.callInitSourceRSI(DCIteratorBinding.java:1420)
    at oracle.adf.model.binding.DCIteratorBinding.getRowSetIterator(DCIteratorBinding.java:1403)
    at oracle.adf.model.binding.DCIteratorBinding.setRangeSize(DCIteratorBinding.java:2641)
    at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:2484)
    at oracle.adf.model.binding.DCBindingContainer.refresh(DCBindingContainer.java:2257)
    at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.prepareModel(PageLifecycleImpl.java:104)
    at oracle.adf.controller.v2.lifecycle.Lifecycle$8.execute(Lifecycle.java:210)
    at oracle.adf.controller.v2.lifecycle.Lifecycle.executePhase(Lifecycle.java:116)
    at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.mav$executePhase(ADFPhaseListener.java)
    at oracle.adf.controller.faces.lifecycle.ADFPhaseListener$4.after(ADFPhaseListener.java:331)
    at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:97)
    at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:211)
    at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
    at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
    at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:367)
    at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:336)
    at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:196)
    at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:87)
    at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
    at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:332)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:627)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:376)
    at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:870)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:451)
    at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:218)
    at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:119)
    at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)
    at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
    at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:230)
    at oracle.oc4j.network.ServerSocketAcceptHandler.access$800(ServerSocketAcceptHandler.java:33)
    at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:831)
    at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]JTA is not support when selectMethod=direct. Switch to selectMethod=cursor.
    at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
    at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
    at com.microsoft.jdbcx.sqlserver.SQLServerDataSource.getXAConnection(Unknown Source)
    at oracle.oc4j.sql.spi.ManagedConnectionFactoryImpl.createXAConnection(ManagedConnectionFactoryImpl.java:237)
    at oracle.oc4j.sql.spi.ManagedConnectionFactoryImpl.createManagedConnection(ManagedConnectionFactoryImpl.java:199)
    at com.evermind.server.connector.ApplicationConnectionManager.createManagedConnection(ApplicationConnectionManager.java:1333)
    at oracle.j2ee.connector.ConnectionPoolImpl.createManagedConnectionFromFactory(ConnectionPoolImpl.java:324)
    at oracle.j2ee.connector.ConnectionPoolImpl.access$800(ConnectionPoolImpl.java:95)
    at oracle.j2ee.connector.ConnectionPoolImpl$FixedWaitPoolingScheme.getManagedConnection(ConnectionPoolImpl.java:1449)
    at oracle.j2ee.connector.ConnectionPoolImpl.getManagedConnection(ConnectionPoolImpl.java:782)
    at com.evermind.server.connector.ApplicationConnectionManager.getConnectionFromPool(ApplicationConnectionManager.java:1532)
    at com.evermind.server.connector.ApplicationConnectionManager.acquireConnectionContext(ApplicationConnectionManager.java:1477)
    at com.evermind.server.connector.ApplicationConnectionManager.allocateConnection(ApplicationConnectionManager.java:1423)
    at oracle.j2ee.connector.OracleConnectionManager.unprivileged_allocateConnection(OracleConnectionManager.java:244)
    at oracle.j2ee.connector.OracleConnectionManager.allocateConnection(OracleConnectionManager.java:198)
    at oracle.oc4j.sql.ManagedDataSource.getConnection(ManagedDataSource.java:197)
    at oracle.oc4j.sql.ManagedDataSource.getConnection(ManagedDataSource.java:140)
    at oracle.toplink.jndi.JNDIConnector.connect(JNDIConnector.java:112)
    ... 77 more
    2006-06-16 14:49:48.941 ERROR J2EE EJB8006 [ZekeAdminSessionFacade:public java.util.List com.mascocs.web.monitor.admin.datamodel.ZekeAdminSessionFacadeBean.findAllApps()] exception occurred during method invocation: javax.ejb.EJBException: Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]JTA is not support when selectMethod=direct. Switch to selectMethod=cursor.Error Code: 0; nested exception is: Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]JTA is not support when selectMethod=direct. Switch to selectMethod=cursor.Error Code: 0
    2006-06-16 14:49:50.816 WARNING rowIterator is null
    2006-06-16 14:49:50.831 WARNING rowIterator is null
    Process exited.

    I'm not sure on the error, but you may be able to pass the "selectMethod" and "cursor" as a JDBC property in your connection pool. Since this is a DataSource / JTA issue you may want to post it to the general OC4J forum.
    Otherwise as a workaround you could instead use a non-JTA DataSouce, or use TopLink internal connection pooling, or try another JDBC driver.

  • Weblogic Eclipselink Sequence Table Connection Pool Sequence Separate transaction while JTA on main transaction

    Hi,
    And thanks in advance for your support.
    In weblogic 12, managing to get the eclipse link connection sequencing mechanism when one uses Tables for sequencing entity ids seems to be complicated.
    QUICK REFERENCE:
    http://www.eclipse.org/eclipselink/api/2.5/org/eclipse/persistence/config/PersistenceUnitProperties.html
    The concept:
    While having EJB, MDBs etc... run on a JEE container, be it glassfish or weblogic, it should be possible to have the main thread transaction be managed as part of JTA global transactions by the contianer.
    Namely, pumping messages to JMS queues, persisting entities etc.
    Meanwhile, it should be also possible to as the transaction is on going write and update entity ids from sequencing tables.
    For this very purpose, eclipse link provides persistence.xml properties, such as the now deprecated eclipselink.jdbc.sequence-connection-pool" value="true", to fullfill this very purpose.
    This option greatly avoids dead longs, by allowing eclipse link to fetch a non JTA managed connection, pseudo "two phase locking read table update table" go to the datbase and fetch a new sequence.
    The same mechnism under JTA is a disaster. A transaction that creates ten different entities, might do ten reads and updates on this table, while mean while a competing transaction might be trying to do the same. It is guaranteed dead lock with minimal stress on the environment.
    Under glassfish, for example, tagging a persistence.xml with :
    <persistence-unit name="MY_PU" transaction-type="JTA">
            <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
            <jta-data-source>jdbc/DERBY_DS</jta-data-source>
            <non-jta-data-source>jdbc/DERBY_DS</non-jta-data-source>       
            <properties>           
                <property name="eclipselink.jdbc.sequence-connection-pool" value="true" />
            </properties>
    </peristence-unit>
    does miracles, when entities are using TABLE sequencing.
    Under weblogic, say you are using the Derby embedded XA driver with two phase commit, deploying the applicaiton immediately leads to:
    Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.3.3.v20120629-r11760): org.eclipse.persistence.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: Cannot call commit when using distributed transactions
    Error Code: 0
      at org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:324)
      at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.basicCommitTransaction(DatabaseAccessor.java:426)
      at org.eclipse.persistence.internal.databaseaccess.DatasourceAccessor.commitTransaction(DatasourceAccessor.java:389)
      at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.commitTransaction(DatabaseAccessor.java:409)
      at org.eclipse.persistence.internal.sequencing.SequencingManager$Preallocation_Transaction_Accessor_State.getNextValue(SequencingManager.java:579)
      at org.eclipse.persistence.internal.sequencing.SequencingManager.getNextValue(SequencingManager.java:1067)
      at org.eclipse.persistence.internal.sequencing.ClientSessionSequencing.getNextValue(ClientSessionSequencing.java:70)
      at org.eclipse.persi
    While weblogic is right that their might be a distributed transaction ongoing, it is mistaken in the fact tha tthe connection requested by eclipse link for generating the ID should be part of the global transaciton.
    Eclipse link provides other ways to attempt to configure the sequencing mechanism, by sating for example a non-jta transaction.
    I have attempted also using these properties both withe original data DERBY_DS that uses the XA driver, and later with a new data source i created on purpose to try to work around the sequencing contengy.
    For example:
    <!--property name="eclipselink.jdbc.sequence-connection-pool.nonJtaDataSource" value="jdbc/DERBY_SEQUENCING_NON_JTA" /-->
                <!--property name="eclipselink.connection-pool.sequence.nonJtaDataSource" value="jdbc/DERBY_SEQUENCING_NON_JTA" /-->
    This new DERBY_SEQUENCING_NON_JTA is explicitly configured to use a NON_XA driver with global transactions flag set to disabled.
    Regardless, the only thing I get out of this is that the application is deployed and super fast, up to the point where i stress it with a system test that introduces some degreee of concurrency, and then I see the dead locks on the sequencing table.
    Meaning that the ongoing transactions are holding tight to their locks on the sequencing table.
    Is this a known issue?
    Is there something I am missing in the configuration?
    It really should not be this diffcult to get eclipse link to run its sequence reads and updates on a separate transaction of the main JTA transaction, but so far looks impossible.
    Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.3.3.v20120629-r11760): org.eclipse.persistence.exceptions.DatabaseException
    Internal Exception: java.sql.SQLTransactionRollbackException: A lock could not be obtained within the time requested
    Error Code: 30000
    Call: UPDATE ID_GEN SET SEQ_VALUE = SEQ_VALUE + ? WHERE SEQ_NAME = ?
      bind => [2 parameters bound]
    Query: DataModifyQuery(name="MyEntity_Gen" sql="UPDATE ID_GEN SET SEQ_VALUE = SEQ_VALUE + ? WHERE SEQ_NAME = ?")
    Many thanks for your help.

    Are you calling the cmp bean code and your new Sql code under a same transactional context?
    The following setting
    "rollbackLocalTxUponConnClose=true"
    will make the connectionpool to call the rollback method on the connection object before keeping it back in the pool. In your sql code if you are calling connection.close() , then your entire transaction will be rolled back.
    CMP bean requires a transactional connection while communicating with the database.
    What is the sequence of code execution?
    I think you must be calling sql code first and then cmp bean code later.
    You may avoid this problem in this way. This is my guess based on my understanding on your code execution.
    1. set rollbackLocalTxUponConnClose=false
    Execute the sql code and cmp code in a single transaction (in a single session bean method with cmt or bmt transaction ). Specify tx.rollback if it is bmt. or call tx.setRollbackOnly() if it is a cmt. In this way you will have control to roll back the transactions.
    Hope this helps you.
    bmt-> bean managed transaction
    cmt-> container managed transaction.
    Regards,
    Seshi.

  • SQL Exception blocks everyone .... why

    Hello to all,
    I have an some question towards SQL exception in JDBC, when there is an error trying to recieve infomation from a database it stops all access for everyone log on at the same time.
    For example, if I try to insert a string in a field that doesn't exist or insert a string where an I should use an int, an sql excption will be throw, and it blocks there (for everyone), meaning another users would like to search the datbase for information, but recieves nothing. I'm using a connection pool for the connection to my database in each one of my servlets that also
    "implements SingleThreadModel" .
    Could it be because of the SingleThreadModel, or has it to do with the connection pool ???
    All help is welcomed
    Thanks ..... Wally

    U can set the Connection with proper concurrency like CONCUR_UPDATABLE ....that helps in working with Concurrent users accesing the same table or DB..
    Note: this depends on the Driver that u r using its not supported by many drivers.
    sriram

Maybe you are looking for