sun ONE 使用记录 :: 掬水月在手
来源: BlogBus 原始链接: http://www.blogbus.com:80/blogbus/blog/diary.php?diaryid=150997 存档链接: https://web.archive.org/web/20040922161728id_/http://www.blogbus.com:80/blogbus/blog/diary.php?diaryid=150997
掬水月在手 <<<陈年往事 | 首页 | 关于递增式开发>>> sun ONE 使用记录 时间:2004-04-23 1、开发阶段必须以Debug模式启动服务器。如果以正常模式启动服务器,我们又改动了ejb某个方法的参数数量,那么就会找不到这个方法,并报告一个内部错误。当遇到这种错误,另外一个解决方法是删除当前app server的目录,重新安装一下。这种方式与以debug模式启动的方法来比较, 当然还是后者划算。 /*************** 2004.05.09 **/ 终于找到哪里出的错误,原因是EJBModule已经注册,再次发布的时候会因为冲突而出现不能覆盖的错误。为了解决这个问题,需要先undeploy这个EJBModule,注意是EJBModule,而不是Application。然后再发布,就可以了。 2、在一个局域网内,SUN ONE Studio 5.1无法注册在另一台机器上的app server,但是4.1却可以。 也不是在所有的局域网都会有这种事情发生,问题出在哪里我还不清楚。 3. [20/Apr/2004:09:39:23] SEVERE ( 1496): RAR5029:Unexpected exception while registering component java.lang.IllegalStateException: Local transaction already has 1 non-XA Resource: cannot add more resources at com.sun.enterprise.distributedtx.J2EETransactionManagerOpt.enlistResource(J2EETransactionManagerOpt.java:101) at com.sun.enterprise.resource.PoolManagerImpl.registerResource(PoolManagerImpl.java:196) at com.sun.enterprise.resource.PoolManagerImpl.getResource(PoolManagerImpl.java:172) at com.sun.enterprise.resource.JdbcDataSource.internalGetConnection(JdbcDataSource.java:241) at com.sun.enterprise.resource.JdbcDataSource.getConnection(JdbcDataSource.java:98) at com.costech.common.DBUtility.getConnection(DBUtility.java:40) at com.costech.mnr.estimate.ejb.EJBEstimateBean.batchRepair(EJBEstimateBean.java:807) at com.costech.mnr.estimate.ejb.EJBEstimateBean_EJBObjectImpl.batchRepair(EJBEstimateBean_EJBObjectImpl.java:438) at com.costech.mnr.estimate.ejb._EJBEstimateBean_EJBObjectImpl_Tie._invoke(Unknown Source) at com.sun.corba.ee.internal.POA.GenericPOAServerSC.dispatchToServant(GenericPOAServerSC.java:569) at com.sun.corba.ee.internal.POA.GenericPOAServerSC.internalDispatch(GenericPOAServerSC.java:211) at com.sun.corba.ee.internal.POA.GenericPOAServerSC.dispatch(GenericPOAServerSC.java:113) at com.sun.corba.ee.internal.iiop.ORB.process(ORB.java:275) at com.sun.corba.ee.internal.iiop.RequestProcessor.process(RequestProcessor.java:83) at com.iplanet.ias.corba.ee.internal.iiop.ServicableWrapper.service(ServicableWrapper.java:25) at com.iplanet.ias.util.threadpool.FastThreadPool$ThreadPoolThread.run(FastThreadPool.java:283) at java.lang.Thread.run(Thread.java:536) I have code like following: Connection conn_sqlserver = null;//get connection to a MS SQL Server 2000 Connection conn_sybase = null; //get connection to a Sybase ASE 12.5 using TDS4.5 UserTransaction txn = null; txn = context.getUserTransaction(); txn.begin(); / get value from sql server / String sql_sqlserver_get = "select a_field, b_field from a_table "; Statement stmt = conn_sqlserver.createStatement(); ResultSet rst = stmt.executeQuery(sql_sqlserver_get); / update sybase ********/ String sql_sybase = "{call a_stoted_procedure(?,?)}"; PrepareStatement ps_sybase = conn_sybase.prepareStatement(sql_sybase); while (rst.next()){ int n = 1; ps_sybase.setString(n++, rst.getString("a_field")); ps_sybase.setString(n++, rst.getString("b_field")); ps_sybase.addBatch(); } ps_sybase.execusteBatch(); String sql_sqlserver = " update a_table set a_field=?, b_field=?" PreparedStatement ps_sqlserver = conn_sqlserver.prepareStatement(sql_sqlserver); int m = 1; ps_sqlserver.setString(m++, "value a"); ps_sqlserver.setString(m++, "value b"); ps_sqlserver.execute(); txn.commit(); 4. 如果重新启动服务器,那么要先点击左侧管理树的实例节点, 这样保证该节点的运行情况比较真实。 5、MS SQL Server JDBC, ResultSet.last() is unsupported in a seperate serializable class which is called by a stateless session bean, while it is ok if lass() is used in the SSB. / ***********/ God, forgive me, I've forget following code: PreparedStatement stmt = conn.prepareStatement(sql, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); ResultSet rs = stmt.executeQuery(); jsyzs 发表于 2004-04-23 22:12 引用Trackback(0) | 编辑 评论 发表评论 最后更新 Notes of WEUC man 性感小野猪(转) 宝马出租车? 良心的谴责 求职宣言 ERP已死 Mantis (Java) --- PROPOSAL Daily Building communicate, inspirit, award