2012-03-10 74 views
0

我將deploymy與cxf-dosgi-ri-singlebundle-distribution-1.3.jar捆綁在一個獨立的Felix框架實例中。 但如果我部署在GlassFish中3.1.2我srating的glasfish域時出現此錯誤的包:cand部署glassfish中的Apache cfx dosgi包

[#|2012-03-10T22:55:29.310+0100|SEVERE|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=21;_ThreadName=pool-7-thread-2;|Exception in thread "pool-7-thread-2" |#] 
[#|2012-03-10T22:55:29.312+0100|SEVERE|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=21;_ThreadName=pool-7-thread-2;|java.lang.ClassCastException: 
org.apache.felix.eventadmin.impl.security.EventAdminSecurityDecorator cannot be cast to org.osgi.service.event.EventAdmin 
at org.apache.cxf.dosgi.dsw.service.EventAdminHelper.getEventAdmins(EventAdminHelper.java:127) 
at org.apache.cxf.dosgi.dsw.service.EventAdminHelper.notifyEventAdmin(EventAdminHelper.java:97) 
at org.apache.cxf.dosgi.dsw.service.EventProducer.publishNotifcation(EventProducer.java:62) 
at org.apache.cxf.dosgi.dsw.service.EventProducer.publishNotifcation(EventProducer.java:47) 
at org.apache.cxf.dosgi.dsw.service.RemoteServiceAdminCore.exportService(RemoteServiceAdminCore.java:265) 
at org.apache.cxf.dosgi.dsw.service.RemoteServiceAdminInstance$1.run(RemoteServiceAdminInstance.java:72) 
at org.apache.cxf.dosgi.dsw.service.RemoteServiceAdminInstance$1.run(RemoteServiceAdminInstance.java:67) 
at java.security.AccessController.doPrivileged(Native Method) 
at org.apache.cxf.dosgi.dsw.service.RemoteServiceAdminInstance.exportService(RemoteServiceAdminInstance.java:66) 
at org.apache.cxf.dosgi.dsw.service.RemoteServiceAdminInstance.exportService(RemoteServiceAdminInstance.java:38) 
at org.apache.cxf.dosgi.topologymanager.TopologyManager$2.run(TopologyManager.java:267) 
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
at java.lang.Thread.run(Thread.java:662) 

回答

0

這可能是因爲EventAdminHelper是有線到不同的org.osgi.service.event包比事件管理GlassFish使用的服務。檢查包裝的接線細節,看看它們實際上是否使用相同的包裝。