ActiveMQ OpenWire C API problem - c

I run ActiveMQ 5.5.0 broker on Ubuntu, downloaded and compiled APR 1.4.5 and C API related libactivmq and libopenwire.
The test c supplied in Examples at:
http://svn.apache.org/repos/asf/activemq/sandbox/openwire-c/src/examples/
does not work, the issue is with the WireFormat magic code, see debug lines from the log:
2011-07-07 15:35:30,324 | DEBUG | Sending: WireFormatInfo { version=7, properties={CacheSize=1024, CacheEnabled=true, SizePrefixDisabled=false, MaxInactivityDurationInitalDelay=10000, TcpNoDelayEnabled=true, MaxInactivityDuration=30000, TightEncodingEnabled=true, StackTraceEnabled=true}, magic=[A,c,t,i,v,e,M,Q]} | org.apache.activemq.transport.WireFormatNegotiator | ActiveMQ Task-2
2011-07-07 15:35:30,327 | DEBUG | Using min of local: WireFormatInfo { version=7, properties={CacheSize=1024, CacheEnabled=true, SizePrefixDisabled=false, MaxInactivityDurationInitalDelay=10000, TcpNoDelayEnabled=true, MaxInactivityDuration=30000, TightEncodingEnabled=true, StackTraceEnabled=true}, magic=[A,c,t,i,v,e,M,Q]} and remote: WireFormatInfo { version=1297154048, properties={}, magic=[^A,^#,A,c,t,i,v,e]} | org.apache.activemq.transport.InactivityMonitor | ActiveMQ Transport: tcp:///127.0.0.1:51606
2011-07-07 15:35:30,327 | DEBUG | Received WireFormat: WireFormatInfo { version=1297154048, properties={}, magic=[^A,^#,A,c,t,i,v,e]} | org.apache.activemq.transport.WireFormatNegotiator | ActiveMQ Transport: tcp:///127.0.0.1:51606
2011-07-07 15:35:30,333 | DEBUG | tcp:///127.0.0.1:51606 before negotiation: OpenWireFormat{version=7, cacheEnabled=false, stackTraceEnabled=false, tightEncodingEnabled=false, sizePrefixDisabled=false} | org.apache.activemq.transport.WireFormatNegotiator | ActiveMQ Transport: tcp:///127.0.0.1:51606
2011-07-07 15:35:30,337 | DEBUG | Transport failed: java.io.IOException: Remote wire format magic is invalid | org.apache.activemq.broker.TransportConnection.Transport | ActiveMQ Transport: tcp:///127.0.0.1:51606
I debugged the client side and captured values sent to the broker, 15 bytes, I will list them below:
1: '\001'
2: '\001'
3: '\000'
4: 'A'
5: 'c'
6: 't'
7: 'i'
8: 'v'
9: 'e'
10:'M'
11:'Q'
12:'\000'
13:'\000'
14:'\000'
15:'\002'
here last four bytes is version, which is set to 2
Somehow this message is shifted/misinterpreted by broker, so the magic token and version are wrong.
One more piece of information: I compiled libopenwire using both supplied versions ow_commands_v1.[ch] and ow_commands_v2.[ch], so I tried to link the test with both, the result is the same with either version. Does anyone know the reason for two versions? which one should I use?
Note: this message has been posted several days ago on apache forum, but no response. I hope on this site message will get more traffic.

The OpenWire C API is not maintained by anyone so its not surprising that its broken. There is a C wrapper for ActiveMQ-CPP in the ActiveMQ svn repo you could try using instead, if you are really married to using C.

Related

Cassandra is not starting due to java.nio.file.FileAlreadyExistsException when loading jar trigger

I'm trying to use a Trigger in Cassandra 4.1, but initialization fails when loading the jar file
Trace:
cassandra_1 | INFO [OptionalTasks:1] 2022-11-17 22:35:17,483 CustomClassLoader.java:83 - Loading new jar /etc/cassandra/triggers/cassandra-logger-0.2.jar
cassandra_1 | ERROR [OptionalTasks:1] 2022-11-17 22:35:17,488 JVMStabilityInspector.java:68 - Exception in thread Thread[OptionalTasks:1,5,OptionalTasks]
cassandra_1 | org.apache.cassandra.io.FSWriteError: java.nio.file.FileAlreadyExistsException: /tmp/lib/cassandra-0.jar
(...)
cassandra_1 | Caused by: java.nio.file.FileAlreadyExistsException: /tmp/lib/cassandra-0.jar
cassandra_1 | at java.base/sun.nio.fs.UnixCopyFile.copy(Unknown Source)
cassandra_1 | at java.base/sun.nio.fs.UnixFileSystemProvider.copy(Unknown Source)
cassandra_1 | at java.base/java.nio.file.Files.copy(Unknown Source)
cassandra_1 | at org.apache.cassandra.triggers.CustomClassLoader.addClassPath(CustomClassLoader.java:86)
cassandra_1 | ... 22 common frames omitted
cassandra_1 | ERROR [OptionalTasks:1] 2022-11-17 22:35:17,493 DefaultFSErrorHandler.java:64 - Stopping transports as disk_failure_policy is stop
cassandra_1 | ERROR [OptionalTasks:1] 2022-11-17 22:35:17,494 StorageService.java:501 - Stopping native transport
cassandra_1 | INFO [OptionalTasks:1] 2022-11-17 22:35:17,505 Server.java:176 - Stop listening for CQL clients
cassandra_1 | ERROR [OptionalTasks:1] 2022-11-17 22:35:17,506 StorageService.java:506 - Stopping gossiper
cassandra_1 | WARN [OptionalTasks:1] 2022-11-17 22:35:17,507 StorageService.java:405 - Stopping gossip by operator request
cassandra_1 | INFO [OptionalTasks:1] 2022-11-17 22:35:17,507 Gossiper.java:2087 - Announcing shutdown
cassandra_1 | INFO [OptionalTasks:1] 2022-11-17 22:35:17,509 StorageService.java:2950 - Node /192.168.96.2:7000 state jump to shutdown
cassandra_1 | INFO [OptionalTasks:1] 2022-11-17 22:35:17,513 StorageService.java:2950 - Node /192.168.96.2:7000 state jump to shutdown
Jar file:
https://github.com/felipead/cassandra-logger/releases/download/v0.2/cassandra-logger-0.2.jar
docker-compose.yaml, and cassandra.yaml:
https://github.com/hofstede-matheus/MATB09-postgres-vs-cassandra
This error also happens with hms-cassandra-triggers-1.0.1.jar, so I think there is no problem with
cassandra-logger-0.2.jar
Tried with other .jar files and no success.
Thanks in advance
Using cassandra:3.0 image in the docker-compose.yaml solved this startup issue.
I think the triggers are not compatible with version 4.1 of Cassandra.
4.1.0 release of Apache Cassandra has changed the way to load the triggers jars using java.nio (java.nio.file.Files), in earlier releases ( 4.0 or 3.X ) uses Guava (com.google.common.io.Files).
Guava copy method, by default, overwrite a file if you have permissions but java.nio not.
To solve this problem it's as easy as modify the class org.apache.cassandra.triggers.CustomClassLoader on line 86 from:
copy(inputJar.toPath(), out.toPath());
to:
copy(inputJar.toPath(), out.toPath(),StandardCopyOption.REPLACE_EXISTING);

camel-elasticsearch5 component is not working

My project consume messaged from activemq and store in to elasticsearch 2.4 database with technology karaf 4.0.8, Apache camel (2.18.1), camel-elasticsearch component.
I am trying to upgrade to elasticsearch 5 database and that required changes in client side. I found that new camel component camel-elasticsearch5 is there for that with apache-camel 2.19.0. I upgrade the camel. after that it looks it is not working as expected.
1. the camel commands like camel:context-list is not working.
2. The route is not working like messaged are not consumed from activemq.
Additionally there is a warning in the log.
2017-07-18 06:57:27,144 | INFO | nt Dispatcher: 1 | ElasticsearchProducer | 21 - org.apache.camel.camel-elasticsearch5 - 2.19.0 | Connecting to the ElasticSearch cluster: elasticsearch
2017-07-18 06:57:27,145 | WARN | -SNAPSHOT/deploy | BlueprintEventDispatcher | 83 - org.apache.aries.blueprint.core - 1.7.1 | Listener caused an exception, will be ignored
java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: Could not initialize class org.elasticsearch.transport.client.PreBuiltTransportClient
at java.util.concurrent.FutureTask.report(FutureTask.java:122)[:1.8.0_121]
at java.util.concurrent.FutureTask.get(FutureTask.java:192)[:1.8.0_121]
at java.util.concurrent.AbstractExecutorService.doInvokeAny(AbstractExecutorService.java:193)[:1.8.0_121]
at java.util.concurrent.AbstractExecutorService.invokeAny(AbstractExecutorService.java:225)[:1.8.0_121]
at org.apache.aries.blueprint.utils.threading.ScheduledExecutorServiceWrapper$4.call(ScheduledExecutorServiceWrapper.java:184)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.blueprint.utils.threading.ScheduledExecutorServiceWrapper$15.call(ScheduledExecutorServiceWrapper.java:452)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.blueprint.utils.threading.RWLock.runReadOperation(RWLock.java:35)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.blueprint.utils.threading.ScheduledExecutorServiceWrapper.runUnlessShutdown(ScheduledExecutorServiceWrapper.java:447)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.blueprint.utils.threading.ScheduledExecutorServiceWrapper.invokeAny(ScheduledExecutorServiceWrapper.java:178)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.blueprint.container.BlueprintEventDispatcher.callListener(BlueprintEventDispatcher.java:199)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.blueprint.container.BlueprintEventDispatcher.callListeners(BlueprintEventDispatcher.java:189)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.blueprint.container.BlueprintEventDispatcher.blueprintEvent(BlueprintEventDispatcher.java:140)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:424)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:276)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:300)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:269)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:265)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:255)[83:org.apache.aries.blueprint.core:1.7.1]
at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[19:org.apache.aries.util:1.1.1]
at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[19:org.apache.aries.util:1.1.1]
at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[19:org.apache.aries.util:1.1.1]
at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[19:org.apache.aries.util:1.1.1]
at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[19:org.apache.aries.util:1.1.1]
at org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1179)[org.apache.felix.framework-5.6.1.jar:]
at org.apache.felix.framework.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:730)[org.apache.felix.framework-5.6.1.jar:]
at org.apache.felix.framework.EventDispatcher.fireBundleEvent(EventDispatcher.java:485)[org.apache.felix.framework-5.6.1.jar:]
at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4541)[org.apache.felix.framework-5.6.1.jar:]
at org.apache.felix.framework.Felix.startBundle(Felix.java:2172)[org.apache.felix.framework-5.6.1.jar:]
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:998)[org.apache.felix.framework-5.6.1.jar:]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1253)[4:org.apache.felix.fileinstall:3.5.6]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1225)[4:org.apache.felix.fileinstall:3.5.6]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:512)[4:org.apache.felix.fileinstall:3.5.6]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:361)[4:org.apache.felix.fileinstall:3.5.6]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:312)[4:org.apache.felix.fileinstall:3.5.6]
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.elasticsearch.transport.client.PreBuiltTransportClient
at org.apache.camel.component.elasticsearch5.ElasticsearchProducer.doStart(ElasticsearchProducer.java:221)
at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:75)
at org.apache.camel.impl.DeferServiceStartupListener.onCamelContextStarted(DeferServiceStartupListener.java:49)
at org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:3629)
at org.apache.camel.impl.DefaultCamelContext.doStartOrResumeRoutes(DefaultCamelContext.java:3408)
at org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:3262)
at org.apache.camel.impl.DefaultCamelContext.access$000(DefaultCamelContext.java:201)
at org.apache.camel.impl.DefaultCamelContext$2.call(DefaultCamelContext.java:3046)
at org.apache.camel.impl.DefaultCamelContext$2.call(DefaultCamelContext.java:3042)
at org.apache.camel.impl.DefaultCamelContext.doWithDefinedClassLoader(DefaultCamelContext.java:3065)
at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:3042)
at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:2980)
at org.apache.camel.blueprint.BlueprintCamelContext.start(BlueprintCamelContext.java:244)
at org.apache.camel.blueprint.BlueprintCamelContext.maybeStart(BlueprintCamelContext.java:284)
at org.apache.camel.blueprint.BlueprintCamelContext.blueprintEvent(BlueprintCamelContext.java:177)
at org.apache.aries.blueprint.container.BlueprintEventDispatcher$4.call(BlueprintEventDispatcher.java:201)
at org.apache.aries.blueprint.container.BlueprintEventDispatcher$4.call(BlueprintEventDispatcher.java:199)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_121]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_121]
at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_121]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_121]
at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_121]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)[:1.8.0_121]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)[:1.8.0_121]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_121]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_121]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_121]
Any idea how to fix the issue?
Note : I have tried with feature available in 2.20 but it seems not working. here is the problem. I
Basically following two bundles have been used there.
Elasticsearch-Bundle mvnrepository.com/artifact/org.apache.servicemix.bundles/org.apache.servicemix.bundles.elasticsearch/5.4.3_1
Elasticsearch-Client Bundle mvnrepository.com/artifact/org.apache.servicemix.bundles/org.apache.servicemix.bundles.elasticsearch-client/5.4.3_1
In order to work with elasticsearch 5 you need TransportClient as mentioned in example which is available in Elasticsearch bundle
To get the TransportClient for first step you need to use PreBuiltTransportClient which is available in Elasticsearch-Client bundle.
Now the problem is that Elasticsearch-Client which is expected to return TransportClient does not have it and also not importing it and gives class not found exception "
Caused by: java.lang.ClassNotFoundException: org.elasticsearch.client.transport.TransportClient not found by org.apache.servicemix.bundles.elasticsearch-client [127]"
This should be fixed with bundle version 5.3.2_1 from Servicemix and in Apache Camel 2.20.0.
In Camel 2.19.x branch we have the following feature for Karaf
https://github.com/apache/camel/blob/camel-2.19.x/platforms/karaf/features/src/main/resources/features.xml#L508-L522
While in 2.20.x branch we have a bundle for Elasticsearch client too:
https://github.com/apache/camel/blob/master/platforms/karaf/features/src/main/resources/features.xml#L566-L580
You can try with Camel 2.20.0-SNAPSHOT version.
UPDATE:
There is a JIRA issue about this: https://issues.apache.org/jira/browse/SM-3454 and we're going to fix it

