Tuscany与Spring集成示例

来源:互联网 发布:最新手机淘宝版本开店 编辑:程序博客网 时间:2024/06/09 23:35

使用maven创建tuscany-quickstart项目,其实就是maven web项目,主要是使用自动生成的架构,如下所示


maven引用如下


hello.composite配置文件如下

<?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://st"           name="st">        <component name="HelloComponent">        <implementation.spring location="applicationContext.xml"/>    </component></composite>

spring配置文件applicationContext.xml如下,注意为了能够支持SCA标签,需要添加域名空间。但是http://www.springframework.org/schema/sca现在访问不到,会导致该文件报错,但不影响运行。

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"       xmlns:sca="http://www.springframework.org/schema/sca"       xsi:schemaLocation="       http://www.springframework.org/schema/beans        http://www.springframework.org/schema/beans/spring-beans.xsd       http://www.springframework.org/schema/sca        http://www.osoa.org/xmlns/sca/1.0/spring-sca.xsd"><sca:service name="HelloService" target="HelloServiceImpl" /><bean id="HelloServiceImpl" class="st.HelloServiceImpl" /></beans>
类和web.xml文件跟Tuscany发布Web Service示例这篇博客里的一样,注意项目名和包名可能不一致,按实际情况修改。将项目部署于tomcat下运行,测试如下

package test;import org.apache.tuscany.sca.TuscanyRuntime;import org.apache.tuscany.sca.Node;import org.oasisopen.sca.NoSuchServiceException;import st.HelloService;public class HelloTest {public static void main(String[] args) throws NoSuchServiceException {Node node = TuscanyRuntime.runComposite("hello.composite","target/classes");try {HelloService service = node.getService(HelloService.class,"HelloComponent");System.out.println(service.sayHello("World"));} finally {node.stop();}}}


原创粉丝点击