cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Krzysztof Sobkowiak <krzys.sobkow...@gmail.com>
Subject Re: cxf jetty blueprint issue
Date Fri, 13 Feb 2015 15:25:30 GMT
Hi

Yes, Karaf 3.x and master start the compat bundle by default. With the
workaround for the 2.4.x line of Karaf is ok. So we can close this theme
in my opinion.
Thanks for clarification

Regards
Krzysztof

 


On 13.02.2015 11:09, Aki Yoshida wrote:
> Hi Dan, Krzysztof,
> I didn't look at the cxf code itself and as I didn't see any wiring
> problem when I tested cxf with karaf-3.0.3, I just looked at its
> manifest which is optionally importing
> org.apache.aries.blueprint.reflect and the availability of this
> package on karaf. I didn't know that this package was intentionally
> not-exposed.
> So, I agree with Dan. Thanks for the clarification.
> regards, aki
>
> 2015-02-12 18:37 GMT+01:00 Daniel Kulp <dkulp@apache.org>:
>> Three thoughts:
>>
>> 1) This has been there for at least a few months and this was the first I’ve seen
it (and there still isn’t a JIRA filed…).  It’s definitely not a regression from the
last release.
>>
>> 2) We have a viable workaround via the compat bundle
>>
>> 3) Even with the workaround, I strongly discourage people from configuring the jetty
servers in their blueprint files.   Since the servers are “shared”, you get into a “first
bundle to create the port has the configuration that wins” situation which can be unpredictable
and error prone.  If bundles with different services start up in different order, you can
get strange behavior.  Configuring the port via the files in /etc would be better (and also
then puts the job of configuring the ports into the hands of the administrator, not the app
developer, and puts it with the configs for the pax-web and others).
>>
>> Anyway, it IS a bug we should fix, but not something I’d hold the release up for
at this point.
>>
>> Dan
>>
>>
>>
>>> On Feb 12, 2015, at 11:58 AM, Krzysztof Sobkowiak <krzys.sobkowiak@gmail.com>
wrote:
>>>
>>> Hi Aki
>>>
>>> Indeed, it works. But I had to install the compatibility bundle
>>> separately. Which Karaf/ServiceMix version did you use to test this?
>>> Which Karaf feature have you installed? Have you installed the bundle
>>> separately too? The bundle is not installed per default in Karaf now.
>>>
>>> Thanks for the hint :-)
>>>
>>> Regards
>>> Krzysztof
>>>
>>>
>>> On 12.02.2015 15:31, Aki Yoshida wrote:
>>>> But this org.apache.aries.blueprint.reflect is available from
>>>> org.apache.aries.blueprint.core.compatibility, so it isn't a problem
>>>> of CXF, no?
>>>>
>>>> karaf@root()> exports | grep org.apache.aries.blueprint.reflect
>>>>
>>>> org.apache.aries.blueprint.reflect
>>>>                                | 1.0.0            | 14  |
>>>> org.apache.aries.blueprint.core.compatibility
>>>>
>>>> karaf@root()> headers 14
>>>>
>>>> Apache Aries Blueprint Core Compatiblity Fragment Bundle (14)
>>>> -------------------------------------------------------------
>>>> ...
>>>>
>>>> Export-Package =
>>>> org.apache.aries.blueprint.container;
>>>> uses:="org.apache.aries.blueprint.di,
>>>> org.apache.aries.blueprint.reflect";
>>>> deprecated=true;
>>>> version=1.0.0,
>>>> org.apache.aries.blueprint.di;uses:=org.apache.aries.blueprint.container;deprecated=true;version=1.0.0,
>>>> org.apache.aries.blueprint.reflect;deprecated=true;version=1.0.0
>>>>
>>>>
>>>> karaf@root()>
>>>>
>>>>
>>>> 2015-02-12 7:01 GMT+01:00 Krzysztof Sobkowiak <krzys.sobkowiak@gmail.com>:
>>>>> Hi
>>>>>
>>>>> One user has reported a problem with usage of httpj:engine-factoryin
>>>>> ServiceMix
>>>>> (http://servicemix.396122.n5.nabble.com/servicemix-5-4-0-cxf-jetty-blueprint-issue-tp5722268.html).
>>>>> Using this configuration element in blueprint causes following error
>>>>>
>>>>>
>>>>> java.lang.NoClassDefFoundError:
>>>>> org/apache/aries/blueprint/reflect/MapMetadataImpl
>>>>>    at
>>>>> org.apache.cxf.transport.http_jetty.blueprint.JettyServerEngineFactoryParser.parseEngineConnector(JettyServerEngineFactoryParser.java:110)
>>>>>    at
>>>>> org.apache.cxf.transport.http_jetty.blueprint.JettyServerEngineFactoryParser.parse(JettyServerEngineFactoryParser.java:83)
>>>>>    at
>>>>> org.apache.cxf.transport.http_jetty.blueprint.HTTPJettyTransportNamespaceHandler.parse(HTTPJettyTransportNamespaceHandler.java:68)
>>>>>    at
>>>>> org.apache.aries.blueprint.parser.Parser.parseCustomElement(Parser.java:1308)[18:org.apache.aries.blueprint.core:1.4.2]
>>>>>    at
>>>>> org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:366)[18:org.apache.aries.blueprint.core:1.4.2]
>>>>>    at
>>>>> org.apache.aries.blueprint.parser.Parser.populate(Parser.java:306)[18:org.apache.aries.blueprint.core:1.4.2]
>>>>>    at
>>>>> org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:323)[18:org.apache.aries.blueprint.core:1.4.2]
>>>>>    at
>>>>> org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:269)[18:org.apache.aries.blueprint.core:1.4.2]
>>>>>    at
>>>>> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:294)[18:org.apache.aries.blueprint.core:1.4.2]
>>>>>    at
>>>>> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:263)[18:org.apache.aries.blueprint.core:1.4.2]
>>>>>    at
>>>>> org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:253)[18:org.apache.aries.blueprint.core:1.4.2]
>>>>>    at
>>>>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[13:org.apache.aries.util:1.1.0]
>>>>>    at
>>>>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[13:org.apache.aries.util:1.1.0]
>>>>>    at
>>>>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[13:org.apache.aries.util:1.1.0]
>>>>>    at
>>>>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[13:org.apache.aries.util:1.1.0]
>>>>>    at
>>>>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[13:org.apache.aries.util:1.1.0]
>>>>>    at
>>>>> org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1127)[org.apache.felix.framework-4.4.1.jar:]
>>>>>    at
>>>>> org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:696)[org.apache.felix.framework-4.4.1.jar:]
>>>>>    at
>>>>> org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:484)[org.apache.felix.framework-4.4.1.jar:]
>>>>>    at
>>>>> org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4429)[org.apache.felix.framework-4.4.1.jar:]
>>>>>    at
>>>>> org.apache.felix.framework.Felix.startBundle(Felix.java:2100)[org.apache.felix.framework-4.4.1.jar:]
>>>>>    at
>>>>> org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1299)[org.apache.felix.framework-4.4.1.jar:]
>>>>>    at
>>>>> org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:304)[org.apache.felix.framework-4.4.1.jar:]
>>>>>    at java.lang.Thread.run(Thread.java:745)[:1.7.0_76]
>>>>> Caused by: java.lang.ClassNotFoundException:
>>>>> org.apache.aries.blueprint.reflect.MapMetadataImpl not found by
>>>>> org.apache.cxf.cxf-rt-transports-http-jetty [165]
>>>>>    at
>>>>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1556)[org.apache.felix.framework-4.4.1.jar:]
>>>>>    at
>>>>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:77)[org.apache.felix.framework-4.4.1.jar:]
>>>>>    at
>>>>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1993)[org.apache.felix.framework-4.4.1.jar:]
>>>>>    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_76]
>>>>>
>>>>>
>>>>> The problem was introduced by
>>>>> https://issues.apache.org/jira/browse/CXF-5863 (in 2.7.x, 3.0.x and
>>>>> master --
>>>>> https://git-wip-us.apache.org/repos/asf?p=cxf.git;a=commit;h=3812fe2327b06d06ba60fe80fc466e4b39c915d6)
>>>>> by usage of classes from org.apache.aries.blueprint.reflectin
>>>>> JettyServerEngineFactoryParser. The package is imported by
>>>>> cxf-rt-transports-http-jettybut the classes are not exported (and were
>>>>> not exported when this bug was fixed) from blueprint-core.
>>>>>
>>>>> I think, this is a blocking issue for people using
>>>>> httpj:engine-factoryblueprint element in OSGi environment, but you can
>>>>> decide whether this should stop the release. It would be nice if you
had
>>>>> a workaround for this problem.
>>>>>
>>>>> Regards
>>>>> Krzysztof
>>>>>
>>>>>
>>>>> On 12.02.2015 02:53, Daniel Kulp wrote:
>>>>>> This is a vote to release 3.0.4 and 2.7.15.  It’s been about 2
months since the last release and we’ve fixed more than 70 issues.
>>>>>>
>>>>>> Staging areas:
>>>>>> 2.7.15:
>>>>>> https://repository.apache.org/content/repositories/orgapachecxf-1036/
>>>>>> 3.0.4:
>>>>>> https://repository.apache.org/content/repositories/orgapachecxf-1037/
>>>>>>
>>>>>>
>>>>>> Tags:
>>>>>> 2.7.15:
>>>>>> https://git-wip-us.apache.org/repos/asf?p=cxf.git;a=tag;h=ad0e985de4d14603398765e96723a4d2efe9da64
>>>>>> 3.0.4:
>>>>>> https://git-wip-us.apache.org/repos/asf?p=cxf.git;a=tag;h=3bbc187f31e42cd4cb2e82b6604a87029823331c
>>>>>>
>>>>>>
>>>>>> The vote will be open for at least 72 hours.
>>>>>>
>>>>> --
>>>>> Krzysztof Sobkowiak
>>>>>
>>>>> JEE & OSS Architect
>>>>> Senior Solution Architect @ Capgemini SSC
>>>>> <http://www.pl.capgemini-sdm.com/en>
>>>>> Apache ServiceMix <http://servicemix.apache.org/> Committer &
PMC
>>> --
>>> Krzysztof Sobkowiak
>>>
>>> JEE & OSS Architect
>>> Senior Solution Architect @ Capgemini SSC
>>> <http://www.pl.capgemini-sdm.com/en>
>>> Apache ServiceMix <http://servicemix.apache.org/> Committer & PMC
>> --
>> Daniel Kulp
>> dkulp@apache.org - http://dankulp.com/blog
>> Talend Community Coder - http://coders.talend.com
>>

-- 
Krzysztof Sobkowiak

JEE & OSS Architect
Senior Solution Architect @ Capgemini SSC
<http://www.pl.capgemini-sdm.com/en>
Apache ServiceMix <http://servicemix.apache.org/> Committer & PMC

Mime
View raw message