Hi,

Write the element inside soap and append the namespace actually controlled by the stax impl, it's not cxf or smx code.

Freeman
On 2009-11-24, at 下午11:46, Salgar, Mehmet (external) wrote:

Yes,

that was the problem thx for the tip....

Do you know which class implements this functionality, it would be interesting to look inside....





T-Mobile Deutschland GmbH
Aufsichtsrat: Timotheus Höttges (Vorsitzender)
Geschäftsführung: Niek Jan van Damme (Sprecher), Thomas Berlemann, Thomas Dannenfeldt, Albert Henn,
Dr. Christian P. Illek, Dr. Bruno Jacobfeuerborn, Dr. Dirk Rohweder
Handelsregister: Amtsgericht Bonn, HRB 59 19
Sitz der Gesellschaft: Bonn
WEEE-Reg.-Nr.: DE60800328



-----Ursprüngliche Nachricht-----
Von: Salgar, Mehmet (external) [mailto:[email protected] ]
Gesendet: Dienstag, 24. November 2009 15:19
An: [email protected]
Betreff: AW: AW: AW: Is this possible

Ok then that must be the trick thx for the info.....




T-Mobile Deutschland GmbH
Aufsichtsrat: Timotheus Höttges (Vorsitzender)
Geschäftsführung: Niek Jan van Damme (Sprecher), Thomas Berlemann, Thomas Dannenfeldt, Albert Henn, Dr. Christian P. Illek, Dr. Bruno Jacobfeuerborn, Dr. Dirk Rohweder Handelsregister: Amtsgericht Bonn, HRB 59 19 Sitz der Gesellschaft: Bonn
WEEE-Reg.-Nr.: DE60800328



-----Ursprüngliche Nachricht-----
Von: Freeman Fang [mailto:[email protected]]
Gesendet: Dienstag, 24. November 2009 15:17
An: [email protected]
Betreff: Re: AW: AW: Is this possible

Hi,

If the namespace is used in target wsdl schemas, then the namespace will be added for the first element to use it, it won't be added for the outer soap envelope.

For example, something like

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>
     <suc:sayHi xmlns:suc="http://xxx.test.org/types";>
       ....

but not
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";
xmlns:suc="http://xxx.test.org/types"; >
     <suc:sayHi>
    ....

Cxf bc do this replacement.

Freeman

On 2009-11-24, at 下午9:59, Salgar, Mehmet (external) wrote:

But that can't be the namespace that I used is definetely inside of
the target wsdl in the webservice that I try to call....

Or you mean the namespaces that we are using inside of the
beans.xml.....

Can you tell me which Java Component makes this replacement so I can
debug and look there....

Thx....




T-Mobile Deutschland GmbH
Aufsichtsrat: Timotheus Höttges (Vorsitzender)
Geschäftsführung: Niek Jan van Damme (Sprecher), Thomas Berlemann,
Thomas Dannenfeldt, Albert Henn, Dr. Christian P. Illek, Dr. Bruno
Jacobfeuerborn, Dr. Dirk Rohweder
Handelsregister: Amtsgericht Bonn, HRB 59 19 Sitz der Gesellschaft:
Bonn
WEEE-Reg.-Nr.: DE60800328



-----Ursprüngliche Nachricht-----
Von: Freeman Fang [mailto:[email protected]]
Gesendet: Dienstag, 24. November 2009 13:51
An: [email protected]
Betreff: Re: AW: Is this possible


On 2009-11-24, at 下午8:04, Salgar, Mehmet (external) wrote:

Hallo.

thx for the answer and I am sorry for the late response....

I solved this problem by changing saxon:xslt result type to 'dom'
actually I don't like this because I prefer the solution stays stream
based and not DOM based but I would look to the problem further when
I get the complete scenario runnning...

Now I have another funnier problem, now I can make the XSLT
transformation and transformed message is forwarded to CXF Provider
component but when Provider module deletes the namespaces that I
included during the transformation...

I think code first, learn later the internals method had reached to
it limits...So do you have any idea why the namespaces from like
bottom is dissapeared..

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/
envelope/"  xmlns:suc="http://xxx.test.org/types"; ...

is converted only to

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ envelope/"

Hi,

That's because cxf bc provider transform soap message based on the
wsdl model, so any namespace which is not defined in wsdl will be
ignored.

Freeman

in CXF Provider component, I can see that in Exchange debug content
is correctly delivered (Debug from
org.apache.servicemix.nmr.core.ChannelImpl display the correct SOAP
Message)...

My only theorie is, saxon make the correct translation but it doesn't
enter the namespace information someplace in exchange?????

Thx for the answers....





T-Mobile Deutschland GmbH
Aufsichtsrat: Timotheus Höttges (Vorsitzender)
Geschäftsführung: Niek Jan van Damme (Sprecher), Thomas Berlemann,
Thomas Dannenfeldt, Albert Henn, Dr. Christian P. Illek, Dr. Bruno
Jacobfeuerborn, Dr. Dirk Rohweder
Handelsregister: Amtsgericht Bonn, HRB 59 19 Sitz der Gesellschaft:
Bonn
WEEE-Reg.-Nr.: DE60800328



-----Ursprüngliche Nachricht-----
Von: Gert Vanthienen [mailto:[email protected]]
Gesendet: Donnerstag, 12. November 2009 18:46
An: [email protected]
Betreff: Re: Is this possible

L.S.,

That use case is definitely supported by ServiceMix, but it's very
hard to figure out what the problem is without seeing the actual
exception.  Can you post the full stacktrace of the exception you
get?

There are two things that come to mind:
- could you try varying the output type on the servicemix-saxon
endpoint to e.g. output="string" to see if that avoids the
ClassCastException?
- have you specified useJBIWrapper="false" on the CXF provider
endpoint? without this setting, the CXF BC provider endpoint expects
the message to be in the JBI wrapper format instead of a plain SOAP
message

Regards,

Gert Vanthienen
------------------------
Open Source SOA: http://fusesource.com
Blog: http://gertvanthienen.blogspot.com/



2009/11/12 Salgar, Mehmet (external)
<[email protected]
:
Hi everybody,

I am trying to configure to transform a  cxf-bc-consumer received
soap message with xslt and redirect to another cxf-bc-provider...

Receiving the message at consumer and transforming the message with
saxon and an eip pipeline works fine but when the provider receives
the message it throws a ClassCastException that it can't cast
org.w3.Element to org.apache.....xerces.DeferedElement (I don't have
the exact class name at the moment)....

What is not clear to me, I can see with debuging that xslt
transformation is valid and I have a valid soap message (String
output of the message, I can send with SOAP UI to server without any
problem)...

So why a transformed xslt message in a eip pipeline is not valid for
cxf-bc-provider, has anybody an idea?

Thx for the answers....


T-Mobile Deutschland GmbH
Aufsichtsrat: Timotheus Hottges (Vorsitzender)
Geschaftsfuhrung: Niek Jan van Damme (Sprecher), Thomas Berlemann,
Thomas Dannenfeldt, Albert Henn, Dr. Christian P. Illek, Dr. Bruno
Jacobfeuerborn, Dr. Dirk Rohweder
Handelsregister: Amtsgericht Bonn, HRB 59 19 Sitz der Gesellschaft:
Bonn
WEEE-Reg.-Nr.: DE60800328



--
Freeman Fang
------------------------
Open Source SOA: http://fusesource.com


--
Freeman Fang
------------------------
Open Source SOA: http://fusesource.com


--
Freeman Fang
------------------------
Open Source SOA: http://fusesource.com

Reply via email to