【问题标题】:Virgo's application deployer API crashing on undeployVirgo 的应用程序部署程序 API 在取消部署时崩溃
【发布时间】:2011-07-27 19:13:38
【问题描述】:

我正在尝试让一个包部署其他包并使用 org.eclipse.virgo.kernel.deployer.core.ApplicationDeployer 启动它们,就像管理应用程序 (org.eclipse.virgo.apps.admin) 正在做的那样.我从管理控制台代码中启发了自己并执行以下操作: deploymentIdentity = applicationDeployer(bundleFile.getURI(), new DeploymentOptions(false,false,true));

和:

applicationDeployer.undeploy(deploymentIdentity);

它可以工作,但偶尔会崩溃并出现异常:

    service proxy has been destroyed
org.springframework.osgi.service.importer.ServiceProxyDestroyedException: service proxy has been destroyed
        at org.springframework.osgi.service.importer.support.internal.aop.ServiceDynamicInterceptor$ServiceLookUpCallback.doWithRetry(ServiceDynamicInterceptor.java:105) ~[na:na]
        at org.springframework.osgi.service.importer.support.internal.support.RetryTemplate.execute(RetryTemplate.java:83) ~[na:na]
        at org.springframework.osgi.service.importer.support.internal.aop.ServiceDynamicInterceptor.lookupService(ServiceDynamicInterceptor.java:430) ~[na:na]
        at org.springframework.osgi.service.importer.support.internal.aop.ServiceDynamicInterceptor.getTarget(ServiceDynamicInterceptor.java:415) ~[na:na]
        at org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.invoke(ServiceInvoker.java:62) ~[na:na]
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) ~[na:na]
        at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) ~[na:na]
        at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) ~[na:na]
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) ~[na:na]
        at org.springframework.osgi.service.importer.support.LocalBundleContextAdvice.invoke(LocalBundleContextAdvice.java:59) ~[na:na]
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) ~[na:na]
        at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) ~[na:na]
        at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) ~[na:na]
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) ~[na:na]
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) ~[na:na]

我首先将 applicationDeployer 与服务 ref 连接,然后与 osgi:listener 连接。在这两种实现中,applicationDeployer 引用永远不会返回,但在 virgo 的管理 web 应用程序中仍然可以正常工作。 我做错了什么?

【问题讨论】:

    标签: java eclipse-virgo


    【解决方案1】:

    感谢 Glym Normington 在 Eclipse 论坛上为我提供遮阳篷:http://www.eclipse.org/forums/index.php/t/225554/

    【讨论】:

      猜你喜欢
      • 2015-10-11
      • 1970-01-01
      • 2018-02-11
      • 1970-01-01
      • 1970-01-01
      • 2017-07-01
      • 2020-08-06
      • 2014-10-26
      相关资源
      最近更新 更多