[
https://issues.apache.org/jira/browse/DOSGI-213?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Christian Schneider updated DOSGI-213:
--------------------------------------
Fix Version/s: (was: 1.9.0)
2.0.0
> 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
> 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)