Tried the two services in a service group idea, but unfortunately, the
MR is invoked before startUp() in seemingly all cases. So it loads the
MR and throws an exception, next startUp() loads the config, and then
subsequent calls will work. Still, we'd rather not have an exception
on start up.
Thanks,
Robert
On 10/15/06, robert lazarski <[EMAIL PROTECTED]> wrote:
OK, I can now get startUp() to work, thanks. But startUp() happens
_after_ the MR is processed. Why is that?
The use case is this: startUp() inits a dependancy that the MR will
need. The way it is now, the MR will throw because startUp() is called
after the MR is processed.
One work around I suppose is two have two services in one
ServiceGroup, one that does nothing but have startUp() , and the other
that uses the MR. I don't think that is really the right solution
though.
Thanks for working with me on this. Here's my stacktrace that shows
the problem. Notice the
'Starting spring init' after the exception, which is a print
statement in the first line in startUp(). Also I want to clarify what
I'm trying to do here is a user space way to load spring inside an AAR
- it has nothing to do with the Spring code inside Axis2 which is
working fine.
2006-10-15 12:59:59,027 [org.apache.axis2.deployment.ServiceBuilder] -
Error in schema generating null
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.apache.axis2.deployment.util.Utils.fillAxisService(Utils.java:248)
at
org.apache.axis2.deployment.ServiceBuilder.populateService(ServiceBuilder.java:266)
at
org.apache.axis2.deployment.ServiceGroupBuilder.populateServiceGroup(ServiceGroupBuilder.java:91)
at
org.apache.axis2.deployment.repository.util.ArchiveReader.buildServiceGroup(ArchiveReader.java:83)
at
org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:117)
at
org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:533)
at
org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:200)
at
org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:210)
at
org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:157)
at
org.apache.axis2.deployment.DeploymentEngine.loadServices(DeploymentEngine.java:84)
at
org.apache.axis2.deployment.WarBasedAxisConfigurator.loadServices(WarBasedAxisConfigurator.java:256)
at
org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:72)
at
org.apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.java:359)
at
org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:304)
at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1105)
at
org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:932)
at
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3917)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:4201)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:809)
at
org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:698)
at
org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:472)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
at
org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
at
org.apache.catalina.core.StandardService.start(StandardService.java:450)
at
org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
Caused by: org.apache.axis2.AxisFault: Axis2 Can't find Spring's
ApplicationContext; nested exception is:
java.lang.Exception: Axis2 Can't find Spring's ApplicationContext
at org.apache.axis2.AxisFault.makeFault(AxisFault.java:318)
at
org.apache.axis2.extensions.spring.receivers.SpringAppContextAwareObjectSupplier.getServiceObject(SpringAppContextAwareObjectSupplier.java:61)
... 44 more
Caused by: java.lang.Exception: Axis2 Can't find Spring's ApplicationContext
at
org.apache.axis2.extensions.spring.receivers.SpringAppContextAwareObjectSupplier.getServiceObject(SpringAppContextAwareObjectSupplier.java:51)
... 44 more
Starting spring init
On 10/14/06, Deepal Jayasinghe <[EMAIL PROTECTED]> wrote:
> your services.xml should look like below;
>
> <service name="SampleService3"
> class="org.apachecon.us.sample.ServiceLifeCycleImpl">
> <parameter name="ServiceClass" locked="false">
> org.apachecon.us.sample.SampleService3</parameter>
> </service>
>
> robert lazarski wrote:
>
> > Hi all,
> >
> > I'm trying to test the latest svn with spring inside the aar via
> > startUp() . This was working a few days ago with startUp() in the
> > Service interface. Anyways, ServiceLifeCycle seems to work by
> > reflection so I have a services.xml like so:
> >
> > <serviceGroup>
> > <service name="SpringInit">
> > <description>
> > This is a sample spring init service
> > </description>
> > <parameter name="ServiceClass"
> > locked="false">spring.SpringInit</parameter>
> > <operation name="springInit">
> > <messageReceiver
> > class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
> > </operation>
> > </service>
> > <service name="SpringAwareService">
> > <description>
> > simple spring example - inside the AAR
> > </description>
> > <!-- need the TCCL param when using spring inside the AAR -->
> > <parameter name="ServiceTCCL" locked="false">composite</parameter>
> > <parameter name="ServiceObjectSupplier"
> >
locked="false">org.apache.axis2.extensions.spring.receivers.SpringAppContextAwareObjectSupplier</parameter>
> >
> > <parameter name="SpringBeanName"
> > locked="false">springAwareService</parameter>
> > <operation name="getValue">
> > <messageReceiver
> > class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
> > </operation>
> > </service>
> > </serviceGroup>
> >
> > So the idea is that spring.SpringInit implements ServiceLifeCycle and
> > will load the spring config via startUp() . And not until a client
> > invokation the MR of SpringAwareService will be called.
> >
> > What I'm seeing though is the SpringAwareService MR is being called on
> > server start, even though I have not declared any scope. And
> > ServiceLifeCycle.startUp() is not called ever. The MR was never
> > invoked on server start before with the default scope IIRC. This is
> > generating a stack trace on server start as :
> >
> > 2006-10-13 15:07:00,997 [org.apache.axis2.deployment.ServiceBuilder] -
> > Error in schema generating null
> > java.lang.reflect.InvocationTargetException
> > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > at
> >
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >
> > at
> >
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >
> > at java.lang.reflect.Method.invoke(Method.java:585)
> > at
> > org.apache.axis2.deployment.util.Utils.fillAxisService(Utils.java:243)
> > at
> >
org.apache.axis2.deployment.ServiceBuilder.populateService(ServiceBuilder.java:266)
> >
> > at
> >
org.apache.axis2.deployment.ServiceGroupBuilder.populateServiceGroup(ServiceGroupBuilder.java:91)
> >
> > at
> >
org.apache.axis2.deployment.repository.util.ArchiveReader.buildServiceGroup(ArchiveReader.java:83)
> >
> > at
> >
org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:117)
> >
> > at
> >
org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:533)
> >
> > at
> >
org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:200)
> >
> > at
> >
org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:210)
> >
> > at
> >
org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:157)
> >
> > at
> >
org.apache.axis2.deployment.DeploymentEngine.loadServices(DeploymentEngine.java:84)
> >
> > at
> >
org.apache.axis2.deployment.WarBasedAxisConfigurator.loadServices(WarBasedAxisConfigurator.java:252)
> >
> > at
> >
org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:72)
> >
> > at
> >
org.apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.java:359)
> >
> > at
> > org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:304)
> > at
> >
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1091)
> >
> > at
> > org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:925)
> > at
> >
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3880)
> >
> > at
> > org.apache.catalina.core.StandardContext.start(StandardContext.java:4141)
> > at
> >
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
> >
> > at
> > org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
> > at
> > org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
> > at
> > org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:804)
> > at
> > org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:693)
> > at
> > org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:472)
> > at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1118)
> > at
> > org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
> >
> > at
> >
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
> >
> > at
> > org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1020)
> > at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
> > at
> > org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
> > at
> > org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
> > at
> > org.apache.catalina.core.StandardService.start(StandardService.java:450)
> > at
> > org.apache.catalina.core.StandardServer.start(StandardServer.java:680)
> > at org.apache.catalina.startup.Catalina.start(Catalina.java:536)
> > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > at
> >
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >
> > at
> >
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >
> > at java.lang.reflect.Method.invoke(Method.java:585)
> > at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:275)
> > at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
> > Caused by: org.apache.axis2.AxisFault: Axis2 Can't find Spring's
> > ApplicationContext; nested exception is:
> > java.lang.Exception: Axis2 Can't find Spring's ApplicationContext
> > at org.apache.axis2.AxisFault.makeFault(AxisFault.java:318)
> > at
> >
org.apache.axis2.extensions.spring.receivers.SpringAppContextAwareObjectSupplier.getServiceObject(SpringAppContextAwareObjectSupplier.java:61)
> >
> > ... 44 more
> > Caused by: java.lang.Exception: Axis2 Can't find Spring's
> > ApplicationContext
> > at
> >
org.apache.axis2.extensions.spring.receivers.SpringAppContextAwareObjectSupplier.getServiceObject(SpringAppContextAwareObjectSupplier.java:51)
> >
> > ... 44 more
> >
> > Any ideas ?
> > Robert
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> >
>
> --
> Thanks,
> Deepal
> ................................................................
> ~Future is Open~
>
>
>
> ---------------------------------------------------------------------
> 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]