访问样本
该产品提供了样本来说明常见企业应用程序任务。 许多样本还提供了有关部署和编写示例代码的指示信息。
使用命令行部署样本
要使用命令行部署样本,请完成以下步骤:
- 使用有效凭证登录到主机。
- 进入您的 应用服务器根目录/bin 目录。
转到 /opt/IBM/WebSphere/AppServer/bin/ 目录。
- 运行 wsadmin 以安装应用程序;例如:
./wsadmin.sh -profileName AppSrv01 -lang jython -c "AdminApp.install('/opt/sample.javaee7.websocket.war', '[ -MapWebModToVH [[ .* .* default_host ]] -appname sample.javaee7.websocket]')"
使用集成解决方案控制台部署样本
要使用集成解决方案控制台部署样本,请完成以下步骤:
- 在首选浏览器中,转至集成解决方案控制台;例如,
http://hostname:9060/ibm/console/ - 使用您的用户名和密码登录。
- 选择 。
- 选择新建企业应用程序链接。
- 使用本地文件系统选项时,单击浏览,并选择从 GitHub 下载的文件。
- 单击下一步以使用缺省选项遵循向导,直到显示完成按钮。
- 显示“确认更改”部分时,单击保存。
- 单击 。
- 选中样本应用程序旁的复选框,并单击启动。
- 使用浏览器访问主页;例如:
http://hostname:9080/sample_name/
可用的样本
访问以下精选示例, GitHub。
- sample.javaee7.websocket
- 这些网络套接字示例 GitHub 演示了如何使用注释或编程方式设置 WebSocket 端点。 使用这些样本,可实践体验打开和关闭 WebSocket 连接以及对其进行读写操作。 还显示如何使用编码器、解码器和 PathParam 注释以及执行 Pong 消息处理。
- sample.javaee7.el30
- 这个应用程序 GitHub 展示了如何使用EL 3.0 (表达式语言)的一些新功能。 针对使用 lambda 表达式、并置和新操作符提供了示例。 此外,它提供了独立 Servlet 的简单样本,此 Servlet 显示了在未使用 JavaServer Pages (JSP) 的情况下使用了 EL。
- sample.javaee7.servlet.nonblocking
这个应用程序 GitHub 演示了如何使用添加到 ServletInputStream 和 ServletOutputStream 的新API实现非阻塞I/O。 此示例包含 ReadListener 和 WriteListener 接口 API 的使用。
- sample.javaee7.sleepybatchlet
- 上昏昏欲睡的批处理示例使用了产品中JSR 352批处理参考实现。 GitHub 使用了JSR 352批处理参考实现。 此应用程序包含一个 batchlet 和一个批处理作业(在用户定义的秒数内休眠)。 每隔 1 秒,batchlet 会打印到控制台以显示其正在工作。 回绕批处理应用程序的是一个 Web 页面,此页面旨在提供更便捷、直观的机制来管理批处理执行。此样本需要您先创建资源,再部署应用程序。 完成以下步骤以创建所需资源:
- 验证是否存在 Derby JDBC 提供程序实例。 在管理控制台中,单击 。
- 如果不存在此提供程序,请使用实现类型连接池数据源创建一个,并指向 Derby .jar 文件,例如:${WAS_INSTALL_ROOT}/derby/lib
- 验证是否配置了缺省数据源实例。 单击 。
- (管理控制台)如果此数据源不存在,请使用名称缺省数据源和 JNDI 名称 DefaultDatasource(指向 Derby JDBC 提供程序和 "${WAS_INSTALL_ROOT}/derby/DefaultDB" 数据库)创建一个。
- (命令行)使用 SSH 将虚拟机远程连接到 WebSphere 环境。 浏览至 ${WAS_INSTALL_ROOT}/derby/bin/embedded/。运行
./ij.sh。 看到提示ij>时,输入以下命令:
将在以下目录中创建缺省 Derby 数据库:${WAS_INSTALL_ROOT}/derby/DefaultDBconnect 'jdbc:derby:DefaultDB;create=true';
- 将 JVM 自变量添加到正在运行批处理样本的服务器。 单击 。 添加以下定制属性:
- com.ibm.ws.batch.DB_SCHEMA
- 值:BATCH
- com.ibm.ws.batch.JNDI_NAME
- 值:DefaultDatasource
- 配置环境后,使用提供的缺省值安装此应用程序:
- 应用程序启动后,在 /.../IBM/WebSphere/Profiles/DefaultAppSrv01/logs/server1 中打开 SystemOut.log 文件,并查找以下 URL:
http://hostname:9080/sample.javaee7.sleepybatchlet/。
- 验证是否存在 Derby JDBC 提供程序实例。 在管理控制台中,单击 。
- sample.javaee7.concurrency
- 这个应用程序 GitHub 演示了如何在简单的应用程序中利用托管执行程序、托管计划执行程序和上下文服务并行执行任务。
- sample.javaee7.jta
- 这个应用程序 GitHub 演示了如何使用@Transactional注释来声明式地控制事务边界,以及如何使用 @TransactionScoped 注释将bean生命周期限定为事务。
- sample.javaee7.jsonp
- JSONP 遵循 JSR 353 规范。 上的应用程序由五个Servlet组成,它们根据获取JSON代码的不同实现来解析和显示JSON数据。 GitHub 由五个Servlet组成,它们根据获取JSON代码的不同实现来解析和显示JSON数据。 Web UI 页面提供更便捷、更直观的方式来试用 JSON-P 功能。 JSONP 样本中的不同测试基于特殊 JSON 对象,这些对象便于实现基于 JSON 的功能,包括构造已转换为 JSON 格式的数据的复杂结构。
- sample.javaee7.jms
- 这个JMS示例 GitHub 使用了JMS的简化API 2.0。 此样本包含 2 个用于执行点到点和发布/预订消息传递的 Servlet。 JMS Servlet 提供了实现示例以将消息发送到队列或从队列接收消息,以及将消息发布到主题和从主题预订消息。必须先创建一些资源,再部署此应用程序。 您可以使用随此样本发布的配置脚本创建资源。
- 运行 app_server_root/bin 目录中的 createSIBusResources.py 脚本,以创建所需的资源。 在命令中提供 cell_name、node_name 和 server_name 值以及 sample.javaee7.jms.war 文件的路径:
./wsadmin.sh -f createSIBusResources.py cell_name node_name server_name path_to_file/sample.javaee7.jms.war - 如果服务器启用了安全功能,请从 app_server_root/bin 目录运行 addAuthAlias.py 脚本。 在命令中提供用户名和密码:
./wsadmin.sh -f addAuthAlias.py user_name password
- 运行 app_server_root/bin 目录中的 createSIBusResources.py 脚本,以创建所需的资源。 在命令中提供 cell_name、node_name 和 server_name 值以及 sample.javaee7.jms.war 文件的路径:
下载样本代码
您可以从 GitHub 资源库下载示例的源代码。
您还可以从 8.5 样本下载服务器下载 8.5.5 文档中的样本。 8.5.5 文档中提到的一些样本可从 8.0 样本下载服务器中获取。 下载内容包括源代码、构建说明和可部署文件,例如 /installableApps 目录中的 .ear 或 .war 文件。
样本的局限性
样本仅供演示。
所提供的代码并非用于在安全的生产环境中运行。 样本支持 Java 2 安全性,因此样本实现在受保护的系统资源(例如,文件 I/O)上检查许可权的基于策略的访问控制。
样本还支持管理安全性。
- 许多样本使用 Apache Derby 的可嵌入框架连接至 Apache Derby 数据库。 Apache Derby 的可嵌入框架有一个限制,即只允许一个 Java 虚拟机 (JVM) 访问数据库实例。 因此,在集群应用程序服务器环境中,由于第一台服务器 (JVM) 已经具有与该数据库实例的连接,节点中的第二台服务器就无法启动样本应用程序。
对于需要多个 Java 虚拟机访问同一个 Apache Derby 实例的应用程序,请使用 Apache Derby Network Server 框架。
更多样本和示例
- 教程中的样本
- 许多产品教程依赖于样本代码。 要查找演示特定技术的教程,请浏览 “教程”中的链接。
- 产品文档中的示例
- 产品文档包含许多代码段和示例。 要轻松找到这些示例,请查看您正在使用的 IBM Documentation 导航参考部分中产品版本的开发者示例。
IBM Telephone Directory
IBM Telephone Directory 业务应用程序与产品分开交付。 有关获取和使用 IBM 电话簿应用程序的信息,请参阅 IBM 电话簿 V5.2 ,该主题位于 IBM i 产品文档中的电子商务和网站服务部分。