[ 
https://issues.apache.org/jira/browse/DOSGI-213?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Christian Schneider resolved DOSGI-213.
---------------------------------------
    Resolution: Fixed

ASM is now included in the multibundle distro.

> ASM library not in Multibundle 1.6.0, so no naming of webservice parameters 
> possible
> ------------------------------------------------------------------------------------
>
>                 Key: DOSGI-213
>                 URL: https://issues.apache.org/jira/browse/DOSGI-213
>             Project: CXF Distributed OSGi
>          Issue Type: Bug
>    Affects Versions: 1.6.0
>         Environment: OpenJDK Runtime Environment (IcedTea 2.4.4) 
> (7u51-2.4.4-0ubuntu0.13.10.1)
> OpenJDK Client VM (build 24.45-b08, mixed mode, sharing)
> Equinox
> Exlipse RCP 4.3.1
>            Reporter: Aurelius Robert Baier
>            Assignee: Christian Schneider
>            Priority: Minor
>              Labels: newbie
>             Fix For: 2.0.0
>
>
> When I tried to name the webservice method parameters and started my RCP 
> Application I got the exception pasted below. I got it working by taking the 
> servicemix.asm bundle of the Mutlibundle distribution 1.5.0 and defining it 
> in the MANIFEST.MF of my plugin.
> Please feel free to tell me what I need to do better in case this is no DOSGi 
> problem.
> Stacktrace
>       java.lang.RuntimeException: No ASM 
> ClassWriterFoundjava.lang.RuntimeException: No ASM ClassWriterFound
>       at 
> org.apache.cxf.common.util.ASMHelper.createClassWriter(ASMHelper.java:269) 
> ~[cxf-api-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.jaxws.WrapperClassGenerator.createWrapperClass(WrapperClassGenerator.java:151)
>  ~[cxf-rt-frontend-jaxws-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.jaxws.WrapperClassGenerator.generate(WrapperClassGenerator.java:122)
>  ~[cxf-rt-frontend-jaxws-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.generatedWrapperBeanClass(JaxWsServiceFactoryBean.java:683)
>  ~[cxf-rt-frontend-jaxws-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.getExtraClass(JaxWsServiceFactoryBean.java:653)
>  ~[cxf-rt-frontend-jaxws-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:484)
>  ~[cxf-rt-core-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:704)
>  ~[cxf-rt-frontend-jaxws-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:550)
>  ~[cxf-rt-core-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:265)
>  ~[cxf-rt-core-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:215)
>  ~[cxf-rt-frontend-jaxws-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:102)
>  ~[cxf-rt-frontend-simple-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:159) 
> ~[cxf-rt-frontend-simple-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:211)
>  ~[cxf-rt-frontend-jaxws-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.dosgi.dsw.handlers.AbstractPojoConfigurationTypeHandler.createServerFromFactory(AbstractPojoConfigurationTypeHandler.java:191)
>  ~[cxf-dosgi-ri-dsw-cxf-1.6.0.jar:na]
>       at 
> org.apache.cxf.dosgi.dsw.handlers.PojoConfigurationTypeHandler.createServer(PojoConfigurationTypeHandler.java:119)
>  ~[cxf-dosgi-ri-dsw-cxf-1.6.0.jar:na]
>       at 
> org.apache.cxf.dosgi.dsw.service.RemoteServiceAdminCore.exportInterfaces(RemoteServiceAdminCore.java:184)
>  [cxf-dosgi-ri-dsw-cxf-1.6.0.jar:na]
>       at 
> org.apache.cxf.dosgi.dsw.service.RemoteServiceAdminCore.exportService(RemoteServiceAdminCore.java:140)
>  [cxf-dosgi-ri-dsw-cxf-1.6.0.jar:na]
>       at 
> org.apache.cxf.dosgi.dsw.service.RemoteServiceAdminInstance$1.run(RemoteServiceAdminInstance.java:59)
>  [cxf-dosgi-ri-dsw-cxf-1.6.0.jar:na]
>       at 
> org.apache.cxf.dosgi.dsw.service.RemoteServiceAdminInstance$1.run(RemoteServiceAdminInstance.java:57)
>  [cxf-dosgi-ri-dsw-cxf-1.6.0.jar:na]
>       at java.security.AccessController.doPrivileged(Native Method) 
> [na:1.7.0_51]
>       at 
> org.apache.cxf.dosgi.dsw.service.RemoteServiceAdminInstance.exportService(RemoteServiceAdminInstance.java:57)
>  [cxf-dosgi-ri-dsw-cxf-1.6.0.jar:na]
>       at 
> org.apache.cxf.dosgi.dsw.service.RemoteServiceAdminInstance.exportService(RemoteServiceAdminInstance.java:41)
>  [cxf-dosgi-ri-dsw-cxf-1.6.0.jar:na]
>       at 
> org.apache.cxf.dosgi.topologymanager.exporter.TopologyManagerExport.exportServiceUsingRemoteServiceAdmin(TopologyManagerExport.java:185)
>  [cxf-dosgi-ri-topology-manager-1.6.0.jar:na]
>       at 
> org.apache.cxf.dosgi.topologymanager.exporter.TopologyManagerExport.doExportService(TopologyManagerExport.java:168)
>  [cxf-dosgi-ri-topology-manager-1.6.0.jar:na]
>       at 
> org.apache.cxf.dosgi.topologymanager.exporter.TopologyManagerExport$3.run(TopologyManagerExport.java:143)
>  [cxf-dosgi-ri-topology-manager-1.6.0.jar:na]
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>  [na:1.7.0_51]
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>  [na:1.7.0_51]
>       at java.lang.Thread.run(Thread.java:744) [na:1.7.0_51]
> Caused by: java.lang.NoClassDefFoundError: org/objectweb/asm/ClassWriter
>       at 
> org.apache.cxf.common.util.ASMHelper.getASMClassWriterClass(ASMHelper.java:86)
>  ~[cxf-api-2.7.8.jar:2.7.8]
>       at org.apache.cxf.common.util.ASMHelper.getASMClass(ASMHelper.java:97) 
> ~[cxf-api-2.7.8.jar:2.7.8]
>       at 
> org.apache.cxf.common.util.ASMHelper.createClassWriter(ASMHelper.java:266) 
> ~[cxf-api-2.7.8.jar:2.7.8]
>       ... 27 common frames omitted
> Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.ClassWriter
>       at 
> org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
>  ~[org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
>       at 
> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
>  ~[org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
>       at 
> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
>  ~[org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
>       at 
> org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
>  ~[org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
>       at java.lang.ClassLoader.loadClass(ClassLoader.java:358) ~[na:1.7.0_51]
>       ... 30 common frames omitted
>       14:44
> My proof of concept webservice interface:
> package net.something.wsconnector.ws;
> import javax.jws.WebMethod;
> import javax.jws.WebParam;
> import javax.jws.WebResult;
> import javax.jws.WebService;
> @WebService(targetNamespace = "http://olp/";, name="OlpService")
> public interface OlpService {
>       
>       @WebResult(name = "versionString", targetNamespace = "")
>       @WebMethod
>       public String getVersion(@WebParam(name="name") String name);
>       
>       
>       @WebResult(name = "patientName", targetNamespace = "")
>       @WebMethod
>       public String getPatient(@WebParam(name="patientNo") String patientNo);
> }
> My MANIFEST.MF:
> Manifest-Version: 1.0
> Bundle-ManifestVersion: 2
> Bundle-Name: Olpconnector
> Bundle-SymbolicName: net.something.wsconnector;singleton:=true
> Bundle-Version: 1.0.0.qualifier
> Bundle-Activator: net.something.wsconnector.Activator
> Bundle-RequiredExecutionEnvironment: JavaSE-1.7
> Import-Package: org.osgi.framework;version="1.3.0"
> Bundle-ActivationPolicy: lazy
> Require-Bundle: org.eclipse.equinox.console;bundle-version="1.0.0",
>  org.apache.felix.gogo.shell;bundle-version="0.8.0",
>  org.apache.felix.gogo.command;bundle-version="0.8.0",
>  org.apache.felix.gogo.runtime;bundle-version="0.8.0",
>  org.ops4j.base.lang;bundle-version="1.4.0",
> --- added line
>  org.apache.servicemix.bundles.asm;bundle-version="3.3.1",
> --- /added line
>  cxf-dosgi-ri-osgi-api;bundle-version="1.6.0",
>  cxf-dosgi-ri-topology-manager;bundle-version="1.6.0",
>  cxf-dosgi-ri-dsw-cxf;bundle-version="1.6.0"



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to