Hey to all,

 I am proceeding with exploring of SMX 4.1.0 and now bumped into the following 
issue:
 compiled and installed bridge-camel example, tried accessing through the 
client. Got Error: 

<p>Problem accessing /bridge/. Reason:
<pre>    Fault occured for InOnly exchange</pre></p><h3>Caused 
by:</h3><pre>org.apache.servicemix.jbi.exception.FaultException: Fault occured 
for InOnly exchange
        at  <skiped the rest>

This example takes HTTP request, transforms, logs, and puts into queue.
Here is full copy/paste from log:

15:42:36,305 | INFO  | x-camel-thread-2 | example                          | 
rg.apache.camel.processor.Logger   88 | Exchange[BodyType:String, Body:<?xml 
version="1.0" encoding="UTF-8"?>
<e:Envelope xmlns:e="http://schemas.xmlsoap.org/soap/envelope/";>
  <e:Body>
    <ping>
      <pingRequest>
        <message xmlns="http://soap";>help</message>
      </pingRequest>
    </ping>
  </e:Body>
</e:Envelope>
]
15:42:36,316 | INFO  | x-camel-thread-2 | ManagementEndpointRegistry       | 
ement.ManagementEndpointRegistry   56 | Registering endpoint: 
org.apache.servicemix.nmr.core.internalendpointwrap...@7eb5053e with properties 
{javax.jbi.servicedesc.serviceendpoint=org.apache.servicemix.common.externalendpo...@1c436b,
 
NAME={http://camel.apache.org/schema/jbi}provider:ID:10.40.136.67-12719f58774-2:0,
 service.id=259, UNTARGETABLE=true, objectClass=[Ljava.lang.String;@18e45a8, 
ENDPOINT_NAME=ID:10.40.136.67-12719f58774-2:0, 
SERVICE_NAME={http://camel.apache.org/schema/jbi}provider, jbi.external=true}
15:42:36,323 | WARN  | x-camel-thread-2 | JbiBinding                       | 
ache.servicemix.camel.JbiBinding  232 | Unable to convert message body of type 
class java.lang.String into an XML Source
15:42:36,358 | ERROR | mix-jms-thread-2 | JmsComponent                     | 
icemix.common.AsyncBaseLifeCycle  480 | Error processing exchange 
org.apache.servicemix.jbi.runtime.impl.inonlyi...@13641d6
javax.xml.stream.XMLStreamException: Trying to write END_DOCUMENT when document 
has no root (ie. trying to output empty document).
        at 
com.ctc.wstx.sw.BaseStreamWriter.throwOutputError(BaseStreamWriter.java:1547)
        at 
com.ctc.wstx.sw.BaseStreamWriter.reportNwfStructure(BaseStreamWriter.java:1576)
        at 
com.ctc.wstx.sw.BaseStreamWriter._finishDocument(BaseStreamWriter.java:1402)
        at 
com.ctc.wstx.sw.BaseStreamWriter.writeEndDocument(BaseStreamWriter.java:553)
        at 
org.apache.servicemix.soap.marshalers.SoapWriter.writeSimpleMessage(SoapWriter.java:130)
        at 
org.apache.servicemix.soap.marshalers.SoapWriter.write(SoapWriter.java:92)
        at 
org.apache.servicemix.jms.DefaultJmsMarshaler.toJMS(DefaultJmsMarshaler.java:89)
        at 
org.apache.servicemix.jms.DefaultJmsMarshaler.toJMS(DefaultJmsMarshaler.java:116)
        at 
org.apache.servicemix.jms.AbstractJmsProcessor.fromNMS(AbstractJmsProcessor.java:216)
        at 
org.apache.servicemix.jms.AbstractJmsProcessor.createMessageFromExchange(AbstractJmsProcessor.java:263)
        at 
org.apache.servicemix.jms.multiplexing.MultiplexingProviderProcessor.process(MultiplexingProviderProcessor.java:129)
        at 
org.apache.servicemix.soap.SoapEndpoint.process(SoapEndpoint.java:400)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:627)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:581)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchangeInTx(AsyncBaseLifeCycle.java:478)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle$2.run(AsyncBaseLifeCycle.java:347)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
15:42:36,360 | ERROR | x-camel-thread-2 | DefaultErrorHandler              | 
rg.apache.camel.processor.Logger  248 | Failed delivery for exchangeId: 
66d33fea-3a3f-440d-9936-85dbe6194ba4. Exhausted after delivery attempt: 1 
caught: javax.xml.stream.XMLStreamException: Trying to write END_DOCUMENT when 
document has no root (ie. trying to output empty document).
javax.xml.stream.XMLStreamException: Trying to write END_DOCUMENT when document 
has no root (ie. trying to output empty document).
        at 
com.ctc.wstx.sw.BaseStreamWriter.throwOutputError(BaseStreamWriter.java:1547)
        at 
com.ctc.wstx.sw.BaseStreamWriter.reportNwfStructure(BaseStreamWriter.java:1576)
        at 
com.ctc.wstx.sw.BaseStreamWriter._finishDocument(BaseStreamWriter.java:1402)
        at 
com.ctc.wstx.sw.BaseStreamWriter.writeEndDocument(BaseStreamWriter.java:553)
        at 
org.apache.servicemix.soap.marshalers.SoapWriter.writeSimpleMessage(SoapWriter.java:130)
        at 
org.apache.servicemix.soap.marshalers.SoapWriter.write(SoapWriter.java:92)
        at 
org.apache.servicemix.jms.DefaultJmsMarshaler.toJMS(DefaultJmsMarshaler.java:89)
        at 
org.apache.servicemix.jms.DefaultJmsMarshaler.toJMS(DefaultJmsMarshaler.java:116)
        at 
org.apache.servicemix.jms.AbstractJmsProcessor.fromNMS(AbstractJmsProcessor.java:216)
        at 
org.apache.servicemix.jms.AbstractJmsProcessor.createMessageFromExchange(AbstractJmsProcessor.java:263)
        at 
org.apache.servicemix.jms.multiplexing.MultiplexingProviderProcessor.process(MultiplexingProviderProcessor.java:129)
        at 
org.apache.servicemix.soap.SoapEndpoint.process(SoapEndpoint.java:400)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:627)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:581)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchangeInTx(AsyncBaseLifeCycle.java:478)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle$2.run(AsyncBaseLifeCycle.java:347)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
15:42:36,362 | WARN  | x-camel-thread-2 | SimpleEndpoint                   | 
.common.endpoints.SimpleEndpoint   90 | SimpleEndpoint.fail called: 
15:42:36,363 | WARN  | 3...@qtp-1838702-0 | jetty                            | 
service.jetty.internal.JCLLogger  115 | /bridge/
org.apache.servicemix.jbi.exception.FaultException: Fault occured for InOnly 
exchange
        at 
