isClosed方法在JBOSS 5.1中不起作用

时间:2016-07-06 15:31:24

标签: java jboss jtds

我有一个调用过程的方法,请参阅:

public void myMethod() {    

            ((Session) em.getDelegate()).doWork(new Work() {

                @Override
                public void execute(Connection connection) throws SQLException {

                    StringBuilder sqlSP = new StringBuilder();

                    sqlSP.append("{ call myprocedure ");
                    sqlSP.append("(?) }");

                    CallableStatement cs = connection.prepareCall(sqlSP.toString());                    

                    cs.setInt(1, 1);

                    try {
                        cs.execute();
                    } finally {
                        if (!cs.isClosed()) {
                            cs.close();
                        }
                    }
                }
            });
    }

这在tomcat中运行得很好,因为方法isClosed()存在。但是当我将我的应用程序上传到jboss 5.1时,我得到了以下错误:

Caused by: java.lang.AbstractMethodError: net.sourceforge.jtds.jdbc.JtdsCallableStatement.isClosed()Z
    at org.jboss.resource.adapter.jdbc.jdk6.WrappedCallableStatementJDK6.isClosed(WrappedCallableStatementJDK6.java:64)

我的tomcat和jboss都使用jTDS 1.2.5,所以我无法理解是什么问题。我尝试使用WrappedCallableStatement调试jboss,但是当我尝试检查行“cs.isClosed”时,我得到了nestedException。

0 个答案:

没有答案