锘??xml version="1.0" encoding="utf-8" standalone="yes"?>伊人av综合网,中文字幕一二三区在线观看,免费污视频在线http://www.aygfsteel.com/paulwong/category/54652.htmlzh-cnWed, 24 Dec 2014 14:03:36 GMTWed, 24 Dec 2014 14:03:36 GMT60Tuscany 2 鐨勫熀鏈厤緗笌嫻佺▼http://www.aygfsteel.com/paulwong/archive/2014/12/24/421751.htmlpaulwongpaulwongWed, 24 Dec 2014 06:07:00 GMThttp://www.aygfsteel.com/paulwong/archive/2014/12/24/421751.htmlhttp://www.aygfsteel.com/paulwong/comments/421751.htmlhttp://www.aygfsteel.com/paulwong/archive/2014/12/24/421751.html#Feedback0http://www.aygfsteel.com/paulwong/comments/commentRss/421751.htmlhttp://www.aygfsteel.com/paulwong/services/trackbacks/421751.html瀹炰範鏈熼棿mentor璁╃湅鐪婽uscany——apache鐨勪竴涓《綰ч」鐩備箣鍓嶄竴鐩存病鏈夋帴瑙﹁繃錛屽惉mentor璇翠簡涓嬬敤閫旇繃鍚庯紝鎰熻鍏跺儚鏄痑libaba鐨勫垎甯冨紡鏈嶅姟妗嗘灦Dubbo錛岀畝瑕佺湅浜嗙湅錛屼技涔庡拰RMI涔熸湁鐩稿叧鎬с傛諱箣瀹冧篃鏄潰鍚戞湇鍔$殑鍒嗗竷寮忔鏋躲傜粡榪囦竴涓嬪崍鐨勫皾璇曪紝鍙戠幇Tuscany 2鍜孴uscany 1榪樻槸鏈夋瘮杈冨ぇ鐨勪笉鍚岋紙API鏂歸潰銆佽璁℃濇兂娌℃湁娣卞叆鐮旂┒涓嶇煡閬擄級錛岀綉涓婂叧浜嶵uscany鐨勮祫鏂欎篃涓嶅錛屾墍浠ュ湪姝ゅ啓鏂囩珷mark涓涓嬨?/p>

Tuscany 1鐨凙PI鍙傝冭繖浣嶅崥涓?a target="_blank" style="color: #336699; text-decoration: none;">http://blog.csdn.net/ajun_studio/article/details/7770023


1. 鍑嗗

棣栧厛鏄湪宸ョ▼涓紩鍏uscany 2.0.1鐨刯ar鍖咃紝浠庝竴涓狝pache鐨凜hina闀滃儚涓婁笉闅炬壘鍒幫紙PS錛歍uscany 1鍦ㄥ畼緗戜笂宸茬粡涓嶇淮鎶や簡錛夈?/p>

宸ョ▼闇瑕佸疄鐜板鎴風璋冪敤榪滅▼鏈嶅姟鍣ㄧ鐨勬湇鍔$殑鍔熻兘銆傝欏圭洰涓皟鐢ㄨ繙紼嬪畬鎴?#8220;鍔?#8221;鐨勫姛鑳姐?/p>


2. 鍏ラ棬

棣栧厛娣誨姞IAdd鎺ュ彛

package com.ajun.tuscany.server;  
  
public interface IAdd {  
    double add(double n1,double n2);  
}  
鐒跺悗鏄疄鐜扮被Add

package com.ajun.tuscany.server;  
  
public class Add implements IAdd {  
  
    @Override  
    public double add(double n1, double n2) {  
        // TODO Auto-generated method stub  
        return n1 + n2;  
    }  
  
鍔犲噺涔橀櫎閮藉睘浜?#8220;璁$畻”綾伙紝姝ゅ涓轟簡綆渚匡紝鍙疄鐜?#8220;鍔?#8221;鏂規硶銆傜劧鍚庢槸“璁$畻”鐨勬帴鍙c?/span>

package com.ajun.tuscany.server;  
  
public interface ICalculator {  
    double add(double n1, double n2);  
}  
鐒跺悗鏄?#8220;璁$畻”鐨勫疄鐜幫紝娉ㄦ剰涓瀹氳鍦╯etter涓姞鍏Reference錛屽惁鍒欎細鎶ラ敊錛岃繖閲岀被浼間簬Spring鐨勬敞鍏ャ?/span>

package com.ajun.tuscany.server;  
  
import org.oasisopen.sca.annotation.Reference;  
  
public class Calculator implements ICalculator {  
  
    private IAdd add;  
  
    public IAdd getAdd() {  
        return add;  
    }  
  
