|
Тема |
Е кое му е по-лесното? [re: в] |
|
Автор |
Nobby (голем дзвер) |
|
Публикувано | 17.12.03 14:28 |
|
|
In XML:
<esd:CType name="EchoData">
<esd:item name="aLong" type="xsd:int" builtin="true" array="false" inout="false"/>
<esd:item name="aBool" type="xsd:boolean" builtin="true" array="false" inout="false"/>
<esd:item name="aString" type="xsd:string" builtin="true" array="false" inout="false"/>
</esd:CType>
<esd:Method name="getData">
<esd:InParam name="GetDataRequest">
<esd:item name="l" type="xsd:int" builtin="true" array="false" inout="false"/>
<esd:item name="b" type="xsd:boolean" builtin="true" array="false" inout="false"/>
<esd:item name="s" type="xsd:string" builtin="true" array="false" inout="false"/>
</esd:InParam>
<esd:OutParam name="GetDataResponse">
<esd:item name="return" type="typens:EchoData" builtin="false" array="false" inout="false"/>
</esd:OutParam>
</esd:Method>
versus
In IDL:
struct EchoData {
long aLong;
boolean aBool;
string aString;
};
Или пък (инициализация и извикване на един метод):
This is an example SOAP invocation in java (using the Apache SOAP library):
URL url = new URL("http://localhost:8080/apache-soap/servlet/rpcrouter");
Call call = new Call();
call.setTargetObjectURI("urn:Hello");
call.setMethodName("sayHelloTo");
call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
Vector params = new Vector();
params.addElement(new Parameter("name", String.class, "Mark", null));
call.setParams(params);
Response resp = null;
try {
resp = call.invoke(url, "");
if ( !resp.generatedFault() ) {
Parameter ret = resp.getReturnValue();
Object value = ret.getValue();
System.out.println(value);
}
else {
Fault fault = resp.getFault();
System.err.println("Generated fault!");
}
}
catch (Exception e) {
e.printStackTrace();
}
Compare this to a CORBA invocation in Java:
try {
org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init(args,null);
org.omg.CORBA.Object rootObj = orb.resolve_initial_references("NameService");
NamingContextExt root = NamingContextExtHelper.narrow(rootObj);
org.omg.CORBA.Object object = root.resolve(root.to_name("AcmeMyService"));
MyService myService = MyServiceHelper.narrow(object);
int ret = myService.sayHelloTo("Mark");
} catch (MyServiceException e) {
System.err.println("Generated fault!");
} catch (Exception e) {
e.printStackTrace();
}
---
In God we Trust (all others must submit a X.509 certificate)
|
| |
|
|
|