用JSP调用以Web应用形式部署在Tomcat 5.5中的SCA服务组件的例子

js|web

Composite是部署的基本单元。在装配文件中,composite元素是根元素。

composite元素可以包含composite、service、component、reference等其他元素,component是非常重要的元素。

component元素可以包含0...n个Service,Reference,property 和0...1个implementation。

实现component中的implementation的方式可以有Java、BPEL、Composite等,如下图。

在这个例子中,就是使用Composite方式实现composite中包括的component的implementation。

在基于Web应用的SCA服务组件的装配文件中,是这样表示composite实现component的。

文件名为default.scdl

<?xml version="1.0" encoding="UTF-8"?>
<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
           name="CalculatorComposite">

    <component name="CalculatorServiceComponent">
        <implementation.composite name="CalculatorComposite" jarLocation="lib/sample-calculator-1.0-incubator-M2.jar"/>
    </component>
</composite>
在发布的web应用目录的WEB-INF中,有一个lib目录,里面保存着运行SCA应用运行需要的环境,也包括包含着当前web应用需要的代码和装配文件组成的jar包 sample-calculator-1.0-incubator-M2.jar 。这个jar包的内容就是前面举例(Tuscany SCA以独立应用方式运行的简单例子 )使用的jar包,通过default.scdl应用装配文件加载到运行环境中。

与可独立运行的SCA服务组件不同的是,web应用服务组件环境的建立和装配过程是通过web.xml中servlet的组件listener和filter来完成的。

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
         xmlns="http://java.sun.com/xml/ns/j2ee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >

    <display-name>Apache Tuscany Simple Webapp Sample</display-name>

    <welcome-file-list id="WelcomeFileList">
        <welcome-file>calc.jsp</welcome-file>
    </welcome-file-list>

    <filter>
        <filter-name>TuscanyFilter</filter-name>
        <filter-class>org.apache.tuscany.runtime.webapp.TuscanyFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>TuscanyFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

    <listener>
        <listener-class>org.apache.tuscany.runtime.webapp.TuscanyContextListener</listener-class>
    </listener>
</web-app>
web服务启动后,可以通过jsp访问SCA服务组件。

calc.jsp

<%@ page import="calculator.CalculatorService" %>
<%@ page import="org.osoa.sca.CompositeContext" %>
<%@ page import="org.osoa.sca.CurrentCompositeContext" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
    CompositeContext context = CurrentCompositeContext.getContext();
    CalculatorService calc = context.locateService(CalculatorService.class, "CalculatorServiceComponent");
%>
<html>
<head><title>Calculator sample</title></head>

<body>
<table>
    <tr>
        <th>Expression</th><th>Result</th>
    </tr>
    <tr>
        <td>2 + 3</td><td><%= calc.add(2, 3) %></td>
    </tr>
    <tr>
        <td>3 - 2</td><td><%= calc.subtract(3, 2) %></td>
    </tr>
</table>
</body>
</html>
<END>

时间: 2024-12-10 00:12:50

用JSP调用以Web应用形式部署在Tomcat 5.5中的SCA服务组件的例子的相关文章

请教在eclipse下开发web工程并部署到tomcat而weapp下的内容没有更新

问题描述 请教在eclipse下开发web工程并部署到tomcat而weapp下的内容没有更新是什么原因? 解决方案 解决方案二:rpwt,手工copy过去.可能重启eclipse就好了解决方案三:工具配置的不对吧,3.5以上好像自己有tomcat解决方案四:怎么配?解决方案五:我现在只能手工copy了,但总部是个办法啊解决方案六:或者修改context.xml(conf/Catalina/localhost/xxxx.xml)把docBase====>开发目录???解决方案七:部署不一定要弄在

eclipse部署web项目至本地的tomcat但在webapps中找不到

