Freeman,
Yes it's not working with my servicemix bean, but in my opinion *is a
general problem*, because cxf-bc-consumer
is not handling the InOut correctly. It sends a message that is not
expected by the JBI specification of what is an InOut exchange.
If lightweight components are working and servicemix-bean does not
matter, this is probably because the lightweight container
is simply ignoring additional message.
To prove this if i use other components handling InOut with
servicemix-bean it works perfect.
But today i'll attach the test case on the JIRA.
Andrea
Freeman Fang ha scritto:
Andrea Zoppello wrote:
Hi Freeman,
To reproduce it you must simply do a sa as follow
1) CxfBc Consumer ( InOut) -> Any Lightweigth Component
2) CxfBC Consument (InOut) -> Any Servicemix Bean ( extending
TransformBeanSupport )
If I understand correctly, you mean cxf bc didn't work correctly with
Servicemix Bean you are using, any chance you append your bean, just
ensure I didn't miss anything.
I think most of our problems is that we're using cxf-bc without
cxf-se..... A good point for
servicemic in general is to provide examples where cxf-bc is used
without the cxf-se.
Andrea
Freeman Fang ha scritto:
Hi Andrea,
I can't reproduce your problem when I try with cxf-wsdl-first
sample, which is also a InOut MEP used there.
Would you please provide more details about your work flow?
May be open a jira and append your testcase is more helpful.
Thanks
Freeman
Andrea Zoppello wrote:
Hi Ashwin,
I'm working together with Gianfranco on the same problem.
You're right what we're describing here is a InOut exchange going
back and forth,
btw ( as i've understand the InOut mep right but i think so ) , the
problem here is that the trace
you could see in Gianfranco post is ( in our opinion ) not right
in term of InOut.
To verify this we've changed the first component using
servicemix-http instead of cxf and you see something like:
------ FIRST MESSAGE (from HTTP to my component, only "in" message
contained in the exchange) -----
INFO - SimpleExchangeListener - Status: Active
INFO - SimpleExchangeListener - InOut[
id: ID:192.168.20.106-11de3ccb3eb-4:1
status: Active
role: consumer
------ SECOND MESSAGE (from my component to HTTP, same exchange
with "out" message, in addition to "in" message) -----
INFO - SimpleExchangeListener - Status: Active
INFO - SimpleExchangeListener - InOut[
id: ID:192.168.20.106-11de3ccb3eb-4:1
status: Active
role: provider
------ FOURTH MESSAGE (This is the DONE message sent by the HTTP to
my component )-----
INFO - SimpleExchangeListener - Status: Done
INFO - SimpleExchangeListener - InOut[
id: ID:192.168.20.106-11de3ccb3eb-4:1
status: Done
role: consumer
The problem is that with cxf you've a "third" message not expected
by InOut.
Another very strange thisng is that if "MyComponent" is a
lightweight one it seems to work, instead if it's servicemix bean
it's not working.
But this is probably because ligthweigth container simply "ignore"
the "third mesagge" sent by cxf.
Any thougths???
Ashwin Karpe ha scritto:
Hi GianFranco,
Are you sure that what is being sent is a message. My sense is
that this
might be a message exchange going back and forth while following
the In-Out
MEP rather than multiple messages.
Please check out the In-Out MEP and look at the exchanges and status
settings as they are sent and that will give you the idea.
Hope this helps.
Cheers,
Ashwin...
Gianfranco Boccalon wrote:
Hello,
I have a very simple process composed as follows:
CXF-BC Consumer->My component
The MEP is InOut.
The problem is that the CXF send too many messages to my component.
I used a listener to see the messages sent.
The messages are:
------ FIRST MESSAGE (from CXF to my component, only "in" message
contained in the exchange) -----
INFO - SimpleExchangeListener - Status: Active
INFO - SimpleExchangeListener - InOut[
id: ID:192.168.20.106-11de3ccb3eb-4:1
status: Active
role: consumer
------ SECOND MESSAGE (from my component to CXF, same exchange
with "out" message, in addition to "in" message) -----
INFO - SimpleExchangeListener - Status: Active
INFO - SimpleExchangeListener - InOut[
id: ID:192.168.20.106-11de3ccb3eb-4:1
status: Active
role: provider
------ THIRD MESSAGE ----- <---- WHAT IS THIS ?? (This message is
sent by CXF, the exchange is the same of second message, but the
role changed from provider to consumer. The JBI InOut MEP
specification doesn't say anything about this message)
INFO - SimpleExchangeListener - Status: Active
INFO - SimpleExchangeListener - InOut[
id: ID:192.168.20.106-11de3ccb3eb-4:1
status: Active
role: consumer
------ FOURTH MESSAGE (This is the DONE message sent by the CXF
to my component )-----
INFO - SimpleExchangeListener - Status: Done
INFO - SimpleExchangeListener - InOut[
id: ID:192.168.20.106-11de3ccb3eb-4:1
status: Done
role: consumer
Any idea ?
--
*Gianfranco Boccalon, PMP*
______________________________________
<www.spagoworld.org>
Spago&Spagic Project Leader
______________________________________
Senior Consultant
Architectures & Consulting
Research & Innovation Division
*Engineering Ingegneria Informatica S.p.A.
*
Corso Stati Uniti, 23/C - 35127 Padova - Italy
Phone: +39-049.8692511 Fax:+39-049.8692566
Mobile: +39-3357813507
*www.eng.it www.spagoworld.org*
-----
--- Ashwin Karpe, Principal Consultant, PS - Opensource Center of
Competence Progress Software Corporation
14 Oak Park Drive
Bedford, MA 01730
--- +1-972-304-9084 (Office) +1-972-971-1700 (Mobile) ---- Blog:
http://opensourceknowledge.blogspot.com/