Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [gemini-dev] Gemini Web on Felix

Hi Glyn,

After fixing the org.osgi.util.tracker;version=1.4.2 in the
org.eclipse.geminweb.* bundles and the fragment host header in
com.springsource.org.apache.jasper.springsource - here's the stack
trace I get when I launch these bundles in felix:

java -jar launcher.jar bundles/RE:
org.apache.felix.framework.resolver.ResolveException: Constraint
violation for package 'javax.xml.namespace' when resolving module 10.0
between existing import 0.javax.xml.namespace BLAMED ON [[10.0]
package; (package=javax.xml.namespace)] and uses constraint
31.0.javax.xml.namespace BLAMED ON [[10.0] package;
(&(package=javax.xml.stream)(version>=1.0.1)(!(version>=2.0.0)))]
Error starting framework: org.osgi.framework.BundleException:
Activator start error in bundle org.eclipse.gemini.web.tomcat [31].
org.osgi.framework.BundleException: Activator start error in bundle
org.eclipse.gemini.web.tomcat [31].
        at org.apache.felix.framework.Felix.activateBundle(Felix.java:1909)
        at org.apache.felix.framework.Felix.startBundle(Felix.java:1779)
        at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:905)
        at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:892)
        at launcher.Main.main(Main.java:92)
Caused by: java.lang.NoClassDefFoundError:
org/eclipse/osgi/framework/internal/core/BundleHost
        at org.eclipse.gemini.web.tomcat.internal.support.EquinoxBundleFileResolver.canUse(EquinoxBundleFileResolver.java:49)
        at org.eclipse.gemini.web.tomcat.internal.support.BundleFileResolverFactory.createBundleFileResolver(BundleFileResolverFactory.java:30)
        at org.eclipse.gemini.web.tomcat.internal.Tomcat.<init>(Tomcat.java:64)
        at org.eclipse.gemini.web.tomcat.internal.TomcatServletContainerFactory.createContainer(TomcatServletContainerFactory.java:27)
        at org.eclipse.gemini.web.tomcat.internal.Activator.createContainer(Activator.java:92)
        at org.eclipse.gemini.web.tomcat.internal.Activator.start(Activator.java:50)
        at org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:633)
        at org.apache.felix.framework.Felix.activateBundle(Felix.java:1862)
        ... 4 more
Caused by: java.lang.ClassNotFoundException:
org.eclipse.osgi.framework.internal.core.BundleHost
        at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:772)
        at org.apache.felix.framework.ModuleImpl.access$200(ModuleImpl.java:73)
        at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1685)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)

The fact that the exception is leaking out of the
org.eclipse.gemini.web.tomcat.internal.Activator.start method seems to
suggest the ClassNotFoundException is pretty terminal?

Hope that's of some help in any case.

Regards,

Dave

