发表于: 2017-05-30 23:36:35
1 1237
今天完成的事情:
tuscany jar包官网下载链接:

浏览器下载比较慢,强力推荐复制连接迅雷下载。
tuscany的例子是师兄推荐的,百度一搜,看了下tuscany的例子很少,看到的都是相似的例子

ClaculatorServerClient类:
public class CalculatorServerClient {
public static void main(String[] args) throws IOException {
Node node = NodeFactory.newInstance().createNode("Calculator.composite");
node.start();
System.out.println("server启动");
ICalculator c = node.getService(Calculator.class,"CalculatorServiceComponent");
System.out.println("3 + 2 = "+c.add(3, 2));
System.out.println("3 - 2 = "+c.subtract(3, 2));
System.out.println("3 * 2 = "+c.multiply(3, 2));
System.out.println("3 / 2 = "+c.divide(3, 2));
}
}
public static void main(String[] args) throws IOException {
Node node = NodeFactory.newInstance().createNode("Calculator.composite");
node.start();
System.out.println("server启动");
ICalculator c = node.getService(Calculator.class,"CalculatorServiceComponent");
System.out.println("3 + 2 = "+c.add(3, 2));
System.out.println("3 - 2 = "+c.subtract(3, 2));
System.out.println("3 * 2 = "+c.multiply(3, 2));
System.out.println("3 / 2 = "+c.divide(3, 2));
}
}
Calculator.composite文件

配置文件里面的implemention.java报错,问了师兄将jar包换成与师兄一样的2.0版本,但是还是不行,
信息: Loading contribution: file:/D:/Java/workspace/TuscanyTest/target/classes/
五月 30, 2017 11:55:58 下午 org.apache.tuscany.sca.builder.impl.ComponentBuilderImpl [Composite: {http://docs.oasis-open.org/ns/opencsa/sca/200912}, Component: CalculatorServiceComponent] (ReferenceNotFoundForComponentReference)
严重: [ASM50008] Component type reference not found for component reference: Component = CalculatorServiceComponent Reference = add
五月 30, 2017 11:55:58 下午 org.apache.tuscany.sca.builder.impl.ComponentBuilderImpl [Composite: {http://docs.oasis-open.org/ns/opencsa/sca/200912}, Component: CalculatorServiceComponent] (ReferenceNotFoundForComponentReference)
严重: [ASM50008] Component type reference not found for component reference: Component = CalculatorServiceComponent Reference = subtract
五月 30, 2017 11:55:58 下午 org.apache.tuscany.sca.builder.impl.ComponentBuilderImpl [Composite: {http://docs.oasis-open.org/ns/opencsa/sca/200912}, Component: CalculatorServiceComponent] (ReferenceNotFoundForComponentReference)
严重: [ASM50008] Component type reference not found for component reference: Component = CalculatorServiceComponent Reference = multiply
五月 30, 2017 11:55:58 下午 org.apache.tuscany.sca.builder.impl.ComponentBuilderImpl [Composite: {http://docs.oasis-open.org/ns/opencsa/sca/200912}, Component: CalculatorServiceComponent] (ReferenceNotFoundForComponentReference)
严重: [ASM50008] Component type reference not found for component reference: Component = CalculatorServiceComponent Reference = divide
Exception in thread "main" java.lang.IllegalStateException: org.oasisopen.sca.ServiceRuntimeException: [Composite: {http://docs.oasis-open.org/ns/opencsa/sca/200912}, Component: CalculatorServiceComponent] - [ASM50008] Component type reference not found for component reference: Component = CalculatorServiceComponent Reference = add
at org.apache.tuscany.sca.node.impl.NodeImpl.start(NodeImpl.java:178)
at com.jnshu.client.CalculatorServerClient.main(CalculatorServerClient.java:17)
Caused by: org.oasisopen.sca.ServiceRuntimeException: [Composite: {http://docs.oasis-open.org/ns/opencsa/sca/200912}, Component: CalculatorServiceComponent] - [ASM50008] Component type reference not found for component reference: Component = CalculatorServiceComponent Reference = add
at org.apache.tuscany.sca.node.impl.NodeFactoryImpl.analyzeProblems(NodeFactoryImpl.java:203)
at org.apache.tuscany.sca.node.impl.NodeFactoryImpl.configureNode(NodeFactoryImpl.java:315)
at org.apache.tuscany.sca.node.impl.NodeImpl.load(NodeImpl.java:202)
at org.apache.tuscany.sca.node.impl.NodeImpl.start(NodeImpl.java:118)
... 1 more
Process finished with exit code 1
明天计划的事情:
查看如何配置Tuscany和Spring。将原有的SpringRMI更改成Tuscany的RMI,web断更改成Tuscany的调用方式。
遇到的问题:
也就是上面提到的问题。
收获:
由于tuscany的例子比较少,还没有找比较好的例子来学习。还在摸索中。
评论