org.apache.servicemix.camel.CamelProviderEndpoint.onFailure(CamelProviderEndpoint.java:154)
        at 
org.apache.camel.impl.DefaultUnitOfWork.done(DefaultUnitOfWork.java:143)
        at 
org.apache.camel.processor.UnitOfWorkProcessor.done(UnitOfWorkProcessor.java:82)
        at 
org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:71)
        at 
org.apache.camel.processor.DelegateProcessor.process(DelegateProcessor.java:48)
        at 
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67)
        at 
org.apache.servicemix.camel.CamelProviderEndpoint$1.call(CamelProviderEndpoint.java:100)
        at 
org.apache.servicemix.camel.JbiBinding.runWithCamelContextClassLoader(JbiBinding.java:107)
        at 
org.apache.servicemix.camel.CamelProviderEndpoint.handleActiveProviderExchange(CamelProviderEndpoint.java:98)
        at 
org.apache.servicemix.camel.CamelProviderEndpoint.process(CamelProviderEndpoint.java:77)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:627)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:581)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchangeInTx(AsyncBaseLifeCycle.java:478)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle$2.run(AsyncBaseLifeCycle.java:347)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)


Seems to me like it is an JMS error. I have default instalation on Microsoft 
Vista with 4.1.0 SNAPSHOT downloaded on 2010-02-24 06:57 (Greenvich time +0)
I checked the configs and according activemq-broker.xml there should be 
<install>/data/activemq directory on which activemq should be storing the 
files, but such doesn't exists.
I did the following steps:

ka...@root> osgi:list | grep activemq
[ 126] [Active     ] [            ] [       ] [   60] activemq-core (5.3.0)
[ 127] [Active     ] [            ] [       ] [   60] activemq-ra (5.3.0)
[ 128] [Active     ] [            ] [       ] [   60] activemq-console (5.3.0)
[ 129] [Installed  ] [            ] [       ] [   60] activemq-pool (5.3.0)
[ 170] [Installed  ] [            ] [       ] [   60] activemq-broker.xml (0.0.0
)
ka...@root> start 129
Error executing command: Unresolved constraint in bundle org.apache.activemq.act
ivemq-pool [129]: package; (&(package=org.apache.commons.pool.impl)(version>=1.4
.0)(!(version>=1.5.0)))
ka...@root> osgi:install file:D:/work_soft/apache-servicemix-4.1.0-SNAPSHOT/syst
em/commons-pool/commons-pool/1.5.4/commons-pool-1.5.4.jar
org.osgi.framework.BundleException: Bundle symbolic name and version are not uni
que: org.apache.commons.pool:1.5.4

I tried various commands with | grep list but saw only activemq-pool shown, so 
no ideas how to enable that commons-pool as it seems this is bottleneck for MQ 
not starting.

Any advices would be welcome.

On the same matter - later I'll have to enable Oracle AQ access from ServiceMix 
4 however haven't found any useful docs about it. Saw about bridging, but I'd 
prefer to access it directly.
Could anyone give me some directions and advices how to do that? On ServiceMix 
3.3.1 it was easily done by putting Oracle libs to lib/optional directory and 
then configuring jndi.xml to perform global jndi-search to get factory. However 
I don't see any jndi.xml in SMX4 package (how global JNDI lookup is being done 
there?) and lib contains very few files. Furthermore, I haven't saw that any 
config file pointing to lib directory.


Thank you in advance,
Titas

Reply via email to