Basically I added an HTTP-Get Binding, Port Type, etc. to the WSDL using
Eclipse's Web Tools Platform. I commented out the SOAP binding so only the
HTTP Get could be used. The WSDL is below. The sca.module has:
<entryPoint name="HelloWorldWebService">
<interface.wsdl interface="http://helloworld#wsdl.interface(
HelloWorldHttp)"/>
<binding.ws port="http://helloworld#wsdl.endpoint(
HelloWorldService/HelloWorldHttpPort)"/>
<reference>HelloWorldServiceComponent/HelloWorldService</reference>
</entryPoint>
as well as the associated component, HelloWorldServiceComponent.
The client's sca.module has:
<externalService name="HelloWorldService">
<interface.java interface="helloworld.HelloWorldService"/>
<binding.ws port="
http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldHttpPort)"/>
</externalService>
The error I am getting is:
Exception in thread "main" org.osoa.sca.ServiceRuntimeException:
org.apache.axis2.AxisFault: No address information in EPR, cannot infer
transport
at
org.apache.tuscany.binding.axis2.externalservice.Axis2ServiceInvoker.invoke(
Axis2ServiceInvoker.java:56)
at
org.apache.tuscany.core.extension.ExternalServiceTargetInvoker.doInvoke(
ExternalServiceTargetInvoker.java:84)
at
org.apache.tuscany.core.extension.ExternalServiceTargetInvoker.invokeTarget(
ExternalServiceTargetInvoker.java:77)
at
org.apache.tuscany.core.extension.ExternalServiceTargetInvoker.invoke(
ExternalServiceTargetInvoker.java:93)
at org.apache.tuscany.core.wire.impl.InvokerInterceptor.invoke(
InvokerInterceptor.java:39)
at org.apache.tuscany.core.wire.jdk.JDKInvocationHandler.invoke(
JDKInvocationHandler.java:112)
at $Proxy13.getGreetings(Unknown Source)
at helloworld.HelloWorldClient.main(HelloWorldClient.java:56)
Caused by: org.apache.axis2.AxisFault: No address information in EPR,
cannot infer transport
at org.apache.axis2.description.ClientUtils.inferOutTransport(
ClientUtils.java:40)
at org.apache.axis2.description.OutInAxisOperationClient.execute(
OutInAxisOperation.java:237)
at
org.apache.tuscany.binding.axis2.externalservice.Axis2OperationInvoker.invokeOperation(
Axis2OperationInvoker.java:81)
at
org.apache.tuscany.binding.axis2.externalservice.Axis2ServiceInvoker.invoke(
Axis2ServiceInvoker.java:53)
... 7 more
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://helloworld" name="helloworld"
xmlns:tns="http://helloworld"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="
http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:mime="
http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:sdo=
"commonj.sdo/java">
<wsdl:types>
<schema elementFormDefault="qualified" targetNamespace="
http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema">
<element name="getGreetings">
<complexType>
<sequence>
<element name="name" type="xsd:string"/>
</sequence>
</complexType>
</element>
<element name="getGreetingsResponse">
<complexType>
<sequence>
<element name="getGreetingsReturn" type=
"xsd:string"/>
</sequence>
</complexType>
</element>
</schema>
</wsdl:types>
<!--
<wsdl:message name="getGreetingsRequestSoap">
<wsdl:part element="tns:getGreetings" name="parameters"/>
</wsdl:message>
<wsdl:message name="getGreetingsResponseSoap">
<wsdl:part element="tns:getGreetingsResponse" name="parameters"/>
</wsdl:message>
-->
<wsdl:message name="getGreetingsResponseHttp">
<wsdl:part name="getGreetingsResponseHttp" element=
"tns:getGreetingsResponse"></wsdl:part>
</wsdl:message>
<wsdl:message name="getGreetingsRequestHttp">
<wsdl:part name="getGreetingsRequestHttp" element="tns:getGreetings"
></wsdl:part>
</wsdl:message>
<!--
<wsdl:portType name="HelloWorldSoap">
<wsdl:operation name="getGreetings">
<wsdl:input message="tns:getGreetingsRequestSoap"
name="getGreetingsRequest"/>
<wsdl:output message="tns:getGreetingsResponseSoap"
name="getGreetingsResponse"/>
</wsdl:operation>
</wsdl:portType>
-->
<wsdl:portType name="HelloWorldHttp">
<wsdl:operation name="getGreetings">
<wsdl:input message="tns:getGreetingsRequestHttp" name=
"getGreetingsRequest"></wsdl:input>
<wsdl:output message="tns:getGreetingsResponseHttp" name=
"getGreetingsResponse"></wsdl:output>
</wsdl:operation>
</wsdl:portType>
<!--
<wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorldSoap">
<wsdlsoap:binding style="document" transport="
http://schemas.xmlsoap.org/soap/http"/>
<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:binding name="HelloWorldHttpBinding" type="tns:HelloWorldHttp">
<http:binding verb="GET"/>
<wsdl:operation name="getGreetings">
<http:operation location="/getGreetings"/>
<wsdl:input name="getGreetingsRequest">
<http:urlEncoded />
</wsdl:input>
<wsdl:output name="getGreetingsResponse">
<mime:content type="text/xml"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="HelloWorldService">
<!--
<wsdl:port binding="tns:HelloWorldSoapBinding"
name="HelloWorldSoapPort">
<wsdlsoap:address location="
http://localhost:8080/sample-helloworldws/services/HelloWorldWebService"/>
</wsdl:port>
-->
<wsdl:port name="HelloWorldHttpPort" binding=
"tns:HelloWorldHttpBinding">
<http:address location="http://www.example.org/"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
--
Elizabeth DeLouise
Tieline- 295-8863 / Phone- (845) 435-8863
[EMAIL PROTECTED]
Jean-Sebastien
Delfino
<[EMAIL PROTECTED] To
.org> [email protected]
cc
06/20/2006 06:06
PM Subject
Re: No address info in EPR error
Please respond to
[EMAIL PROTECTED]
ache.org
[snip]
Elizabeth Delouise wrote:
> More specifically, my question is whether or not the tuscany runtime
> supports an Http-Get binding. I was told that it does not.
>
Tuscany currently supports two different implementations of the SCA web
service binding:
- on top of Axis2, and Axis2 supports HTTP get (see
http://ws.apache.org/axis2/1_0/rest-ws.html#rest_with_get)
- on top of Celtix, and Dan please keep me honest here, but I think your
Celtix binding also support HTTP get bindings, right?
So in theory this should work, now the reality is that we've never
exercised that path so you are exploring unknown territory. From your
previous email, I understand that you ran into some errors. Can you
please give us a little more info, could you post the WSDL you used,
tell us if you tried with the Axis2 binding or the Celtix binding, and
give us more details on the error you're getting? Then we can see if
this is something that we need to fix in our code, a problem with the
underlying stack, or a setup problem... Thanks.
--
Jean-Sebastien
---------------------------------------------------------------------
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]