    @Reference  
    public void setAdd(IAdd add) {  
        this.add = add;  
    }  
  
    @Override  
    public double add(double n1, double n2) {  
        // TODO Auto-generated method stub  
        return this.add.add(n1, n2);  
    }  
  
}  
鍒版錛屽熀鏈殑涓氬姟閫昏緫綾誨氨緙栧啓濂戒簡錛屾帴涓嬫潵錛屾槸Tuscany涓噸瑕佺殑閰嶇疆鏂囦歡錛屽嵆XXX.composite錛屽叾鏈川涔熸槸涓涓獂ml銆傚鏋滀笉鏄潰鍚戝垎甯冨紡鏈嶅姟錛岃xml鏂囦歡緇撴瀯綾諱技Spring鐨刟pplication.xml銆備笅闈㈡槸Calculator.composite錛屾敞鎰忛厤緗枃浠朵腑reference錛宯ame鏍囪涓篴dd錛屽簲璇ヤ篃鏄悓Spring鐨勫ぇ鍐欓瀛楁瘝瑙勫垯錛岄氳繃settrt娉ㄥ叆銆?/span>

<?xml version="1.0" encoding="UTF-8"?>           
<composite xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912"  
           xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.1"  
           targetNamespace="http://sample"  
           xmlns:sample="http://sample"  
           xmlns:scallop="http://scallop/xmlns/sca/1.1"   
           name="Calculator" >    
      
    <component name="CalculatorServiceComponent">    
        <implementation.java class="com.ajun.tuscany.server.Calculator" />  
        <reference name="add" target="AddComponent"/>     
    </component>    
          
    <component name="AddComponent">    
        <implementation.java class="com.ajun.tuscany.server.Add" />    
    </component>    
      
</composite>   

鏈鍚庢槸榪愯main鐨勭被

package com.ajun.tuscany.server;  
  
import org.apache.tuscany.sca.node.Node;  
import org.apache.tuscany.sca.node.NodeFactory;  
  
public class StartService {  
  
    public static void main(String[] args) {  
        Node node = NodeFactory.newInstance().createNode(  
                "Calculator.composite");  
        node.start();  
        System.out.println("service鍚姩");  
        ICalculator c = node.getService(Calculator.class,  
                "CalculatorServiceComponent");  
        System.out.println(c.add(2, 2));  
    }  
  
榪愯杈撳嚭濡備笅

2014-11-10 17:39:24 org.apache.tuscany.sca.node.impl.NodeFactoryImpl loadContributions
淇℃伅: Loading contribution: file:/E:/HuRanjie/EclipseWorkspace/Calculatoer_01/bin/
2014-11-10 17:39:24 org.apache.tuscany.sca.host.rmi.DefaultRMIHost registerService
淇℃伅: RMI service registered: rmi://127.0.0.1:8099/CalculatorRMIService
2014-11-10 17:39:24 org.apache.tuscany.sca.core.assembly.impl.DomainRegistryImpl addEndpoint
淇℃伅: Add endpoint - binding.rmi - rmi://127.0.0.1:8099/CalculatorRMIService
2014-11-10 17:39:24 org.apache.tuscany.sca.core.assembly.impl.DomainRegistryImpl addEndpoint
淇℃伅: Add endpoint - binding.sca - AddComponent/Add
service鍚姩
4.0


3. 榪滅▼璋冪敤rmi

涓婇潰騫舵病鏈夊皢“璁$畻”綾諱綔涓轟竴涓湇鍔★紝鏆撮湶緇欒繙紼嬭皟鐢紝鍙槸瀹炵幇浜嗘湰鍦扮殑瑁呴厤銆備笅闈㈠皢鍏朵綔涓烘湇鍔$粰榪滅▼璋冪敤錛屽悗闈㈠彲浠ョ湅鍒幫紝鍙渶瑕佹毚闇蹭竴涓寘鎷琱ost銆乸ort銆乻erviceName


棣栧厛錛屼慨鏀歸厤緗枃浠訛紝淇敼涓哄涓嬫牱瀛?#8212;—鍦ㄦ湰鍦幫紙127.0.0.1錛夌殑8099绔彛鏆撮湶鍑哄悕瀛椾負CalculatorRMIService鐨勬湇鍔?/p>

<?xml version="1.0" encoding="UTF-8"?>           
<composite xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912"  
           xmlns:tuscany
="http://tuscany.apache.org/xmlns/sca/1.1"  
           targetNamespace
="http://sample"  
           xmlns:sample
="http://sample"  
           xmlns:scallop
="http://scallop/xmlns/sca/1.1"   
           name
="Calculator" >    
      
    <component name="CalculatorServiceComponent">    
        <implementation.java class="com.ajun.tuscany.server.Calculator" />  
          
