Clone mediator
Hi, try to use clone mediator to put fix message into jms queue also and it has a strange behaviour like this:
FIX MESSAGE:
2008-08-22 14:36:15,235 [192.168.81.14-WSMA0003] [fix-Worker-6] INFO LogMediator To: ,WSAction: urn:mediate,SOAPAction: urn:mediate,MessageID: urn:uuid:C19FB8A51C5C2FFC53121940857
5628,Direction: response,Envelope: <?xml version='1.0' encoding='utf-8'?>EXEC" counter="4"><
field id="39">
MESSAGE PUTS ON JMS QUEUE:
2008-08-22 14:36:15,330 [192.168.81.14-WSMA0003] [SynapseWorker-6] INFO LogMediator To: ,WSAction: ,SOAPAction: ,MessageID: urn:uuid:EC67AB5FB4EA4DDDD833089429785231-1502010645,Di
rection: response,monitor = MONITOR SEQUENCE,Envelope: <?xml version='1.0' encoding='utf-8'?>EXEC" counter="4"><
![CDATA[]]>
CONFIGURATION FILE:
<?xml version="1.0" encoding="UTF-8"?>
file
file
file:C:\quickfixj\wso2\olimpic\syn-oli.cfg
file:C:\quickfixj\wso2\olimpic\syn-sender.cfg
dynamicQueues/client.messages
As you can see it lose the values.
Do you have an idea?
Thanks a log
Gianni
- Login or register to post comments
- Printer friendly version
- 351 reads