Can't resolve Dart App Engine dependency

I am trying to build a Dart application for Google App Engine but Dart can't resolve any appengine dependency except for the 0.0.1 version. Here is my pubspec.yaml:
name: MyApp
version: 0.0.1
dependencies:
angular2: 2.0.0-alpha.44
browser: ^0.10.0
appengine: '>=0.3.0 < 0.4.0'
transformers:
- angular2:
entry_points: web/main.dart
This is the error I get:
Package appengine has no versions that match >=0.3.0 <0.4.0 derived from:
- MyApp depends on version >=0.3.0 <0.4.0
I have tried every appengine version from https://pub.dartlang.org/packages/appengine/versions but the only one that works is ^0.0.1
Downloading appengine 0.0.1...
Got dependencies!
I would really like to use something newer than 0.0.1. Is something broken or am I missing something?
*Update:
I ran in verbose mode as per Günter Zöchbauer's suggestion and this is the output:
ERR : Package appengine has no versions that match >=0.0.2 <0.4.0 derived from:
| - MyApp depends on version >=0.0.2 <0.4.0
FINE: Exception type: NoVersionException
FINE: package:pub/src/entrypoint.dart 154 Entrypoint.acquireDependencies.<async>
| ===== asynchronous gap ===========================
| dart:async _Completer.completeError
| package:pub/src/entrypoint.dart 199 Entrypoint.acquireDependencies.<async>
| ===== asynchronous gap ===========================
| dart:async _Future.then
| package:pub/src/entrypoint.dart 152 Entrypoint.acquireDependencies.<async>
| ===== asynchronous gap ===========================
| dart:async Future.Future.microtask
| package:pub/src/entrypoint.dart Entrypoint.acquireDependencies
| package:pub/src/command/get.dart 30 GetCommand.run
| package:args/command_runner.dart 178 CommandRunner.runCommand.<fn>
| dart:async Future.Future.sync
| package:args/command_runner.dart 131 CommandRunner.runCommand
| package:pub/src/command_runner.dart 130 PubCommandRunner.runCommand.<async>.<fn>
| dart:async Future.Future.sync
| package:pub/src/utils.dart 103 captureErrors.<fn>
| package:stack_trace Chain.capture
| package:pub/src/utils.dart 117 captureErrors
| package:pub/src/command_runner.dart 130 PubCommandRunner.runCommand.<async>
I expanded the version to include anything between 0.0.2 and 0.4.0 and it fails. It is definitely throwing a no version found error even though I can manually download the versions from the web.
This is a known issue with pub. If it can't resolve a matching set of dependencies it sometimes prints misleading messages.
pub upgrade --verbose
should reveal more information that allows to investigate what dependencies pub is unable to find compatible versions of.
The conflict is the protobuf package.
appengine 0.3.2 depends on protobuf 0.5.0
angular2 2.0.0-alpha.44 depends on protobuf 0.4.2
but angular2 2.0.0-alpha.45 also depends on protobuf 0.5.0
If you change your angular dependency to
angular2: ^2.0.0-alpha.44
or
angular2: 2.0.0-alpha.45
or
angular2: ^2.0.0-alpha
pub can resolve all dependencies just fine.

