I try the code and it work well.At first, I get Connection using DriverManager and work well.I think the bug maybe cause by DataSource that return Connection from pool,so I try to get Connection using DataSource,but it work well too.So I still believe the exception causing by iBatis.
Connection cn = null; PreparedStatement pst1 = null; PreparedStatement pst2 = null; ResultSet rs1 = null; ResultSet rs2 = null; DataSource ds = (BasicDataSource)ctx.getBean("cmsDbcpDataSource"); try { // Class.forName("net.sourceforge.jtds.jdbc.Driver").newInstance(); // cn = DriverManager.getConnection("jdbc:jtds:sqlserver://localhost:1433/macconverter", "sa", "iloveyou"); cn = ds.getConnection(); pst1 = cn.prepareStatement("select * from t_softwares"); rs1 = pst1.executeQuery(); while(rs1.next()) { System.out.println("software:" + rs1.getString(1)); } pst2 = cn.prepareStatement("select * from t_categories"); rs2 = pst2.executeQuery(); while(rs2.next()) { System.out.println("category:" + rs2.getString(1)); } } catch(Exception e) { e.printStackTrace(); assertTrue(false); } finally { try { rs1.close(); rs2.close(); pst1.close(); pst2.close(); cn.close(); } catch (SQLException e) { } } Larry Meadors wrote: > > Google for "sql 2005 HY010 jdbc -db2", and you'll get more info - it > looks like you're not the first person to get this error, but I didn't > see anything that led me to believe that this is a bug in iBATIS - > more likely an issue with the driver, possibly configuration. > > Try simplifying the mapped statement and/or doing the query with JDBC > instead and see what happens. > > Larry > > > On Mon, Apr 14, 2008 at 11:46 PM, nepalon <[EMAIL PROTECTED]> wrote: >> >> I am sure my DB is configured to allow more than one ResultSet open.As >> you >> see in the above code, the code CategoryModel model = >> categoryDao.getCategoryById(273) I code can work well.The code will load >> the >> category object the id is 273 and its parent category object whick the >> id is >> 270.In this code,more than one ResultSet was open. >> >> >> >> >> Jeff Butler-2 wrote: >> > >> > I once had a similar problem with DB2. The problem was that the DB >> was >> > configured to allow only one open ResultSet per connection. >> > >> > With your query, you will have more than one open ResultSet - so make >> sure >> > your DB is configured to allow this. >> > >> > Jeff Butler >> > >> > On Sat, Apr 12, 2008 at 10:47 PM, nepalon <[EMAIL PROTECTED]> wrote: >> > >> >> >> >> The DB i using is SQL Server2005.The error string(HY010) means >> "Invalid >> >> state, the ResultSet object is closed".Somebody says this error cause >> by >> >> using miscrosoft sql server driver,but I using jtds as my dirver. >> >> >> >> Larry Meadors wrote: >> >> > >> >> > This looks like a DB2 issue, you may want to search for that error >> >> > string (HY010), I think that's probably going to get you a solution >> >> > quickest. >> >> > >> >> > Larry >> >> > >> >> > >> >> >> >> -- >> >> View this message in context: >> >> >> http://www.nabble.com/Problem-in-resultMap%3ACause%3A-java.sql.SQLException%3A-Invalid-state%2C-the-ResultSet-object-is-closed-tp16624071p16656703.html >> >> Sent from the iBATIS - User - Java mailing list archive at >> Nabble.com. >> >> >> >> >> > >> > >> >> -- >> View this message in context: >> http://www.nabble.com/Problem-in-resultMap%3ACause%3A-java.sql.SQLException%3A-Invalid-state%2C-the-ResultSet-object-is-closed-tp16624071p16695510.html >> >> >> Sent from the iBATIS - User - Java mailing list archive at Nabble.com. >> >> > > -- View this message in context: http://www.nabble.com/Problem-in-resultMap%3ACause%3A-java.sql.SQLException%3A-Invalid-state%2C-the-ResultSet-object-is-closed-tp16624071p16715819.html Sent from the iBATIS - User - Java mailing list archive at Nabble.com.