On Fri, Jul 9, 2010 at 4:48 PM, Glyn Normington <gnormington@xxxxxxxxxx> wrote:
> The Gemini Web code has a BundleFileResolver interface and two implementations. There is an Equinox specific EquinoxBundleFileResolver which refers to BundleHost and other Equinox internals. Then there is the NoOpBundleFileResolver, nested in BundleFileResolverFactory, which is framework neutral. There may be some degradation of function with the noop version, but it should protect against requiring Equinox specifics on Felix. So the big question is what's the stack trace of the ClassNotFoundException for BundleHost? You see we attempt to load it to determine which of the above implementations to use, so the failed class load could be totally benign.
>
> Glyn
> On 9 Jul 2010, at 15:20, David Savage wrote:
>
>> On Fri, Jul 9, 2010 at 3:18 PM, David Savage <david.savage@xxxxxxxxxxx> wrote:
>>> I get a sinking feeling :)
>>>
>>> java.lang.ClassNotFoundException:
>>> org.eclipse.osgi.framework.internal.core.BundleHost
>>>
>>> I'm guessing there's on simple workaround to that?
>>
>> on -> no
>>
>>>
>>> Regards,
>>>
>>> Dave
>>>
>>> On Fri, Jul 9, 2010 at 2:55 PM, David Savage <david.savage@xxxxxxxxxxx> wrote:
>>>> Hi there,
>>>>
>>>> Ok so we've got a work around for the fragment version issue but then
>>>> ran into the next problem :(
>>>>
>>>> java -Xdebug -Xrunjdwp:transport=dt_socket,address=8001,server=y,suspend=n
>>>> -jar launcher.jar bundles/Listening for transport dt_socket at
>>>> address: 8001
>>>> Error starting framework: org.osgi.framework.BundleException:
>>>> Unresolved constraint in bundle org.eclipse.gemini.web.core [29]:
>>>> Unable to resolve 29.0: missing requirement [29.0] package;
>>>> (&(package=org.osgi.util.tracker)(version>=1.4.2)) - [29.0] package;
>>>> (&(package=org.osgi.util.tracker)(version>=1.4.2))
>>>> org.osgi.framework.BundleException: Unresolved constraint in bundle
>>>> org.eclipse.gemini.web.core [29]: Unable to resolve 29.0: missing
>>>> requirement [29.0] package;
>>>> (&(package=org.osgi.util.tracker)(version>=1.4.2)) - [29.0] package;
>>>> (&(package=org.osgi.util.tracker)(version>=1.4.2))
>>>>        at org.apache.felix.framework.Felix.resolveBundle(Felix.java:3421)
>>>>        at org.apache.felix.framework.Felix.startBundle(Felix.java:1754)
>>>>        at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:905)
>>>>        at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:892)
>>>>        at launcher.Main.main(Main.java:92)
>>>>
>>>> The trouble is the 1.4.2 version looks to be a mistake in equinox [1]
>>>> I don't think this API actually exists?
>>>>
>>>> This import seems to be found in the following two bundles at least
>>>> (haven't checked further)
>>>>
>>>> org.eclipse.gemini.web.core-1.1.0.M01.jar
>>>> org.eclipse.gemini.web.extender-1.1.0.M01.jar
>>>>
>>>> Again I'll try rebuilding with the correct versions and let you know
>>>> how I get on...
>>>>
>>>> Regards,
>>>>
>>>> Dave
>>>>
>>>> [1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=279622
>>>>
>>>> On Fri, Jul 9, 2010 at 10:35 AM, Glyn Normington <gnormington@xxxxxxxxxx> wrote:
>>>>> Thanks Dave.
>>>>>
>>>>> Glyn
>>>>> On 9 Jul 2010, at 09:59, David Savage wrote:
>>>>>
>>>>>> Hi Glyn,
>>>>>>
>>>>>> Great, thx very much. Will try the hack as you suggest and see how I
>>>>>> get on, guess there's always the possibility I just hit the next
>>>>>> problem but fingers crossed...
>>>>>>
>>>>>> Have filed a bug here:
>>>>>>
>>>>>> https://issuetracker.springsource.com/browse/EBR-662
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Dave
>>>>>>
>>>>>> On Fri, Jul 9, 2010 at 9:48 AM, Glyn Normington <gnormington@xxxxxxxxxx> wrote:
>>>>>>> Hi Dave
>>>>>>>
>>>>>>> I responded to FELIX-2466 suggesting you raise a bug against the EBR to get this fixed. If you do raise a bug, please let me know the number.
>>>>>>>
>>>>>>> Meanwhile by far the easiest way for you to make progress is to unjar, hack the manifest, and rejar.
>>>>>>>
>>>>>>> I've raised a bug against Equinox as its behaviour got us into this situation in the first place and we don't want other users to run into this:
>>>>>>>
>>>>>>> https://bugs.eclipse.org/bugs/show_bug.cgi?id=319349
>>>>>>>
>>>>>>> Glyn
>>>>>>> On 8 Jul 2010, at 23:26, David Savage wrote:
>>>>>>>
>>>>>>>> Hi there,
>>>>>>>>
>>>>>>>> I have an update to the issue of trying to get gemini running on
>>>>>>>> Felix. Richard's taken a look at the issue with regard to the resolver
>>>>>>>> and the problem seems to be due to using non standard headers in
>>>>>>>> Gemini, namely Fragment-Host "version" attribute which should actually
>>>>>>>> be "bundle-version" as per the spec.
>>>>>>>>
>>>>>>>> There's discussion of the issue here:
>>>>>>>>
>>>>>>>> https://issues.apache.org/jira/browse/FELIX-2466
>>>>>>>>
>>>>>>>> I'd be happy to test out a fix if someone can point me in the right
>>>>>>>> direction for downloading the source from (svn?).
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>>
>>>>>>>> Dave
>>>>>>>> _______________________________________________
>>>>>>>> gemini-dev mailing list
>>>>>>>> gemini-dev@xxxxxxxxxxx
>>>>>>>> https://dev.eclipse.org/mailman/listinfo/gemini-dev
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> gemini-dev mailing list
>>>>>>> gemini-dev@xxxxxxxxxxx
>>>>>>> https://dev.eclipse.org/mailman/listinfo/gemini-dev
>>>>>>>
>>>>>> _______________________________________________
>>>>>> gemini-dev mailing list
>>>>>> gemini-dev@xxxxxxxxxxx
>>>>>> https://dev.eclipse.org/mailman/listinfo/gemini-dev
>>>>>
>>>>> _______________________________________________
>>>>> gemini-dev mailing list
>>>>> gemini-dev@xxxxxxxxxxx
>>>>> https://dev.eclipse.org/mailman/listinfo/gemini-dev
>>>>>
>>>>
>>>
>> _______________________________________________
>> gemini-dev mailing list
>> gemini-dev@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/gemini-dev
>
> _______________________________________________
> gemini-dev mailing list
> gemini-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/gemini-dev
>


Back to the top