On Mon, Jun 2, 2008 at 1:15 PM, Simon Laws <[EMAIL PROTECTED]>
wrote:

> Hi Marina
>
> I've just been looking at this so some comments in line...
>
> Simon
>
>
>>
>>>>      1) the namespaces used in SOAP BODY are not in conformity with the
>>>> WSDL. Indeed, one can find the value "http://translatewithsms";  as the
>>>> "pseudo"  namespace _ns_. Replacing that value with the one defined in
>>>> the
>>>> WSDL say "http://com.osa.mdsp.enabler.sei/SMSEnabler/V2_0/
>>>> SMSSenderSEI",
>>>> the SOAP frame works
>>>>
>>>> Note that I realized that "translatewithsms" is the package name of my
>>>> Eclipse project (containing in particular java client, interfaces etc.
>>>> files).
>>>
>>>
> A. How did you generate the Java interface that you are using to type the
> component reference that refers to this remote service?
> B. How do you define the interface of the reference that refers to the
> remote service. Do you use interface.wsdl?
>
> If you have generated your java interface into the package
> "translatewithsms" and you use this to describe the reference interface (or
> is defaults to this) then it will invent the message namespace based on the
> package name I believe.
>
>
>>
>>>>
>>>>      2) at HTTP level, the web service in the Nursery is protected by
>>>> "Basic Authentication" ; but the "Authorization" header is not sent by
>>>> Tuscany
>>>>
>>>>       (NB: at the current state, we cannot know whether it is actually a
>>>> problem EXCEPT if Tuscany uses pre-emptive authentication mecanisms
>>>>
>>>
> Yes. You definitions.xml file turns on the WSSecurity authorization using
> the <tuscany:wsConfigParam> element. To do HTTP basic authentication we need
> a new a new policy definition. I don't think we have done this yet so I'll
> be interested to see if anyone posts here to contradict me.
>
>
>
>>>>      3) Note that Tuscany sends the authentication
>>>> credentials(user/password) using WS-Security that is not taken into
>>>> account
>>>> by the Nursery platform.  This is not a problem however, credentials are
>>>> not
>>>>  operate.
>>>>
>>>> NB:  tcpdump files can be opened with WireShark http://
>>>> www.wireshark.org/download.html
>>>>
>>>>
> I see. This comes back to replacing wssecurity based authentication with
> HTTP basic authentication.
>
>
>>>>
>>>>  I might be responsible for these problems as I have probably made
>>>> mistakes
>>>> in coding (at least regarding the policy expression). Please can you
>>>> help me
>>>> in correcting.
>>>>
>>>> Thanks you very much.
>>>>
>>>> Regards,
>>>> Marina.
>>>>
>>>>
>>>>
>>>>
>>>>
Marina

I tried a test to help clarrify what I'm talking about in terms of getting
the namespace right. I changed a calculator sample I'm using for some other
testing to take the namespace from a manually altered WSDL file. This is how
I set up the composite.

    <component name="CalculatorServiceComponent">
        <implementation.java class="calculator.CalculatorServiceImpl"/>
        <reference name="addService">
           <interface.wsdl interface="
http://calculator2#wsdl.interface(AddService)"/>
           <binding.ws uri="http://localhost:8085/AddService";
requires="authentication" />
        </reference>
        <reference name="subtractService"
target="SubtractServiceComponent"/>
        <reference name="multiplyService"
target="MultiplyServiceComponent"/>
        <reference name="divideService" target="DivideServiceComponent"/>
    </component>

    <component name="AddServiceComponent">
        <implementation.java class="calculator.AddServiceImpl"/>
        <service name="AddService">
             <interface.wsdl interface="
http://calculator2#wsdl.interface(AddService)" />
             <binding.ws uri="http://localhost:8085/AddService";
requires="authentication"/>
        </service>
    </component>

The WSDL sits alongside the composite file in the contribution and is
automatically parsed by the runtime. Note that I'm telling the reference to
take the interface details from the WSDL file with the line

<interface.wsdl interface="http://calculator2#wsdl.interface(AddService)"/>

This won't fix your HTTP basic authentication problem but should correct the
namespace issue.

Regards

Simon

Reply via email to