该产品提供了支持服务组件体系结构 (SCA) 规范的样本文件。您可以在业务级应用程序中使用这些样本 SCA 文件。SCA 服务打包在您作为资产导入到产品存储库的 Java 归档 (JAR) 文件中,然后将其作为组合单元添加到业务级应用程序中。在 readme.html 文件中,每个样本都包括详细的部署指示信息。
使用时应满足的先决条件
WebSphere® Application Server V8.5
要点: 针对 WebSphere Application Server V8.5 测试了 Oasis 样本。针对 WebSphere Application Server V8.0 和 V8.5 测试了所有其他样本。
下载样本
要使用这些样本,请从产品下载站点下载 SCA 样本文件:
- 选择下列其中一种方法将 SCA.zip 文件下载到工作站上的某个目录中:FTP 或 HTTP。您可以在工作站上创建 /samples/sca 目录路径,然后将 SCA 样本文件下载到该目录路径。
- 从所显示的对话框中,指定用于保存压缩文件的目标目录,然后单击确定。
SCA.zip 压缩文件中包含采用以下目录结构的样本文件:
/CandyStore
/common
/HelloJee
/helloworld-ws-asynch
/helloworld-ws-asynch_Oasis
/installableApps
/installableApps_Oasis
/jms
/jms_Oasis
/jobbankejb
/jobbankejb_Oasis
/MultiService
/MultiService_Oasis
/MyBank
/MyBank_Oasis
readme.html
notices.txt
注意: readme.html 文件中包含有关安装和运行此样本的信息。
必须将 SCA 样本文件作为业务级应用程序的资产部署到已对 Feature Pack for SCA 启用的 V8.5 服务器或集群或者 V7.0 目标。/installableApps 目录中包含预先构建的归档,您可以将这些归档作为资产来部署。其他目录中包含特定于样本的源文件、脚本以及有关构建可部署归档的指示信息。
样本描述
- CandyStore(仅适用于 OSOA)
- CandyStore.jar 文件使用缺省绑定、Web Service 绑定和 EJB 绑定,并说明了使用递归模型以及基于缺省绑定的认证和授权。此样本说明了使用自底向上方法(从 Java 到 WSDL)和自顶向下方法(从 WSDL 到 Java)来开发 SCA 应用程序。
可以将预先构建的 CandyStore.jar 文件部署在 /installableApps 目录中,或者构建可部署的 JAR 文件。
有关 CandyStore 中的 10 个组合体的描述以及有关部署的详细信息,请参阅 /CandyStore/documentation/readme.html。
- HelloJee(仅适用于 OSOA)
- 此样本说明了如何在 Java Platform, Enterprise Edition (Java EE) 组件中使用 SCA 注释,以便这些组件可以使用 SCA 服务。Java EE 应用程序可以利用 SCA 编程模型,只需对应用程序实现代码稍作更改或者不更改。此样本使用 implementation.jee 定义,从而支持将 Java EE 归档作为 SCA 组件实现。此样本有一个不包含 SCA 工件的 Java EE 归档,还有一个具有用于定义 SCA 组合体和组件的组合体定义文件的 Java EE 归档。这些组件使用 implementation.ejb 和 implementation.web 定义。它说明了如何将 EJB 服务作为 SCA 服务来公开,以及访问无状态会话 Bean 和 Servlet 中的引用和属性注释的注入值。
可以将预先构建的 HelloJeeEar.ear、HelloJeeEnhancedEar.ear 和 HelloJeeSca.jar 文件部署在 /installableApps 目录中,或者构建可部署的文件。
有关部署的详细信息,请参阅 /HelloJee/documentation/readme.html,或者参阅有关使用现有 Java EE 模块和组件作为 SCA 实现的主题。
- helloworld-ws-asynch (helloworld-ws-asynch_Oasis)
- 此样本使用 Web Service 和异步转换程序服务。此样本有三个可部署的归档:客户机 helloworld-ws-client-asynch.war 和两个 Web Service helloworld-ws-asynchclient.jar 和 helloworld-ws-asynch.jar。客户机使用 Java ServerPages (JSP) 文件来获取 SCA 组合体上下文以及通过 SCA 缺省绑定来调用 HelloWorldClient 服务。然后,客户机服务通过 Web Service 绑定来调用 HelloWorld 服务。调用此服务之后,此服务会回调客户机服务。客户机 JSP 将等待 5 秒钟以完成回调,然后显示回调结果。
可以将预先构建的 helloworld-ws-asynch.jar、helloworld-ws-client-asynch.war 和 helloworld-ws-asynchclient.jar 文件部署在 /installableApps 目录中,或者构建可部署的文件。
有关 JAR 文件的描述以及有关部署的详细信息,请参阅 /helloworld-ws-asynch/documentation/readme.html。有关将 helloworld-ws-asynch.jar 文件部署在业务级应用程序中的详细指示信息,请参阅信息中心中的“示例:使用控制台创建 SCA 业务级应用程序”以及“示例:使用脚本编制创建 SCA 业务级应用程序”。
- JMS (JMS_Oasis)
- JMS 样本说明了如何使用 Java 消息服务 (JMS) 客户机来调用 SCA 组件服务。有三个 JMS 绑定样本:
- TwoWay,它提供了一个返回值的双向方法
- TwoWay-OneWay,它提供了一个通过单向方法来调用 LoggingService 的双向方法,以将消息记录到服务器 SystemOut 文件中
- TwoWay-OneWay-Callback,它提供了一个回调 HelloServiceComponent POJO 组件的单向方法
JMS 绑定样本还随附了一个 POJO 组件和一个瘦客户机:
- HelloServiceComponent,这是一个简单的 POJO 组件,它通过 JMS 服务绑定来接收 JMS 消息,运行 POJO 组件方法,然后将结果作为响应消息返回给调用者
- thinClient,这是一个打包在 jms-client.jar 文件中的非 SCA 的 JMS 客户机,它通过向 JMS 消息提供程序发送 JMS 消息来调用 POJO HelloService SCA 服务
可以将预先构建的 jms-callback-service.jar、jms-twoway-oneway-service.jar 和 jms-twoway-service.jar 文件部署在 /installableApps 目录中,或者构建可部署的文件。
有关构建 JMS 样本工件、为样本创建 JMS 资源以及部署样本的详细信息,请参阅 /jms/documentation/readme.html。
- JobbankTargetEJBApp (JobbankTargetEJBApp_Oasis)
- 此样本说明了 Java EE 客户机 JobbankClientApp.ear 可以如何使用远程 EJB 服务绑定调用 SCA 组件 jobbankejb.jar 以及一个具有 EJB 引用绑定的组件可以如何调用 JobbankTargetEJBApp.ear 中的远程外部 EJB。无状态会话 Bean 绑定是一个协议绑定,它能够将 SCA 与基于 EJB 的服务进行集成。SCA 支持位于 jobbankejb.jar 中。
可以将预先构建的 JobbankClientApp.ear、jobbankejb.jar 和 JobbankTargetEJBApp.ear 文件部署在 /installableApps 目录中,或者构建可部署的文件。
有关这些文件的描述以及有关部署的详细信息,请参阅 /jobbankejb/documentation/readme.html。
- MultiService (MultiService_Oasis)
- 此样本说明了使用现有服务的服务组合。MultiService 样本连接至若干现有样本:
- Stock Quote,WebServicesSamples.ear
- HelloWorldAsync,helloworld-ws-asynch.jar
- JobbankTargetEJBApp,JobbankTargetEJBApp.ear
- EJB 计数器,EJB3CounterSample.ear
可以将预先构建的 Multiservice.jar、MultiService.war、helloworld-ws-asynch.jar 和 JobbankTargetEJBApp.ear 文件部署在 /installableApps 目录中,或者构建可部署的文件。
您可以将预先构建的 WebServicesSamples.ear 和 EJB3CounterSample.ear 文件部署在 /installableApps 目录中。
此样本中还有一个选项,允许您将 SCA 服务作为具有 SDO 数据绑定的 OSGi 应用程序来实现。
有关部署的详细信息,请参阅 /MultiService/documentation/readme.html。
- MyBank (MyBank_Oasis)
- 此样本说明了如何采用自顶向下方法来创建一个使用 JAXB 的 SCA 应用程序。可使用 AccountService.wsdl 来生成用于提供 XML 文件与 Java 文件之间的数据绑定的 JAXB 类。然后,使用客户端 WAR 文件中的引用来通过 Web Service 绑定连接至帐户服务。
还有一个选项,允许您将 SCA 服务作为具有 SDO 数据绑定的 OSGi 应用程序来实现。
可以将预先构建的 mybank-accountservice.jar 和 mybank-client.war 文件部署在 /installableApps 目录中,或者构建可部署的文件。
有关部署的详细信息,请参阅 /MyBank/documentation/readme.html。