Fabric8 CXF endpoints security with TLS... possible?

I would have a question about the wonderful tool that I just discovered named fabric8 (http://fabric8.io).
When I deploy a CXF SOAP service into the system, it is available at http://${HOSTNAME}:8181/cxf. Until now, all our stack was deployed into a tomcat container, secured using TLS encryption on the regular 8443 port (using or not client authentication). We, by the way, use WSDL policies to enforce it.
Is it possible to setup this TLS encryption using fabric8 ? karaf ?
Jerome
P.S: I wanted to add the new tag 'fabric8' but I do not have enough points to do that so I tagged using 'fusefabric'.
Edit 1:
Thanks #iocanel!
It seems to work.... well mostly :-)
In fact, if I start from a fresh fabric8 installation, and if I setup in etc/org.ops4j.pax.web.cfg:
org.ops4j.pax.web.config.file=etc/jetty.xml
org.osgi.service.http.port=8181
org.osgi.service.http.secure.enabled=true
org.osgi.service.http.port.secure=8443
org.ops4j.pax.web.ssl.keystore=etc/serverKeystore.jks
org.ops4j.pax.web.ssl.password=mytest
org.ops4j.pax.web.ssl.keypassword=mytest
Then I can browse the hawtio web interface on the 8443 port. However, as soon as I initialise the container with fabric:create the port is not available anymore. If I restart fabric8, then the logs are full of:
2014-02-11 17:41:15,945 | WARN | tp1828719771-631 | AbstractHttpConnection | ty.server.AbstractHttpConnection 552 | 89 - org.eclipse.jetty.aggregate.jetty-all-server - 8.1.14.v20131031 | /git/fabric/info/refs?service=git-upload-pack
java.lang.IllegalStateException: Committed
at org.eclipse.jetty.server.Response.resetBuffer(Response.java:1154)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.Response.sendError(Response.java:317)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.Response.sendError(Response.java:419)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at javax.servlet.http.HttpServletResponseWrapper.sendError(HttpServletResponseWrapper.java:137)[84:org.apache.geronimo.specs.geronimo-servlet_3.0_spec:1.0]
at io.fabric8.maven.impl.MavenSecureHttpContext.authenticate(MavenSecureHttpContext.java:173)[129:io.fabric8.fabric-maven-proxy:1.0.0.SNAPSHOT]
at io.fabric8.maven.impl.MavenSecureHttpContext.handleSecurity(MavenSecureHttpContext.java:78)[129:io.fabric8.fabric-maven-proxy:1.0.0.SNAPSHOT]
at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:68)[100:org.ops4j.pax.web.pax-web-jetty:3.0.6]
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:219)[100:org.ops4j.pax.web.pax-web-jetty:3.0.6]
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:85)[100:org.ops4j.pax.web.pax-web-jetty:3.0.6]
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.Server.handle(Server.java:370)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:971)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1033)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:667)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at java.lang.Thread.run(Thread.java:744)[:1.7.0_51]
2014-02-11 17:41:15,967 | WARN | tp1828719771-616 | Response | rg.eclipse.jetty.server.Response 315 | 89 - org.eclipse.jetty.aggregate.jetty-all-server - 8.1.14.v20131031 | Committed before 401 null
2014-02-11 17:41:15,968 | WARN | tp1828719771-616 | AbstractHttpConnection | ty.server.AbstractHttpConnection 552 | 89 - org.eclipse.jetty.aggregate.jetty-all-server - 8.1.14.v20131031 | /git/fabric/info/refs?service=git-receive-pack
java.lang.IllegalStateException: Committed
at org.eclipse.jetty.server.Response.resetBuffer(Response.java:1154)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.Response.sendError(Response.java:317)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.Response.sendError(Response.java:419)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at javax.servlet.http.HttpServletResponseWrapper.sendError(HttpServletResponseWrapper.java:137)[84:org.apache.geronimo.specs.geronimo-servlet_3.0_spec:1.0]
at io.fabric8.maven.impl.MavenSecureHttpContext.authenticate(MavenSecureHttpContext.java:173)[129:io.fabric8.fabric-maven-proxy:1.0.0.SNAPSHOT]
at io.fabric8.maven.impl.MavenSecureHttpContext.handleSecurity(MavenSecureHttpContext.java:78)[129:io.fabric8.fabric-maven-proxy:1.0.0.SNAPSHOT]
at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:68)[100:org.ops4j.pax.web.pax-web-jetty:3.0.6]
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:219)[100:org.ops4j.pax.web.pax-web-jetty:3.0.6]
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:85)[100:org.ops4j.pax.web.pax-web-jetty:3.0.6]
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.Server.handle(Server.java:370)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:971)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1033)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:667)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)[89:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at java.lang.Thread.run(Thread.java:744)[:1.7.0_51]
Do you have an idea ?
Jerome
The default profiles contains the org.ops4j.pax.web.properties file.
By editing this file you could configure ssl as described here:
https://ops4j1.jira.com/wiki/display/paxweb/SSL+Configuration
I posted an issue: https://github.com/fabric8io/fabric8/issues/696
Let's see if there is a specific configuration to apply.

ServiceMix NMR + Camel Route

I use a ServiceMix + Camel combo for integration purposes.
Two of my camel routes uses the NMR component to exchange messages.
At startup I got the following exception if message were waiting to be processed:
ServiceMixException: Could not dispatch exchange. No matching endpoints.
I seems to be looking for a endpoint called xyz:enpoint_name which is created a few seconds later
18:48:44,266 | INFO | xtenderThread-10 | ManagementEndpointRegistry | ement.ManagementEndpointRegistry 129 | 88 - org.apache.servicemix.nmr.management - 1.3.0.fuse-02-00 | Registering endpoint: org.apache.servicemix.nmr.core.InternalEndpointWrapper#e6810f84 with properties {CHANNEL_SYNC_DELIVERY=false, NAME=xyz:enpoint_name}
Is that expected ?
Is there a way to prevent the route to start before all the endpoint have been initialized ?
you can also use a route policy to control the startup/shutdown of routes, perhaps add a policy to check for the dependent route consumer prior to starting, etc...

Resources