Hi,

Thanks for the answer by Simon Laws and his proposition to open a JIRA for providing my code there.

Before doing so, would you please test the following links of the external web service I try to connect to :

http://159.217.144.79/webservices/Translator.asmx
http://159.217.144.79/webservices/Translator.asmx?WSDL

It seems to be publicly available.

Thanks.

Regards,
Marina.


Le 17 avr. 08 à 13:37, Simon Laws a écrit :
On Thu, Apr 17, 2008 at 11:02 AM, Marina Deslaugiers <
[EMAIL PROTECTED]> wrote:

Hi,

Yes I had looked to that demo example and did not succeded in making it work due to an execution error (which is the same as below) ; furthermore, I
noticed the web service was oflline.

I download the new version you indicate to me in your answer  say
https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/demos/ xml-bigbank/
but it does not work:

- first, Ant fails because the "build-dependency.xml" file is missing; -> I do not know whether it is correct but I have used the one provided
in the previous version of the xml-bigbank
- after that I get the following execution error:

=======================
ant runBuildfile: build.xml
run:
       [java] Exception in thread "main"
javax.xml.stream.FactoryConfigurationError: Provider
com.bea.xml.stream.MXParserFactory not found
    [java]     at
javax.xml.stream.FactoryFinder.newInstance(FactoryFinder.java:72)
    [java]     at
javax.xml.stream.FactoryFinder.find(FactoryFinder.java:176)
    [java]     at
javax.xml.stream.FactoryFinder.find(FactoryFinder.java:92)
    [java]     at
javax.xml.stream.XMLInputFactory.newInstance(XMLInputFactory.java: 136)
    [java]     at
org.apache.tuscany.sca.host.embedded.impl.ReallySmallRuntimeBuilder.c reateContributionService(ReallySmallRuntimeBuilder.java:181)
    [java]     at
org.apache.tuscany.sca.host.embedded.impl.ReallySmallRuntime.start (ReallySmallRuntime.java:129)
    [java]     at
org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.<init> (DefaultSCADomain.java:99)
    [java]     at
org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance (SCADomain.java:230)
    [java]     at
org.apache.tuscany.sca.host.embedded.SCADomain.newInstance (SCADomain.java:69)
    [java]     at bigbank.BigBankClient.main(BigBankClient.java:30)
    [java] Java Result: 1

BUILD SUCCESSFUL
Total time: 2 seconds
=======================

So I cannot go forward on my problem with connecting to the external web service. Can you still help please; I can send you my coding if it helps.

In your answer, you mentionned "the trunk"; what and where is it ?

Regards,
Marina.


Le 15 avr. 08 à 18:37, Luciano Resende a écrit :

Have you looked in the XML BigBank demo application ? This utilizes a
external stock quote web services. Note that the 1.1 service that was
in use has gone offline, and the trunk or 1.2 version of the
application should work for you, as we changed the service in use.

[1] https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/
demos/xml-bigbank/

On Tue, Apr 15, 2008 at 9:30 AM, Marina Deslaugiers
<[EMAIL PROTECTED]> wrote:

Hello,

I have began to work on SCA and Tuscany SCA Java a few time ago and I
would
greetly need your help as I have been asked to urgently contribute to
an
experimentation using SCA and Tuscany Java. This experimentation
especially
involves already existing and deployed business web services.

I have read various documents on SCA and in particular the very nice article "Introducing SCA" by David Chappell & Associates. Reading this
paper
- in particular, the section "putting together: illustrating an SCA
application and the corresponding figure - I was convinced that it was possible to use binding.ws to connect from a SCA domain to a non- SCA
web
service as well as from a SCA domain to a web service in another SCA
domain
- say invoke an external non-SCA web service or an extra- SCAdomain web
service.

 However, after installing and experiencing with
tuscany-sca-1.1-incubating
I did not succeeded once on invoking an external SOAP (asmx) web
service,
whatever I use binding.ws uri= ... or binding.ws wsdlElement etc..
Depending
on the description of binding.ws in the composite file, I get a
different
execution exception (service not found in WSDL,
reflect.UndeclaredThrowableException, ClassCast Exception ...)

 Moreover, I do not see any corresponding examples in Tuscany Java.

So my question is : does this work in Tuscany SCA Java 1.1 ? If the
answer
is yes, would you please provide me with an corresponding working
example
(because in that case, I obvioulsy have made a mistake somewhere in
the code
or composite description )? If the answer is no, is there another
already
available version in which that is working  or a planned version
within a
few months ?

 Thanks very much.

 Regards,
 Marina.






--
Luciano Resende
Apache Tuscany Committer
http://people.apache.org/~lresende<http://people.apache.org/% 7Elresende>
http://lresende.blogspot.com/

-------------------------------------------------------------------- -
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Hi Marina

If you can send you sample that shows the problem and the WSDL for the
external service you are trying to contact then one of us and give it a go and see what is going on. Is the external service publicly available on the
internet?

If you are able to do this the best thing to do is to open a JIRA (
http://issues.apache.org/jira/browse/TUSCANY) and attach the code there.
Attachments to posts to the mailing list are often removed by the mail
infrastructure.


As a bit of backgroun, in SCA the way that you would talk to an external web service is by configuring binding.ws with the WSDL for the external service as part of a component reference. So, for example, you would expect to see a .composite file along the following lines (I took this from the Tuscany
sample helloworld-ws-reference).


    <component name="HelloTuscanyServiceComponent">
<implementation.java class="helloworld.HelloWorldServiceComponent"/>
      <reference name="helloWorldService">
        <binding.ws wsdlElement="
http://helloworld#wsdl.port(HelloWorldService/HelloWorldSoapPort)"/>
      </reference>
    </component>

The component implementation (helloworld.HelloWorldServiceComponent) would
be something like.

public class HelloWorldServiceComponent implements HelloWorldService {

    @Reference
    HelloWorldService helloWorldService;

    public String getGreetings(String name) {
        System.out.println("Called getGreetings");
        return helloWorldService.getGreetings(name);
    }
}

So you can see that all that the SCA service component needs to do is use the reference proxy that is automatically injected into it. The details of
this reference proxy are of course worked out by the runtime using the
information gained from the <binding.ws wsdlElement="
http://helloworld#wsdl.port(HelloWorldService/HelloWorldSoapPort)"/>
element. In this case the binding and service from the WSDL look something
like.

....
<wsdl:binding name="HelloWorldSoapJmsBinding" type="tns:HelloWorld">
        <wsdlsoap:binding style="document" transport="
http://schemas.xmlsoap.org/soap/jms"/>
        <wsdl:operation name="getGreetings">
            <wsdlsoap:operation soapAction=""/>
            <wsdl:input name="getGreetingsRequest">
                <wsdlsoap:body use="literal"/>
            </wsdl:input>
            <wsdl:output name="getGreetingsResponse">
                <wsdlsoap:body use="literal"/>
            </wsdl:output>
        </wsdl:operation>
    </wsdl:binding>

    <wsdl:service name="HelloWorldService">
        <wsdl:port binding="tns:HelloWorldSoapBinding"
name="HelloWorldSoapPort">
            <wsdlsoap:address location="
http://localhost:8085/HelloWorldService"/>
        </wsdl:port>
    </wsdl:service>

</wsdl:definitions>

So the reference should target the service at the location defined by the
<wsdlsoap:address location="http://localhost:8085/HelloWorldService"/>
element. In your case there maybe some feature of the WSDL that is upsetting the runtime and that we haven;t taken account of. The only way to really
tell is if we can try the WSDL.

Hope this helps.

Simon


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to