一.发现问题 在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好代码后选择Run on Server,但运行后发现在tomcat的安装目录下的webapps并没有出现所建立的工程名字.   二.验证 很明显项目并没有自动部署到Tomcat的Webapps中而是部署在了别的容器中.在内置浏览器中输入http://localhost:8080/webDemo/login.jsp可正常打开.但在外部浏览器上打开http://localhost:8080时确没有

导入个web项目,想在里面写入新的类扩展它的功能,部署到tomcat里运行,没有感应到新写的类,找不到java或class文件,以前的类就会在tomcat编译?

问题描述 今天遇到导入个web项目,想在里面写入新的类扩展它的功能,新建的类,写完了,部署到tomcat里,发现没有感应到新写的类,找不到java和对象的class文件,在work文件夹里和classes文件夹,都找不到新写的类,以前有的类就会在tomcat编译.够郁闷的,没法调.我的其他web项目是可以的.我的工具和环境应该没问题.别人写的,编译的运行都是1.6jdk的.tomca也是用6的,我的也是一样.我的myeclipse是10.6,实在想不出来是哪里错了.唉,郁闷.求解. 解决方案 解

用JSP实现基于Web的RSS阅读器

js|rss|web 一: RSS介绍 根据维基百科(http://zh.wikipedia.org/wiki/RSS)的定义,"RSS是一种用于共享新闻和其他Web内容的数据交换规范 ",它是一系列的规范的组合,采用XML格式.目前国内RSS应用最多的是在新闻网站和博客网站上. 许多网站可以用RSS阅读器来个性化自己的网页,比如显示最新的新浪新闻,显示自己好朋友最新的博客文章,显示最新的Google论坛内容.除此之外,利用RSS阅读器还可以实现其它用途,比如: 获得天气预报 接收邮件

Linux 下安装支持 JSP/PHP 的 WEB server

js|server|web 0. 综述\r0.1 目标\r在 Linux 平台上安装一个支持 SSL.URL 重写.反向代理.页面压缩.CGI.PHP.JSP 的 免费 WEB 服务器\r 0.2 许可协议\rGNU Free Documentation License http://www.gnu.org/licenses/fdl.html允许任意转载,但请保持本文档的完整性如有修改,务请通知作者 0.3 作者钝刀 webmaster@yufeng.net 1. 下载1.1 Apache ht

如何建立JSP操作用以提高数据库访问效率

从服务器端促进程序快速开发的Java Server Pages (JSP)决定它成为一种广为流行的工具.虽然呆板的一面仍然存在,然而无论它包含多少缺点,JSP能够为Web程序设计者提供很多东西,尤其是与数据库的输入和输出操作与数据的处理. 通过JSP来进行数据库访问不需要太多的引导.问题是如何使开发者能够接受Web程序的数据库访问比传统的本地OLAP系统的数据库访问更加具有吸引力,并且使他们认识到,整洁和简要的数据访问方法才是关键的.在这一点上,JSP可以很好地解决. 你能够做哪些? 如果你正在

web and jmf-WEB项目中导入JMF jar包部署到tomcat上出错

问题描述 WEB项目中导入JMF jar包部署到tomcat上出错 错误信息如下: 解决方案 Eclipse部署Java Web项目到Tomcat出错 解决方案二: 违规访问造成的.换一个低版本的包试试

web项目在eclipse中运行正常 部署到tomcat中运行报spring context错误

问题描述 web项目在eclipse中运行正常 部署到tomcat中运行报spring context错误 20C 解决方案 quatrz配置有问题参考:http://blog.csdn.net/kingzuo/article/details/12572881http://www.cnblogs.com/kay/archive/2007/11/02/947372.html

Office Web Apps安装部署

尝试安装成功office web apps 就不重复过程了 参照以下文章即可, 转载自:http://www.cnblogs.com/poissonnotes/p/3238238.html 我安装的环境是在虚拟机win2008上安装的,需要安装两个虚拟机,一台安装作为域控制器,另一台安装office web apps ,需要加入到域才能成功安装,但使用的时候可以不需要启动域控制器,也就是域控制器在安装完office web apps后就可以不用了. Office Web Apps安装部署(一)