Hi, I began working with the con.getMetaData() object today and soon after began getting the following:
org.jboss.deployment.DeploymentException: Too many open files; - nested throwable: (java.io.IOException: Too many open files) | at org.jboss.web.AbstractWebContainer.init(AbstractWebContainer.java:352) | 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:324) | at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141) | at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80) | at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:118) | at org.jboss.mx.server.Invocation.invoke(Invocation.java:74) | at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:127) | at org.jboss.mx.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:80) | at org.jboss.mx.server.Invocation.invoke(Invocation.java:74) | at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245) | at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644) | at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176) | at $Proxy31.init(Unknown Source) | at org.jboss.deployment.MainDeployer.init(MainDeployer.java:843) | at org.jboss.deployment.MainDeployer.init(MainDeployer.java:863) | at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:780) | at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:753) | at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source) | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | at java.lang.reflect.Method.invoke(Method.java:324) | at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141) | at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80) | at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:118) | at org.jboss.mx.server.Invocation.invoke(Invocation.java:74) | at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:127) | at org.jboss.mx.server.Invocation.invoke(Invocation.java:74) | at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245) | at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644) | at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176) | at $Proxy9.deploy(Unknown Source) | at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:319) | at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:489) | at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:192) | at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:203) | at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:182) | Caused by: java.io.IOException: Too many open files | at java.io.FileInputStream.open(Native Method) | at java.io.FileInputStream.<init>(FileInputStream.java:106) | at org.jboss.web.AbstractWebContainer.init(AbstractWebContainer.java:301) | ... 37 more Anyone know the cause? Here's the code which causes the problem: public DbTable getTable(String ds, String tbl) throws SQLException, NamingException, LookupException{ | DbTable table = null; | Connection con = null; | ResultSet rs = null; | DatabaseMetaData meta = null; | String[] types = {"TABLE"}; | try { | con = AppHelper.getConnection(ds); | meta = con.getMetaData(); | rs = meta.getTables(con.getCatalog(), null, "%"+tbl+"%", types); | if(!rs.next()) { | throw new LookupException("Unable to find specified table:"+tbl); | } | String name; | int count = 3; | do { | name = rs.getString(count); | if(name.equals(tbl)) { | table = new DbTable(name); | readTableColumns(meta, table); | break; | } | }while(rs.next()); | }finally { | AppHelper.closeResultSet(rs); | AppHelper.releaseConnection(con); | } | return table; | } | | private void readTableColumns(DatabaseMetaData meta, DbTable table) throws SQLException { | logger.info("entering readTableColumns"); | ResultSet columns = meta.getColumns(null, "%", table.getTableName(), "%"); | while (columns.next()) { | String columnName = columns.getString("COLUMN_NAME"); | String datatype = columns.getString("TYPE_NAME"); | int datasize = columns.getInt("COLUMN_SIZE"); | int digits = columns.getInt("DECIMAL_DIGITS"); | int nullable = columns.getInt("NULLABLE"); | | boolean isNull = (nullable == 1); | | DbColumn newColumn = new DbColumn(columnName, datatype, datasize, digits, isNull); | table.addColumn(newColumn); | } | logger.info("leaving readTableColumns"); | } View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4023319#4023319 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4023319 _______________________________________________ jboss-user mailing list jboss-user@lists.jboss.org https://lists.jboss.org/mailman/listinfo/jboss-user