Hi,

We ran into some problems with Axis2 that was resolved by using Buddy
classloading! But we are currently not using Muse (but OSGi / Equinox)
so I m not sure if our solution works for you.

We added the statement "Eclipse-BuddyPolicy: dependent" to the axis2
bundle manifest file
and Eclipse-RegisterBuddy: org.apache.axis2 in the services that
registeres web services.

Hope it helps

BR

Lars








-----Original Message-----
From: Mario Prettner [mailto:[EMAIL PROTECTED] 
Sent: den 24 januari 2008 12:41
To: [email protected]
Cc: Mario Prettner
Subject: Axis2 OSGi Deployment - Problem using SOAPProvider

Hello everyone,

I have serious problems deploying axis2 in an osgi environment.

My intention was to write some osgi services which should also be made
available via webservices using the SOAPProvider Interface (and further
the org.eclipse.corona.internal.soa.provider.*axis2*.*AdminServiceImpl
service*) provided by the muse (corona) package.

I've nearly tried every deployment scenario I could believe.

The first deployment-scenario was based on the muse 2.2.0 release. I
created a new eclipse project (using eclipse 3.3.1.1) then added all the
osgi-plugins from the release to the "Plug-in Development"->"Target
Platform".
I also added
   - org.eclipse.equinox.http.jetty (1.0.1.R33x_v20070816)
   - org.eclipse.equinox.http.servlet (1.0.1R33x_v20070816)
   - org.mortbay.jetty (5.1.11.v200706111724)
   - and it's dependencies

Then I created a new "OSGi Framework" runtime configuration, activating
all the plugins.

Starting the OSGi Framework gives me following output

--snip--
osgi> Host org.apache.axis2;bundle-version="1.1.0" Bundle
org.eclipse.corona.axis2.util
Host org.apache.axiom.api;version="1.2.0" Bundle org.apache.axiom.impl
Host org.apache.axiom.api;version="1.2.0" Bundle org.apache.axiom.dom
...
--snip--
{org.apache.muse.osgi.soa.core.SOAPProvider}={MajorVersion=2, Name=Axis,
MinorVersion=0, service.id=26}  Registered by bundle: 
[EMAIL PROTECTED]:file:../../../workspaces/da-extern/axis2-osgi-initial/
plugins/axis2-osgi/org.eclipse.corona.soa.provider.axis2/
[12]
...
--snip--

Then starting my simple plugin, which retrieves the SOAPProvider
service, and deploys my simple service:

--snip--
               SOAPProvider sp = (SOAPProvider) srv;
               try {
                   sp.deployService("srv1", HelloService.class,
helloServiceTracker.getService(), null);
               } catch (Exception e) {
                   e.printStackTrace();
               }
}
--snips--

ends up with the following exception:

--snip--
java.lang.NoClassDefFoundError: org/apache/ws/java2wsdl/SchemaGenerator
   at
org.apache.axis2.deployment.util.Utils.fillAxisService(Utils.java:272)
   at
org.eclipse.corona.soa.provider.axis2.internal.AdminServiceImpl.deployRP
CService(AdminServiceImpl.java:148) 

   at
org.eclipse.corona.soa.provider.axis2.internal.AdminServiceImpl.deploySe
rvice(AdminServiceImpl.java:159) 

   at ws1.Activator$SoapServiceTracker.addingService(Activator.java:66)
   at
org.osgi.util.tracker.ServiceTracker$Tracked.trackAdding(ServiceTracker.
java:1064) 

   at
org.osgi.util.tracker.ServiceTracker$Tracked.trackInitialServices(Servic
eTracker.java:926) 

   at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:330)
   at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:274)
   at ws1.Activator.start(Activator.java:37)
   at
org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleC
ontextImpl.java:999) 

   at java.security.AccessController.doPrivileged(Native Method)
   at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivato
r(BundleContextImpl.java:993) 

   at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleC
ontextImpl.java:974) 

   at
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHo
st.java:346) 

   at
org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractB
undle.java:350) 

   at
org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framewor
k.java:1118) 

   at
org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles
(StartLevelManager.java:634) 

   at
org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(Start
LevelManager.java:508) 

   at
org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLev
el(StartLevelManager.java:282) 

   at
org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent
(StartLevelManager.java:468) 

   at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventMana
ger.java:195) 

   at
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventMa
nager.java:297) 

Caused by: java.lang.ClassNotFoundException: 
org.apache.ws.java2wsdl.SchemaGenerator
   at java.lang.ClassLoader.findClass(ClassLoader.java:358)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
   at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClassInternal(
BundleLoader.java:429) 

   at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLo
ader.java:369) 

   at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLo
ader.java:357) 

   at
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(Defau
ltClassLoader.java:83) 

   at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
   at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
   ... 22 more
--snip--


I tried to get newer bundles from muse, corona, ... cvs/svn trunk
repositories, deploying those plugins, ..
(newer bundles require declarative services, ...) tried to bundle axis2
on my own ... (... also packing all the required jars into it's bundle
directly ...) ... solving the Exception above, but getting another in
the next source lines ...
... never working ;(

So hopefully someone could give me an advice, which bundle releases
already do work, what to do getting SOAPProvider service working
properly (letting me deploy service objects as axis2 webservices which
are accessible via eg. 
SOAP 1.1 protocol).

As I searched for similar problems using axis2 (soapprovider) in an osgi
environment, I could not find any answers to my problems. Isn't there
anybody using the releases in such a deployment scenario?

Or what am I doing bad? I want to give it another try.

Regards,
Mario


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to