You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by Lars Heinemann <la...@compart.net> on 2008/04/02 15:26:06 UTC
Question about the shared-library concept in smx
Hi,
I use my own shared library containing a class holding constants for
shared use.
This lib is deployed as .zip into the hotdeploy folder and everything
works fine.
Now I decided to put another helper class into this lib providing only
some static methods for common things needed by most of my
components/endpoints.
After redeploying it, it constantly throws ClassNotFound exceptions when
trying to access the static helper methods.
Do I have some caching problems or are there some strange restrictions I
missed?
Any ideas are welcome.
Regards,
Lars
Re: Question about the shared-library concept in smx
Posted by Lars Heinemann <la...@compart.net>.
Good to know.
Thanks for your assistance ;)
Regards,
Lars
Guillaume Nodet schrieb:
> Yeah, this is the easiest way to share classes, but these will be available
> from the container classloader, from which all classloaders are derived. So
> it may work for your use case, but it can be a problem from time to time.
>
> On Wed, Apr 2, 2008 at 4:17 PM, Lars Heinemann <la...@compart.net>
> wrote:
>
>
>> Guillaume,
>>
>> now it got a possible solution for me. I just copied the
>> cp-shared-1.0-SNAPSHOT.jar into the "lib" folder of my smx-installation.
>> This solved the issue it seems.
>>
>> I don't know if it's good to do so but for now I am happy that it finally
>> works.
>>
>> Regards,
>> Lars
>>
>>
>>
>> Guillaume Nodet schrieb:
>>
>>> I guess remote debugging is the only solution in such a case.
>>>
>>> On Wed, Apr 2, 2008 at 4:04 PM, Lars Heinemann <
>>>
>> lars.heinemann@compart.net>
>>
>>> wrote:
>>>
>>>
>>>
>>>> Guillaume,
>>>>
>>>> it is a jbi-shared-library. The cp-shared-1.0-SNAPSHOT.zip is deployed
>>>> into the hotdeploy folder of smx.
>>>>
>>>> I put the following dependency in my SU's pom.xml.
>>>>
>>>> <dependency>
>>>> <groupId>net.compart.jbi</groupId>
>>>> <artifactId>cp-shared</artifactId>
>>>> <version>${project.version}</version>
>>>> </dependency>
>>>>
>>>> This works fine most of the time...but not now it seems.
>>>> I did some testing now. From a SU of my port listener I have access to
>>>> the methods.
>>>> From the file poller SU it doesn't work. For me it's a bit strange
>>>> now...I would understand if it doesn't work at all but on some SU's it
>>>> works like this.
>>>>
>>>> Lars
>>>>
>>>>
>>>>
>>>>
>>>> Guillaume Nodet schrieb:
>>>>
>>>>
>>>>> Do you reference the SL from a SU using the <classpath/> tag ? Or from
>>>>>
>> a
>>
>>>>> component using a reference in the JBI descriptor ?
>>>>> These are the only two ways to access shared libraries, and the first
>>>>>
>>>>>
>>>> one is
>>>>
>>>>
>>>>> ServiceMix specific (just ftr).
>>>>>
>>>>> On Wed, Apr 2, 2008 at 3:31 PM, Lars Heinemann <
>>>>>
>>>>>
>>>> lars.heinemann@compart.net>
>>>>
>>>>
>>>>> wrote:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> I tried almost everything. Even the deletion of the data folder and
>>>>>>
>> the
>>
>>>>>> local m2 repo didn't solved the problem.
>>>>>>
>>>>>> Lars
>>>>>>
>>>>>>
>>>>>>
>>>>>> Guillaume Nodet schrieb:
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Does this still happen if you restart ServiceMix ? It may be a bug
>>>>>>>
>> in
>>
>>>>>>>
>>>>>> the
>>>>>>
>>>>>>
>>>>>>
>>>>>>> shared library update processing ....
>>>>>>>
>>>>>>> On Wed, Apr 2, 2008 at 3:26 PM, Lars Heinemann <
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> lars.heinemann@compart.net>
>>>>>>
>>>>>>
>>>>>>
>>>>>>> wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I use my own shared library containing a class holding constants
>>>>>>>>
>> for
>>
>>>>>>>> shared use.
>>>>>>>> This lib is deployed as .zip into the hotdeploy folder and
>>>>>>>>
>> everything
>>
>>>>>>>> works fine.
>>>>>>>>
>>>>>>>> Now I decided to put another helper class into this lib providing
>>>>>>>>
>>>>>>>>
>>>> only
>>>>
>>>>
>>>>>>>> some static methods for common things needed by most of my
>>>>>>>> components/endpoints.
>>>>>>>>
>>>>>>>> After redeploying it, it constantly throws ClassNotFound exceptions
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>> when
>>>>>>
>>>>>>
>>>>>>
>>>>>>>> trying to access the static helper methods.
>>>>>>>>
>>>>>>>> Do I have some caching problems or are there some strange
>>>>>>>>
>>>>>>>>
>>>> restrictions
>>>>
>>>>
>>>>>> I
>>>>>>
>>>>>>
>>>>>>
>>>>>>>> missed?
>>>>>>>>
>>>>>>>> Any ideas are welcome.
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>> Lars
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>
>>>>>
>>>
>>>
>>>
>
>
>
>
Re: Question about the shared-library concept in smx
Posted by Guillaume Nodet <gn...@gmail.com>.
Yeah, this is the easiest way to share classes, but these will be available
from the container classloader, from which all classloaders are derived. So
it may work for your use case, but it can be a problem from time to time.
On Wed, Apr 2, 2008 at 4:17 PM, Lars Heinemann <la...@compart.net>
wrote:
> Guillaume,
>
> now it got a possible solution for me. I just copied the
> cp-shared-1.0-SNAPSHOT.jar into the "lib" folder of my smx-installation.
> This solved the issue it seems.
>
> I don't know if it's good to do so but for now I am happy that it finally
> works.
>
> Regards,
> Lars
>
>
>
> Guillaume Nodet schrieb:
> > I guess remote debugging is the only solution in such a case.
> >
> > On Wed, Apr 2, 2008 at 4:04 PM, Lars Heinemann <
> lars.heinemann@compart.net>
> > wrote:
> >
> >
> >> Guillaume,
> >>
> >> it is a jbi-shared-library. The cp-shared-1.0-SNAPSHOT.zip is deployed
> >> into the hotdeploy folder of smx.
> >>
> >> I put the following dependency in my SU's pom.xml.
> >>
> >> <dependency>
> >> <groupId>net.compart.jbi</groupId>
> >> <artifactId>cp-shared</artifactId>
> >> <version>${project.version}</version>
> >> </dependency>
> >>
> >> This works fine most of the time...but not now it seems.
> >> I did some testing now. From a SU of my port listener I have access to
> >> the methods.
> >> From the file poller SU it doesn't work. For me it's a bit strange
> >> now...I would understand if it doesn't work at all but on some SU's it
> >> works like this.
> >>
> >> Lars
> >>
> >>
> >>
> >>
> >> Guillaume Nodet schrieb:
> >>
> >>> Do you reference the SL from a SU using the <classpath/> tag ? Or from
> a
> >>> component using a reference in the JBI descriptor ?
> >>> These are the only two ways to access shared libraries, and the first
> >>>
> >> one is
> >>
> >>> ServiceMix specific (just ftr).
> >>>
> >>> On Wed, Apr 2, 2008 at 3:31 PM, Lars Heinemann <
> >>>
> >> lars.heinemann@compart.net>
> >>
> >>> wrote:
> >>>
> >>>
> >>>
> >>>> I tried almost everything. Even the deletion of the data folder and
> the
> >>>> local m2 repo didn't solved the problem.
> >>>>
> >>>> Lars
> >>>>
> >>>>
> >>>>
> >>>> Guillaume Nodet schrieb:
> >>>>
> >>>>
> >>>>> Does this still happen if you restart ServiceMix ? It may be a bug
> in
> >>>>>
> >>>>>
> >>>> the
> >>>>
> >>>>
> >>>>> shared library update processing ....
> >>>>>
> >>>>> On Wed, Apr 2, 2008 at 3:26 PM, Lars Heinemann <
> >>>>>
> >>>>>
> >>>> lars.heinemann@compart.net>
> >>>>
> >>>>
> >>>>> wrote:
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>> Hi,
> >>>>>>
> >>>>>> I use my own shared library containing a class holding constants
> for
> >>>>>> shared use.
> >>>>>> This lib is deployed as .zip into the hotdeploy folder and
> everything
> >>>>>> works fine.
> >>>>>>
> >>>>>> Now I decided to put another helper class into this lib providing
> >>>>>>
> >> only
> >>
> >>>>>> some static methods for common things needed by most of my
> >>>>>> components/endpoints.
> >>>>>>
> >>>>>> After redeploying it, it constantly throws ClassNotFound exceptions
> >>>>>>
> >>>>>>
> >>>> when
> >>>>
> >>>>
> >>>>>> trying to access the static helper methods.
> >>>>>>
> >>>>>> Do I have some caching problems or are there some strange
> >>>>>>
> >> restrictions
> >>
> >>>> I
> >>>>
> >>>>
> >>>>>> missed?
> >>>>>>
> >>>>>> Any ideas are welcome.
> >>>>>>
> >>>>>> Regards,
> >>>>>> Lars
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>
> >>>
> >>>
> >>>
> >
> >
> >
> >
>
--
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
Re: Question about the shared-library concept in smx
Posted by Lars Heinemann <la...@compart.net>.
Guillaume,
now it got a possible solution for me. I just copied the cp-shared-1.0-SNAPSHOT.jar into the "lib" folder of my smx-installation.
This solved the issue it seems.
I don't know if it's good to do so but for now I am happy that it finally works.
Regards,
Lars
Guillaume Nodet schrieb:
> I guess remote debugging is the only solution in such a case.
>
> On Wed, Apr 2, 2008 at 4:04 PM, Lars Heinemann <la...@compart.net>
> wrote:
>
>
>> Guillaume,
>>
>> it is a jbi-shared-library. The cp-shared-1.0-SNAPSHOT.zip is deployed
>> into the hotdeploy folder of smx.
>>
>> I put the following dependency in my SU's pom.xml.
>>
>> <dependency>
>> <groupId>net.compart.jbi</groupId>
>> <artifactId>cp-shared</artifactId>
>> <version>${project.version}</version>
>> </dependency>
>>
>> This works fine most of the time...but not now it seems.
>> I did some testing now. From a SU of my port listener I have access to
>> the methods.
>> From the file poller SU it doesn't work. For me it's a bit strange
>> now...I would understand if it doesn't work at all but on some SU's it
>> works like this.
>>
>> Lars
>>
>>
>>
>>
>> Guillaume Nodet schrieb:
>>
>>> Do you reference the SL from a SU using the <classpath/> tag ? Or from a
>>> component using a reference in the JBI descriptor ?
>>> These are the only two ways to access shared libraries, and the first
>>>
>> one is
>>
>>> ServiceMix specific (just ftr).
>>>
>>> On Wed, Apr 2, 2008 at 3:31 PM, Lars Heinemann <
>>>
>> lars.heinemann@compart.net>
>>
>>> wrote:
>>>
>>>
>>>
>>>> I tried almost everything. Even the deletion of the data folder and the
>>>> local m2 repo didn't solved the problem.
>>>>
>>>> Lars
>>>>
>>>>
>>>>
>>>> Guillaume Nodet schrieb:
>>>>
>>>>
>>>>> Does this still happen if you restart ServiceMix ? It may be a bug in
>>>>>
>>>>>
>>>> the
>>>>
>>>>
>>>>> shared library update processing ....
>>>>>
>>>>> On Wed, Apr 2, 2008 at 3:26 PM, Lars Heinemann <
>>>>>
>>>>>
>>>> lars.heinemann@compart.net>
>>>>
>>>>
>>>>> wrote:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I use my own shared library containing a class holding constants for
>>>>>> shared use.
>>>>>> This lib is deployed as .zip into the hotdeploy folder and everything
>>>>>> works fine.
>>>>>>
>>>>>> Now I decided to put another helper class into this lib providing
>>>>>>
>> only
>>
>>>>>> some static methods for common things needed by most of my
>>>>>> components/endpoints.
>>>>>>
>>>>>> After redeploying it, it constantly throws ClassNotFound exceptions
>>>>>>
>>>>>>
>>>> when
>>>>
>>>>
>>>>>> trying to access the static helper methods.
>>>>>>
>>>>>> Do I have some caching problems or are there some strange
>>>>>>
>> restrictions
>>
>>>> I
>>>>
>>>>
>>>>>> missed?
>>>>>>
>>>>>> Any ideas are welcome.
>>>>>>
>>>>>> Regards,
>>>>>> Lars
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>
>>>
>>>
>
>
>
>
Re: Question about the shared-library concept in smx
Posted by Guillaume Nodet <gn...@gmail.com>.
I guess remote debugging is the only solution in such a case.
On Wed, Apr 2, 2008 at 4:04 PM, Lars Heinemann <la...@compart.net>
wrote:
> Guillaume,
>
> it is a jbi-shared-library. The cp-shared-1.0-SNAPSHOT.zip is deployed
> into the hotdeploy folder of smx.
>
> I put the following dependency in my SU's pom.xml.
>
> <dependency>
> <groupId>net.compart.jbi</groupId>
> <artifactId>cp-shared</artifactId>
> <version>${project.version}</version>
> </dependency>
>
> This works fine most of the time...but not now it seems.
> I did some testing now. From a SU of my port listener I have access to
> the methods.
> From the file poller SU it doesn't work. For me it's a bit strange
> now...I would understand if it doesn't work at all but on some SU's it
> works like this.
>
> Lars
>
>
>
>
> Guillaume Nodet schrieb:
> > Do you reference the SL from a SU using the <classpath/> tag ? Or from a
> > component using a reference in the JBI descriptor ?
> > These are the only two ways to access shared libraries, and the first
> one is
> > ServiceMix specific (just ftr).
> >
> > On Wed, Apr 2, 2008 at 3:31 PM, Lars Heinemann <
> lars.heinemann@compart.net>
> > wrote:
> >
> >
> >> I tried almost everything. Even the deletion of the data folder and the
> >> local m2 repo didn't solved the problem.
> >>
> >> Lars
> >>
> >>
> >>
> >> Guillaume Nodet schrieb:
> >>
> >>> Does this still happen if you restart ServiceMix ? It may be a bug in
> >>>
> >> the
> >>
> >>> shared library update processing ....
> >>>
> >>> On Wed, Apr 2, 2008 at 3:26 PM, Lars Heinemann <
> >>>
> >> lars.heinemann@compart.net>
> >>
> >>> wrote:
> >>>
> >>>
> >>>
> >>>> Hi,
> >>>>
> >>>> I use my own shared library containing a class holding constants for
> >>>> shared use.
> >>>> This lib is deployed as .zip into the hotdeploy folder and everything
> >>>> works fine.
> >>>>
> >>>> Now I decided to put another helper class into this lib providing
> only
> >>>> some static methods for common things needed by most of my
> >>>> components/endpoints.
> >>>>
> >>>> After redeploying it, it constantly throws ClassNotFound exceptions
> >>>>
> >> when
> >>
> >>>> trying to access the static helper methods.
> >>>>
> >>>> Do I have some caching problems or are there some strange
> restrictions
> >>>>
> >> I
> >>
> >>>> missed?
> >>>>
> >>>> Any ideas are welcome.
> >>>>
> >>>> Regards,
> >>>> Lars
> >>>>
> >>>>
> >>>>
> >>>>
> >>>
> >>>
> >
> >
> >
> >
>
--
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
Re: Question about the shared-library concept in smx
Posted by Lars Heinemann <la...@compart.net>.
Guillaume,
it is a jbi-shared-library. The cp-shared-1.0-SNAPSHOT.zip is deployed
into the hotdeploy folder of smx.
I put the following dependency in my SU's pom.xml.
<dependency>
<groupId>net.compart.jbi</groupId>
<artifactId>cp-shared</artifactId>
<version>${project.version}</version>
</dependency>
This works fine most of the time...but not now it seems.
I did some testing now. From a SU of my port listener I have access to
the methods.
>From the file poller SU it doesn't work. For me it's a bit strange
now...I would understand if it doesn't work at all but on some SU's it
works like this.
Lars
Guillaume Nodet schrieb:
> Do you reference the SL from a SU using the <classpath/> tag ? Or from a
> component using a reference in the JBI descriptor ?
> These are the only two ways to access shared libraries, and the first one is
> ServiceMix specific (just ftr).
>
> On Wed, Apr 2, 2008 at 3:31 PM, Lars Heinemann <la...@compart.net>
> wrote:
>
>
>> I tried almost everything. Even the deletion of the data folder and the
>> local m2 repo didn't solved the problem.
>>
>> Lars
>>
>>
>>
>> Guillaume Nodet schrieb:
>>
>>> Does this still happen if you restart ServiceMix ? It may be a bug in
>>>
>> the
>>
>>> shared library update processing ....
>>>
>>> On Wed, Apr 2, 2008 at 3:26 PM, Lars Heinemann <
>>>
>> lars.heinemann@compart.net>
>>
>>> wrote:
>>>
>>>
>>>
>>>> Hi,
>>>>
>>>> I use my own shared library containing a class holding constants for
>>>> shared use.
>>>> This lib is deployed as .zip into the hotdeploy folder and everything
>>>> works fine.
>>>>
>>>> Now I decided to put another helper class into this lib providing only
>>>> some static methods for common things needed by most of my
>>>> components/endpoints.
>>>>
>>>> After redeploying it, it constantly throws ClassNotFound exceptions
>>>>
>> when
>>
>>>> trying to access the static helper methods.
>>>>
>>>> Do I have some caching problems or are there some strange restrictions
>>>>
>> I
>>
>>>> missed?
>>>>
>>>> Any ideas are welcome.
>>>>
>>>> Regards,
>>>> Lars
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>
>
>
>
Re: Question about the shared-library concept in smx
Posted by Guillaume Nodet <gn...@gmail.com>.
Do you reference the SL from a SU using the <classpath/> tag ? Or from a
component using a reference in the JBI descriptor ?
These are the only two ways to access shared libraries, and the first one is
ServiceMix specific (just ftr).
On Wed, Apr 2, 2008 at 3:31 PM, Lars Heinemann <la...@compart.net>
wrote:
> I tried almost everything. Even the deletion of the data folder and the
> local m2 repo didn't solved the problem.
>
> Lars
>
>
>
> Guillaume Nodet schrieb:
> > Does this still happen if you restart ServiceMix ? It may be a bug in
> the
> > shared library update processing ....
> >
> > On Wed, Apr 2, 2008 at 3:26 PM, Lars Heinemann <
> lars.heinemann@compart.net>
> > wrote:
> >
> >
> >> Hi,
> >>
> >> I use my own shared library containing a class holding constants for
> >> shared use.
> >> This lib is deployed as .zip into the hotdeploy folder and everything
> >> works fine.
> >>
> >> Now I decided to put another helper class into this lib providing only
> >> some static methods for common things needed by most of my
> >> components/endpoints.
> >>
> >> After redeploying it, it constantly throws ClassNotFound exceptions
> when
> >> trying to access the static helper methods.
> >>
> >> Do I have some caching problems or are there some strange restrictions
> I
> >> missed?
> >>
> >> Any ideas are welcome.
> >>
> >> Regards,
> >> Lars
> >>
> >>
> >>
> >
> >
> >
>
--
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
Re: Question about the shared-library concept in smx
Posted by Lars Heinemann <la...@compart.net>.
I tried almost everything. Even the deletion of the data folder and the
local m2 repo didn't solved the problem.
Lars
Guillaume Nodet schrieb:
> Does this still happen if you restart ServiceMix ? It may be a bug in the
> shared library update processing ....
>
> On Wed, Apr 2, 2008 at 3:26 PM, Lars Heinemann <la...@compart.net>
> wrote:
>
>
>> Hi,
>>
>> I use my own shared library containing a class holding constants for
>> shared use.
>> This lib is deployed as .zip into the hotdeploy folder and everything
>> works fine.
>>
>> Now I decided to put another helper class into this lib providing only
>> some static methods for common things needed by most of my
>> components/endpoints.
>>
>> After redeploying it, it constantly throws ClassNotFound exceptions when
>> trying to access the static helper methods.
>>
>> Do I have some caching problems or are there some strange restrictions I
>> missed?
>>
>> Any ideas are welcome.
>>
>> Regards,
>> Lars
>>
>>
>>
>
>
>
Re: Question about the shared-library concept in smx
Posted by Guillaume Nodet <gn...@gmail.com>.
Does this still happen if you restart ServiceMix ? It may be a bug in the
shared library update processing ....
On Wed, Apr 2, 2008 at 3:26 PM, Lars Heinemann <la...@compart.net>
wrote:
> Hi,
>
> I use my own shared library containing a class holding constants for
> shared use.
> This lib is deployed as .zip into the hotdeploy folder and everything
> works fine.
>
> Now I decided to put another helper class into this lib providing only
> some static methods for common things needed by most of my
> components/endpoints.
>
> After redeploying it, it constantly throws ClassNotFound exceptions when
> trying to access the static helper methods.
>
> Do I have some caching problems or are there some strange restrictions I
> missed?
>
> Any ideas are welcome.
>
> Regards,
> Lars
>
>
--
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/