Hi all,

Recently when working on the ESB Registry,
(org.wso2.esb.registry.ESBRegistry), I discovered that I can quite easily
obtain the contents of an XML file using a lookup(String). According to the
implementation, it also seems to handle non-XML file types (ex:- .txt) as
well, and creates a OMText along with the file attached as a DataHandler to
it. Did I get this correct? or am I mistaken?

If I got it right, it works fine upto, result.detach(). At this point I get
an exception,

org.apache.axiom.om.OMException: Elements that doesn't have a parent can not
be detached
    at org.apache.axiom.om.impl.llom.OMNodeImpl.detach(OMNodeImpl.java:195)
    at org.wso2.esb.registry.ESBRegistry.lookup(ESBRegistry.java:207)
    at
org.sciflex.plugins.synapse.esper.mediators.AxiomMediator.mediate(AxiomMediator.java:221)
    at
org.apache.synapse.mediators.ext.ClassMediator.mediate(ClassMediator.java:78)
    at
org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
    at
org.apache.synapse.mediators.filters.FilterMediator.mediate(FilterMediator.java:95)
    at
org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
    at
org.apache.synapse.mediators.filters.InMediator.mediate(InMediator.java:60)
    at
org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
    at
org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
    at
org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:176)
    at
org.apache.synapse.core.axis2.SynapseMessageReceiver.receive(SynapseMessageReceiver.java:89)
    at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:170)
    at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
    at
org.apache.synapse.transport.nhttp.ServerWorker.processPost(ServerWorker.java:244)
    at
org.apache.synapse.transport.nhttp.ServerWorker.run(ServerWorker.java:185)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
    at java.lang.Thread.run(Thread.java:619)

It might most probably be that I'm making a mistake here. If so, can you
please tell me how I could for instance read a .txt file that I save in the
ESBRegistry?

Thanks,
Senaka
_______________________________________________
Esb-java-dev mailing list
[email protected]
http://mailman.wso2.org/cgi-bin/mailman/listinfo/esb-java-dev

Reply via email to