Hi Gianni, Can you please
Hi Gianni,
Can you please repost the configuration and the traced messages, it seems like the configuration is missing or a formatting issue. Or may be you can attach the files..
Thanks,
Ruwan Linton
No problem, i attach the
No problem, i attach the error file and synapse config file
Excuse me i attached wrong
Excuse me i attached wrong files.
These are the newer.
Hi, This is really strange,
Hi,
This is really strange, but I couldn't reproduce this on the latest build. I am assuming that you are using the WSO2-ESB-1.7 this has to work.
Which proxy gives you these logs? Is it "prova_monitor" or "OlimpicOrderProxy"... I assume it is the former because it is the one which has been exposed over the fix transport. Under these circumstances this has to work.
Thanks,
Ruwan Linton
Hi Can we get this info into
Hi
Can we get this info into a JIRA if we suspect a bug, and then take it from there?
asankha
Asankha, I wrote a test case
Asankha,
I wrote a test case to load the provided message into synapse environment and tried to clone it and it worked perfectly with all the values. I don't think there is an issue with the cloning of the message.
Thanks,
Ruwan Linton
I have this problem with
I have this problem with FIX, if i use jms all works.
Hi, I will recreate the
Hi,
I will recreate the issue by using FIX transport, assume that problem comes with the 'OlimpicOrderProxy'.
Asanka A.
HI, i've modified
HI,
i've modified OlimpicOrderProxy like prova_monitor(killed outgoing sequence) and it doesn't works.
I really don't know where is the problem.
Ciao
Gianni
Using Clone mediator with FIX messages
Hi Gianni,
I did simulate your requirement by taking a FIX message in and clone it send the original message to another FIX endpoint and send the clone to a JMS (AMQP) instance. It is working without a problem and I have attached the configuration file I used.
Asanka A.
Hi, i don't see differeces
Hi, i don't see differeces beetween mine and yours config except the jms uri but it doesn't works.
Hi Gianni, Can you use the
Hi Gianni,
Can you use the config file that I posted by relapsing the EPR (JMS connection) and send us the result.
Asanka A.
This is the result
This is the result
Hi Gianni,You have not
Hi Gianni, You have not replaced the JMS URI to the one you were using before "jms:/Order.Consumer?transport.jms.ConnectionFactory=myQueueConnectionFactory" It is searching for QPid libraries that I'm using, can you replace it and let me know the result.
Asanka A.
Config file for your test env
This is the new result
This is the new result
Hi Gianni, Based on the log,
Hi Gianni,
Based on the log, first/original message dispatch to the FIX endpoint and the clone dispatch to the JMS endpoint (Queue), and no errors in the log.
Does the order single message reached to your endpoints ?
Asanka A.
I've no errors in the log
I've no errors in the log file but if you see the message, logged into monitor sequence after the clone mediator, has no values. This is my problem.
Thanks
Gianni
Message before clone
Message before clone (Original)
Cloned message after the clone mediator executed
Can you point me to the missing values, pls.
Thx
Asanka A.
This is the first field of
This is the first field of Fix message:
Message before clone (Original)
Cloned message after the clone mediator executed
Thanks
Gianni
Excuse me, the fields ar
Excuse me, the fields ar into the atteched file
Hi Gianni, Yes based on your
Hi Gianni,
Yes based on your log values inside CDATA section is missing after clone, I will check this on my test environment and will get back to you.
Asanka A.
Hi Gianni, I did simulate
Hi Gianni,
I did simulate your problem again, but in my workspace I'm getting the values for CDATA after clone. I have attached my output in a text file. Can you replace the synapse libraries by getting a latest source distribution from the svn trunk. Follow the instructions that I explained you in the previous forum post[1], but make sure to replace all the libraries this time (previous case we replaced only the transport library)
Asanka A.
[1]http://wso2.org/forum/thread/3913#comment-6395
Hi, when i compile i get
Hi, when i compile i get this error
Thanks
Gianni
Hi, i followed yours
Hi, i followed yours instructions but i'm not able to compile.
In the middle i've created my clone mediator changing this method:
public static SOAPEnvelope cloneSOAPEnvelope(SOAPEnvelope envelope) {
SOAPEnvelope newEnvelope;
if (SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI
.equals(envelope.getBody().getNamespace().getNamespaceURI())) {
newEnvelope = OMAbstractFactory.getSOAP11Factory().getDefaultEnvelope();
} else {
newEnvelope = OMAbstractFactory.getSOAP12Factory().getDefaultEnvelope();
}
if (envelope.getHeader() != null) {
Iterator itr = envelope.getHeader().cloneOMElement().getChildren();
while (itr.hasNext()) {
newEnvelope.getHeader().addChild((OMNode) itr.next());
}
}
if (envelope.getBody() != null) {
//Iterator itr = envelope.getBody().cloneOMElement().getChildren();
Iterator itr = envelope.getBody().getChildren();
while (itr.hasNext()) {
OMNode n = (OMNode) itr.next();
newEnvelope.getBody().addChild(n);
}
}
return newEnvelope;
}
instead to use "Iterator itr = envelope.getBody().cloneOMElement().getChildren();"
i use "Iterator itr = envelope.getBody().getChildren();"
and it works.
i've modified olso the original but i'm not able to compile.
Do you have some suggest?
Thanks a lot
Gianni
Hi Gianni, I will upload the
Hi Gianni,
I will upload the synapse libraries that I'm using to a common place and send you the download instructions. Will re run your test using those libraries and check the output.
BW how do you generate the incoming FIX message,is it using Banzai ?
Asanka A.
Download instructions
Hi Gianni,
Please follow the following instructions to download the Synapse library files.
Asanka A.
Protocol : sftp
Host : ww2.wso2.org
User : guestftp
Password : wso2##@Alions
If you are using a Win32 operating system you can use WinSCP client to download, or can use cygwin.
Instructions for linux and cygwin
Type the password
This will copy the file to /opt/wso2 folder in your local machine.
Extract the archive
Replace your existing synapse libraries with new ones.
Thanks a lot for your
Thanks a lot for your patience.
I substituted the libraries but nothing changed, at this point i don't understand what is wrong in my environment.
Gianni
Runtime Enviornment
Hi Gianni,
Can you send me the exact environment that you are using to run the ESB, including the OS and the JDK/JRE version.
Asanka A.
Hi, this is my
Hi,
this is my environment:
Windows Vista
WSO2 1.7
ActiveMQ 1.5
Thanks
Gianni
Will test this in the exact
Will test this in the exact environment and get back to you.
Asanka A.