Fw: DAS数据库访问,同步控制问题

9 views
Skip to first unread message

Raymond Feng

unread,
Sep 8, 2009, 11:50:26 AM9/8/09
to Luciano Resende, Tuscany SCA 中文论坛
Hi, Luciano.

TJ ran into a threading issue with DAS. Can you give him some advice?

Thanks,
Raymond
--------------------------------------------------
From: "TJ" <tangg...@gmail.com>
Sent: Monday, August 17, 2009 8:09 PM
To: "Tuscany SCA 中文论坛" <tuscany-s...@googlegroups.com>
Subject: DAS数据库访问,同步控制问题

>
> Raymond Feng,你好!
> 感谢您和DAS开发团队的帮忙,DAS的内存泄漏问题已再没有发生,并且在读取数据的速度上还有了提升!
>
> 但这几天,我们做了一次简单的压力测试,测试方法是几个线程同时执行同一个读取数据的方法,总会发生异常。
> 以下是测试代码中的核心部分:
> @Scope("COMPOSITE")
> public class ProductDAO extends BaseDAO implements IProductDAO {
>
> // 分页获取商品数据
> public DataObject listProdByShop(long shopId, short status,
> Map<String, Object> filterMap, Map<String, Boolean>
> sortMap,
> int curPage, int pageSize)
> {
> /* 根据DAS的配置文件,创建DAS实例
> ITU4DAS继承DAS,ITU4DASImpl与框架里的DASImpl可以看成是一样的,DAS是以临时变量方式存在,方
> 法执行完毕后,立即销毁。
> */
> ITU4DAS das = createDas();
> try {
> DataObject ret = executeQuery(getCommand(das,
> "listProdByShop"), status, shopId, (curPage-1) * pageSize, pageSize);
> List<DataObject> prodList = ret.getList("product");
> if(prodList.isEmpty()){
> return null;
> }else{
> DataObject prodListSdo = CommonSDOFactory.getInstance
> ().createDataObject(DEFAULT_URI, "productListType");
> for(DataObject prod : prodList){
> DataObject prodSdo = prodListSdo.createDataObject
> ("product");
> convertToSdo(prod, prodSdo);
> }
> return prodListSdo;
> }
> } finally {
> releaseDas(das);
> }
> }
>
> /* 获取商品总数 */
> public int countProdByShop(long shopId, short status, Map<String,
> Object> filterMap,
> Map<String, Boolean> sortMap)
> {
> ITU4DAS das = createDas();
> try {
> DataObject ret = executeQuery(getCommand(das,
> "countProdByShop"), shopId, status);
> long count = ret.getLong("result[1]/count");
> return (int)count;
> } finally {
> releaseDas(das);
> }
> }
> }
>
>
>
> /* 商品服务类 */
> @Scope("COMPOSITE")
> @Service(IProductDAS.class)
> public class ProductDAS implements IProductDAS
> {
> @Reference
> protected IProductDAO productDao;
>
> /* 分页获取商品信息,调用了ProductDAO里的listProdByShop和countProdByShop方法 */
> public DataObject listProdByShop(long shopId, short status,
> Map<String, Object> filterMap, Map<String, Boolean>
> sortMap,
> int curPage, int pageSize)
> {
> DataObject ret = null;
> try
> {
> /* CommonSDOFactory是单例类,功能是创建DataObject */
> ret = CommonSDOFactory.createDynDataObject();
> int count = getProductDao().countProdByShop(shopId,
> status, filterMap, sortMap);
> int pageCount = PageValidaterUtil.getPageCount(count,
> pageSize);
> if(curPage > pageCount){
> curPage = pageCount;
> }
> if(count > 0 ){
> DataObject prodListSdo = getProductDao().listProdByShop
> (shopId, status, filterMap, sortMap, curPage, pageSize);
> ret.setDataObject("productList", prodListSdo);
> ret.set("count", count);
> ret.setBoolean("status/value", true);
> }else{
> ret.setString("status/msg",
> Constant.PRODUCT_LIST_IS_EMPTY);
> }
> }catch(Exception e){
> LogerUtil.error(this.getClass(), "[ProductDAS:listProdByShop]
> Exception << " + e, e);
> ret.setBoolean("status/exception",true);
> ret.setString("status/msg", Constant.SQL_SVR_ERR);
> }
> return ret;
> }
>
> }
>
> /* 商品服务测试类 */
> public class ProductDasTest extends BaseTest
> {
> private IProductDAS productDas = null;
>
> public ProductDasTest(){
> super.init("Product.composite");
> productDas = (IProductDAS) getService(IProductDAS.class,
> "productDas");
> }
>
> public void listProdByShop(){
> for(int i=0; i < 8; i++){
> Thread t = new Thread(new Runnable(){
> public void run() {
> for(int j = 0; j < 50; j++){
> productDas.listProdByShop(1,Short.parseShort("0"), null, null,
> 1, 20);
> System.out.println(Thread.currentThread().getName() + "
> Runing...");
> }
> }
> });
> t.start();
> }
> }
>
> /* 通过main方法,调用测试方法 */
> public static void main(String[] args)
> {
> ProductDasTest p = new ProductDasTest();
> p.listProdByShop();
> }
> }
>
>
> 在执行过程中,时常发生异常,我收集了一些不同的错误信息,如下:
> 一、
> java.util.ConcurrentModificationException
> at org.eclipse.emf.common.util.BasicEList$EIterator.checkModCount
> (BasicEList.java:1327)
> at org.eclipse.emf.common.util.BasicEList$EIterator.next
> (BasicEList.java:1275)
> at org.apache.tuscany.sdo.impl.ClassImpl.initPropertyLists
> (ClassImpl.java:270)
> at org.apache.tuscany.sdo.impl.ClassImpl.getExtendedProperties
> (ClassImpl.java:254)
> at org.apache.tuscany.sdo.impl.ClassImpl.isOpen(ClassImpl.java:119)
> at org.apache.tuscany.sdo.impl.ClassImpl.getProperty(ClassImpl.java:
> 502)
> at
> org.apache.tuscany.sdo.helper.SDOHelperImpl.createOpenContentProperty
> (SDOHelperImpl.java:459)
> at org.apache.tuscany.sdo.api.SDOUtil.createOpenContentProperty
> (SDOUtil.java:358)
> at org.apache.tuscany.sdo.util.DataObjectUtil.demandOpenProperty
> (DataObjectUtil.java:1883)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.setFeatureName
> (DataObjectUtil.java:2149)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.process
> (DataObjectUtil.java:2296)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.init
> (DataObjectUtil.java:2017)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.create
> (DataObjectUtil.java:1932)
> at org.apache.tuscany.sdo.util.DataObjectUtil.set(DataObjectUtil.java:
> 765)
> at org.apache.tuscany.sdo.impl.DataObjectImpl.set(DataObjectImpl.java:
> 231)
> at
> com.eading.itu4.core.tuscany.service.impl.saleshop.ProductDAS.listProdByShop
> (ProductDAS.java:731)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at
> org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke
> (JavaImplementationInvoker.java:156)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke
> (SCABindingInvoker.java:61)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:309)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:156)
> at $Proxy9.listProdByShop(Unknown Source)
> at com.eading.itu4.core.tuscany.service.test.saleshop.ProductDasTest
> $1.run(ProductDasTest.java:195)
> at java.lang.Thread.run(Unknown Source)
>
>
> 二、
> java.lang.IllegalArgumentException: The feature 'productList' is not a
> valid changeable feature
> at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eOpenSet
> (BasicEObjectImpl.java:727)
> at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eSet
> (BasicEObjectImpl.java:658)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.set
> (DataObjectUtil.java:2074)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.setAndRecyle
> (DataObjectUtil.java:2080)
> at org.apache.tuscany.sdo.util.DataObjectUtil.set(DataObjectUtil.java:
> 765)
> at org.apache.tuscany.sdo.impl.DataObjectImpl.setDataObject
> (DataObjectImpl.java:496)
> at
> com.eading.itu4.core.tuscany.service.impl.saleshop.ProductDAS.listProdByShop
> (ProductDAS.java:730)
> at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at
> org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke
> (JavaImplementationInvoker.java:156)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke
> (SCABindingInvoker.java:61)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:309)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:156)
> at $Proxy9.listProdByShop(Unknown Source)
> at com.eading.itu4.core.tuscany.service.test.saleshop.ProductDasTest
> $1.run(ProductDasTest.java:195)
> at java.lang.Thread.run(Unknown Source)
>
>
> 三、
> java.lang.NullPointerException
> at org.apache.tuscany.sdo.helper.SDOHelperImpl.createProperty
> (SDOHelperImpl.java:408)
> at org.apache.tuscany.sdo.api.SDOUtil.createProperty(SDOUtil.java:
> 343)
> at
> org.apache.tuscany.das.rdb.graphbuilder.impl.GraphBuilderMetadata.createDynamicTypes
> (GraphBuilderMetadata.java:133)
> at
> org.apache.tuscany.das.rdb.graphbuilder.impl.GraphBuilderMetadata.getRootType
> (GraphBuilderMetadata.java:98)
> at org.apache.tuscany.das.rdb.impl.ReadCommandImpl.buildGraph
> (ReadCommandImpl.java:302)
> at org.apache.tuscany.das.rdb.impl.ReadCommandImpl.executeQuery
> (ReadCommandImpl.java:277)
> at com.eading.itu4.core.tuscany.dao.impl.BaseDAO.executeQuery
> (BaseDAO.java:53)
> at com.eading.itu4.core.tuscany.dao.impl.ProductDAO.listProdByShop
> (ProductDAO.java:530)
> at sun.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at
> org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke
> (JavaImplementationInvoker.java:156)
> at org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke
> (SCABindingInvoker.java:61)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:309)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:156)
> at $Proxy10.listProdByShop(Unknown Source)
> at
> com.eading.itu4.core.tuscany.service.impl.saleshop.ProductDAS.listProdByShop
> (ProductDAS.java:729)
> at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at
> org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke
> (JavaImplementationInvoker.java:156)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke
> (SCABindingInvoker.java:61)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:309)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:156)
> at $Proxy9.listProdByShop(Unknown Source)
> at com.eading.itu4.core.tuscany.service.test.saleshop.ProductDasTest
> $1.run(ProductDasTest.java:195)
> at java.lang.Thread.run(Unknown Source)
>
> 四、
> java.lang.IllegalArgumentException: The feature 'count' is not a valid
> changeable feature
> at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eOpenSet
> (BasicEObjectImpl.java:727)
> at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eSet
> (BasicEObjectImpl.java:658)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.set
> (DataObjectUtil.java:2074)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.setAndRecyle
> (DataObjectUtil.java:2080)
> at org.apache.tuscany.sdo.util.DataObjectUtil.set(DataObjectUtil.java:
> 765)
> at org.apache.tuscany.sdo.impl.DataObjectImpl.set(DataObjectImpl.java:
> 231)
> at
> com.eading.itu4.core.tuscany.service.impl.saleshop.ProductDAS.listProdByShop
> (ProductDAS.java:731)
> at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at
> org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke
> (JavaImplementationInvoker.java:156)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke
> (SCABindingInvoker.java:61)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:309)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:156)
> at $Proxy9.listProdByShop(Unknown Source)
> at com.eading.itu4.core.tuscany.service.test.saleshop.ProductDasTest
> $1.run(ProductDasTest.java:195)
> at java.lang.Thread.run(Unknown Source)
>
> 五、
> java.lang.NullPointerException
> at org.eclipse.emf.ecore.util.EcoreEList.resolveProxy(EcoreEList.java:
> 192)
> at org.eclipse.emf.ecore.util.EcoreEList.resolve(EcoreEList.java:152)
> at org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList
> $Resolving.resolve(EObjectContainmentWithInverseEList.java:94)
> at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:514)
> at org.eclipse.emf.ecore.util.BasicExtendedMetaData
> $EPackageExtendedMetaDataImpl.getType(BasicExtendedMetaData.java:2069)
> at org.eclipse.emf.ecore.util.BasicExtendedMetaData.getType
> (BasicExtendedMetaData.java:114)
> at
> org.apache.tuscany.sdo.helper.SDOHelperImpl.createOpenContentProperty
> (SDOHelperImpl.java:453)
> at org.apache.tuscany.sdo.api.SDOUtil.createOpenContentProperty
> (SDOUtil.java:358)
> at org.apache.tuscany.sdo.util.DataObjectUtil.demandOpenProperty
> (DataObjectUtil.java:1883)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.setFeatureName
> (DataObjectUtil.java:2149)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.process
> (DataObjectUtil.java:2296)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.init
> (DataObjectUtil.java:2017)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.create
> (DataObjectUtil.java:1932)
> at org.apache.tuscany.sdo.util.DataObjectUtil.set(DataObjectUtil.java:
> 765)
> at org.apache.tuscany.sdo.impl.DataObjectImpl.set(DataObjectImpl.java:
> 231)
> at
> com.eading.itu4.core.tuscany.service.impl.saleshop.ProductDAS.listProdByShop
> (ProductDAS.java:731)
> at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at
> org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke
> (JavaImplementationInvoker.java:156)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke
> (SCABindingInvoker.java:61)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:309)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:156)
> at $Proxy9.listProdByShop(Unknown Source)
> at com.eading.itu4.core.tuscany.service.test.saleshop.ProductDasTest
> $1.run(ProductDasTest.java:195)
> at java.lang.Thread.run(Unknown Source)
>
> 六、
> java.lang.NullPointerException
> at
> org.apache.tuscany.das.rdb.graphbuilder.impl.GraphBuilderMetadata.createDynamicTypes
> (GraphBuilderMetadata.java:131)
> at
> org.apache.tuscany.das.rdb.graphbuilder.impl.GraphBuilderMetadata.getRootType
> (GraphBuilderMetadata.java:98)
> at org.apache.tuscany.das.rdb.impl.ReadCommandImpl.buildGraph
> (ReadCommandImpl.java:302)
> at org.apache.tuscany.das.rdb.impl.ReadCommandImpl.executeQuery
> (ReadCommandImpl.java:277)
> at com.eading.itu4.core.tuscany.dao.impl.BaseDAO.executeQuery
> (BaseDAO.java:53)
> at com.eading.itu4.core.tuscany.dao.impl.ProductDAO.listProdByShop
> (ProductDAO.java:530)
> at sun.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at
> org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke
> (JavaImplementationInvoker.java:156)
> at org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke
> (SCABindingInvoker.java:61)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:309)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:156)
> at $Proxy10.listProdByShop(Unknown Source)
> at
> com.eading.itu4.core.tuscany.service.impl.saleshop.ProductDAS.listProdByShop
> (ProductDAS.java:729)
> at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at
> org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke
> (JavaImplementationInvoker.java:156)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke
> (SCABindingInvoker.java:61)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:309)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:156)
> at $Proxy9.listProdByShop(Unknown Source)
> at com.eading.itu4.core.tuscany.service.test.saleshop.ProductDasTest
> $1.run(ProductDasTest.java:195)
> at java.lang.Thread.run(Unknown Source)
>
> 七、
> java.lang.NullPointerException
> at org.apache.tuscany.sdo.util.DataObjectUtil.isInternalProperty
> (DataObjectUtil.java:395)
> at org.apache.tuscany.sdo.impl.ClassImpl.initPropertyLists
> (ClassImpl.java:271)
> at org.apache.tuscany.sdo.impl.ClassImpl.getExtendedProperties
> (ClassImpl.java:254)
> at org.apache.tuscany.sdo.impl.ClassImpl.isOpen(ClassImpl.java:119)
> at org.apache.tuscany.sdo.impl.ClassImpl.getProperty(ClassImpl.java:
> 502)
> at
> org.apache.tuscany.sdo.helper.SDOHelperImpl.createOpenContentProperty
> (SDOHelperImpl.java:459)
> at org.apache.tuscany.sdo.api.SDOUtil.createOpenContentProperty
> (SDOUtil.java:358)
> at org.apache.tuscany.sdo.util.DataObjectUtil.demandOpenProperty
> (DataObjectUtil.java:1883)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.setFeatureName
> (DataObjectUtil.java:2149)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.process
> (DataObjectUtil.java:2296)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.init
> (DataObjectUtil.java:2017)
> at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.create
> (DataObjectUtil.java:1932)
> at org.apache.tuscany.sdo.util.DataObjectUtil.set(DataObjectUtil.java:
> 765)
> at org.apache.tuscany.sdo.impl.DataObjectImpl.set(DataObjectImpl.java:
> 231)
> at
> com.eading.itu4.core.tuscany.service.impl.saleshop.ProductDAS.listProdByShop
> (ProductDAS.java:731)
> at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at
> org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke
> (JavaImplementationInvoker.java:156)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke
> (SCABindingInvoker.java:61)
> at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke
> (PassByValueInterceptor.java:60)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:309)
> at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke
> (JDKInvocationHandler.java:156)
> at $Proxy9.listProdByShop(Unknown Source)
> at com.eading.itu4.core.tuscany.service.test.saleshop.ProductDasTest
> $1.run(ProductDasTest.java:195)
> at java.lang.Thread.run(Unknown Source)
>
>
> 现在我怀疑是SDO或者DAS里在访问同步问题上没有处理好,请 Raymond Feng 找相关的开发人员帮忙解决一下,万分感谢! ⊙﹏⊙
>
> >
Reply all
Reply to author
Forward
0 new messages