        <service name="Calculator">    
            <interface.java interface="com.ajun.tuscany.server.ICalculator"/>    
            <tuscany:binding.rmi uri="rmi://127.0.0.1:8099/CalculatorRMIService"/>    
        </service>  
          
        <reference name="add" target="AddComponent"/>     
    </component>    
          
    <component name="AddComponent">    
        <implementation.java class="com.ajun.tuscany.server.Add" />    
    </component>    
      
</composite>   

鏈嶅姟鍣ㄧ鐨刴ain涓昏鍔熻兘鏄惎鍔ㄨ鏈嶅姟錛屽涓?/p>

package com.ajun.tuscany.server;  
  
import org.apache.tuscany.sca.node.Node;  
import org.apache.tuscany.sca.node.NodeFactory;  
  
public class StartService {  
  
    public static void main(String[] args) {  
        Node node = NodeFactory.newInstance().createNode(  
                "Calculator.composite");  
        node.start();  
        System.out.println("service鍚姩");  
    }  
  

瀹㈡埛绔氳繃rmi璋冪敤鏈嶅姟鍣ㄧ鐨勬湇鍔★紝鏉ュ疄鐜板姛鑳斤紝濡備笅

package com.ajun.tuscany.client;  
  
import java.rmi.Naming;  
import com.ajun.tuscany.server.ICalculator;  
  
public class CalculatorClient {  
  
    public static void main(String[] args) throws Exception {  
         ICalculator c= (ICalculator) Naming.lookup("http://127.0.0.1:8099/CalculatorRMIService");    
         System.out.println(c.add(1, 2));    
    }  
}  

鍚姩鏈嶅姟绔緭鍑?/p>


2014-11-10 18:00:30 org.apache.tuscany.sca.node.impl.NodeImpl start
淇℃伅: Starting node: http://tuscany.apache.org/sca/1.1/nodes/default0 domain: default
2014-11-10 18:00:30 org.apache.tuscany.sca.node.impl.NodeFactoryImpl loadContributions
淇℃伅: Loading contribution: file:/E:/HuRanjie/EclipseWorkspace/Calculatoer_01/bin/
2014-11-10 18:00:31 org.apache.tuscany.sca.host.rmi.DefaultRMIHost registerService
淇℃伅: RMI service registered: rmi://127.0.0.1:8099/CalculatorRMIService
2014-11-10 18:00:31 org.apache.tuscany.sca.core.assembly.impl.DomainRegistryImpl addEndpoint
淇℃伅: Add endpoint - binding.rmi - rmi://127.0.0.1:8099/CalculatorRMIService
2014-11-10 18:00:31 org.apache.tuscany.sca.core.assembly.impl.DomainRegistryImpl addEndpoint
淇℃伅: Add endpoint - binding.sca - AddComponent/Add
service鍚姩

瀹㈡埛绔緭鍑?br />
3.0


paulwong 2014-12-24 14:07 鍙戣〃璇勮
]]>
SOA璧勬簮http://www.aygfsteel.com/paulwong/archive/2014/12/23/421696.htmlpaulwongpaulwongTue, 23 Dec 2014 15:53:00 GMThttp://www.aygfsteel.com/paulwong/archive/2014/12/23/421696.htmlhttp://www.aygfsteel.com/paulwong/comments/421696.htmlhttp://www.aygfsteel.com/paulwong/archive/2014/12/23/421696.html#Feedback0http://www.aygfsteel.com/paulwong/comments/commentRss/421696.htmlhttp://www.aygfsteel.com/paulwong/services/trackbacks/421696.html妗f欏圭洰鏋舵瀯鏂囨。SOA鎼緩榪囩▼
http://www.open-open.com/doc/view/54781005211b45fda0c15a44110efeaf


澶х敤鎴烽噺涓嬬殑緋葷粺鏋舵瀯(SOA)
http://www.open-open.com/doc/view/2def65d401e949c1b8fe3bc306701234

paulwong 2014-12-23 23:53 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 哈密市| 清镇市| 台江县| 喜德县| 鄯善县| 阜阳市| 平果县| 获嘉县| 博爱县| 尼木县| 新巴尔虎左旗| 湘潭市| 高雄市| 泰顺县| 麻江县| 阿图什市| 孝义市| 仁化县| 横山县| 徐州市| 郎溪县| 长治县| 兰溪市| 辽宁省| 潼关县| 河北区| 长白| 白朗县| 临泉县| 富蕴县| 庆城县| 江津市| 沁水县| 甘孜县| 富宁县| 肥西县| 浦北县| 左贡县| 西安市| 曲靖市| 彭州市|