如何使用 Oracle JDeveloper 10.1.3 创建简单的 ASK 应用程序
如何使用 Oracle JDeveloper 10.1.3 创建简单的 ASK 应用程序
本主题描述如何使用 JDeveloper 创建简单的 Ask 应用程序。这些应用程序将部署在 Ask Server 上,以使消息处理设备能够与 Web 应用程序交互。创建 Ask 应用程序时,JDeveloper 10.1.3 不提供设计时支持。但是,我们有类似的替代解决方案。
目录
- Ask 简介
- Ask 消息处理示例
- 使用 JDeveloper 创建简单的 Ask 应用程序
Ask 简介
Ask Server 是一个允许消息处理设备与 Web 应用程序交互的组件。顾名思义,它为消息处理设备的用户提供了一种获取信息的方式。
Ask Server 体系结构
Oracle Application Server Wireless 提供了一个框架和运行时环境,用于开发通过基于浏览器的设备(如具有 WAP 或 XHTML 浏览器的设备)或基于消息处理协议的设备(如具有 SMS 功能的移动电话)访问的无线和语音应用程序。Ask Server 是一个无线组件,可允许基于消息处理协议的设备访问这些无线应用程序。
按照惯例,进入应用服务器的入口点是通过 HTTP 协议。这就将在应用服务器上构建的应用程序限制为只能由具有 Web 功能的客户端使用。这个服务器限制对于移动市场用户来说是个问题,因为绝大多数移动用户都没有 Web 访问。但这些用户几乎都有某种消息功能(如电子邮件或 SMS)。随着 Ask Server 的引入,用户还可以通过 HTTP 以外的消息处理协议(如电子邮件或 SMS)访问应用程序。开发人员只需构建应用程序逻辑,Oracle Application Server Wireless 则负责建立正确的连接、执行会话管理以及解释用户请求。应用程序通过相同的方式调用,而不必考虑使用哪个协议处理传入的请求,从而为应用程序开发人员访问其服务提供了完全的透明度。
Ask 消息处理示例
以下是有关设备用户如何访问 Web 应用程序的示例。
要访问股票报价应用程序,具有支持 SMS 的电话的用户可以执行以下操作:
- 创建一个消息,并指定应用程序门户提供的目标地址(例如,223)。
- 在消息正文中指定文本 stk orcl。
注:文本 stk 是用于识别股票报价应用程序的缩写名称,orcl 是应用程序所需的参数。
随后,服务器会处理该消息,并通过另一条消息传回结果。
创建简单的 Ask 应用程序
本主题将引导您完成在 JDeveloper 中创建“Hello World”应用程序所需的步骤。您需要执行下列任务:
- 创建空白应用程序和项目
- 创建新的 JSF JSP 文件
- 创建 Java Bean
- 创建托管 Bean
- 将 ADF 组件添加到 JSF JSP 文件
- 测试 JSF JSP 文件
- 将呈现器工具包和视图处理器添加到 ADF Faces 配置
- 将 Ask 呈现器工具包实现和 ADF 共享添加到库中
- 创建部署配置文件
- 部署应用程序
创建空白应用程序和项目
创建应用程序和项目。
- 打开 New Gallery,方法是选择 File
New。
- 在 New Gallery 的 Categories 树中,选择 General。
- 在 Items 列表中,双击 Application。

- 在 Create Application 对话框中,输入 HelloApp 作为应用程序名称,然后单击 OK。

- 在 Create Project 对话框中,输入 HelloPrj 作为项目名称,然后单击 OK。

返回主任务列表
创建新的 JSF JSP 文件
创建 JSF JSP 文件。
- 在 Applications Navigator 中,右键单击刚创建的项目并选择 New。
- 在 New Gallery 中,展开 Web Tier 节点并选择 JSF 类别。
- 在 Items 列表中,双击 JSF JSP。

- 在 Welcome 页面上,单击 Next。
- 在 Web Application 页面上,选择 Servlet 2.4\JSP 2.0 (J2EE 1.4) 并单击 Next。
- 在 JSP File 页面上,选择 JSP Document,输入 Hello.jspx 作为文件名,然后单击 Next。

- 在 Component Binding 页面上,选择 Do Not Automatically Expose UI Components in a Managed Bean,然后单击 Next。
- 在 Error Page Options 页面上,单击 Next。
- 在 Tag Libraries 页面上,使用
按钮将 ADF Faces Components 和 ADF Faces HTML 从 Available Libraries 列表移到 Selected Libraries 列表,然后单击 Finish。

- 在 HTML Options 页面上,单击 Next。
- 在 Finish 页面上,单击 Finish 创建 JSF JSP 文件。
返回主任务列表
创建 Java Bean
创建一个 Java Bean,用于存储输入名称。
- 在 Applications Navigator 中,右键单击刚创建的项目并选择 New。
- 在 New Gallery 中,展开 General 节点并选择 JavaBeans 类别。
- 在 Items 列表中,双击 Bean。

- 在 Create Bean 对话框中,输入 HelloBean 作为名称,从 Extends 下拉列表中选择 java.lang.Object,然后单击 OK。

-
在 HelloBean.java 文件的源代码编辑器中,在 bean 构造函数后面添加以下代码:
public String getName() { return name; } public void setName(String name) { this.name = name; } private String name;

返回主任务列表
创建托管 Bean
在 ADF Faces 配置中创建一个托管 bean。
- 在 Applications Navigator 中,展开刚创建的项目下面的 Web Content 树。
- 展开 WEB-INF 树并选择 faces-config.xml 节点。
faces-config.xml 文件的结构将出现在 Structure 窗口中。

- 在 Structure 窗口中,右键单击 Faces Config 并选择 Insert inside Faces Config
managed-bean。
- 在 Create Managed Bean 对话框中,输入 Hello 作为名称,输入 mypackage.HelloBean 作为类,然后单击 OK。

- 在 Structure 窗口中,展开托管 bean 节点,然后右键单击 Scope。
- 选择 Insert after Scope
managed-property。
- 在 Create Managed Property 对话框中,输入 name 作为名称,输入 java.lang.String 作为类,然后单击 OK。

- 在 Structure 窗口中,右键单击托管属性节点,然后选择 Properties。
- 在 managed-property Properties 对话框中,输入 #{param.name} 作为值,然后单击 OK。

返回主任务列表
将 ADF 组件添加到 JSF JSP 文件
将 ADF 组件添加到 JSF JSP 文件。
- 在 Applications Navigator 中,双击 Hello.jspx。
- 在 Structure 窗口中,删除 jsp:output 和 html 节点。

- 右键单击 f:view 并选择 Insert inside f:view
ADF Faces HTML Html。
- 右键单击 afh:html 并选择 Insert inside afh:html
ADF Faces HTML Head。
- 右键单击 afh:head - Title 1 并选择 Properties。

- 在 Head Properties 对话框中,输入 Hello App 作为标题属性,然后单击 OK。

- 在 Structure 窗口中,右键单击 afh:html 并选择 Insert inside afh:html
ADF Faces HTML Body。
- 右键单击 afh:body 并选择 Insert inside afh:body
ADF Faces Core。
- 在 Insert ADF Faces Core Item 对话框中,选择 Form,然后单击 OK。

- 在 Structure 窗口中,右键单击 af:form 并选择 Insert inside af:form
ADF Faces Core。
- 在 Insert ADF Faces Core Item 对话框中,选择 OutputText,然后单击 OK。

- 在 Structure 窗口中,右键单击 af:outputText - outputText1 并选择 Properties。
- 在 OutputText Properties 对话框中,输入 Hello(后面带有一个空格)作为值属性,然后单击 OK。
注:后面带有一个空格是为了将静态输出文本 Hello 与将传递给应用程序的后续输出参数区分开。

- 在 Structure 窗口中,右键单击输出文本节点,并选择 Insert after af:outputText - Hello
ADF Faces Core。
- 在 Insert ADF Faces Core Item 对话框中,选择 OutputText,然后单击 OK。
- 右键单击 af:outputText - outputText2 并选择 Properties。
- 在 OutputText Properties 对话框中,删除默认值并单击 Bind。
- 在 Bind to Data 对话框的 Variables 导航树中,展开 JSF Managed Beans 和 Hello,然后选择 name。
- 单击
按钮,使用该变量创建一个 EL 表达式,然后单击 OK。

- 在 OutputText Properties 对话框中,单击 OK。

返回主任务列表
测试 JSF JSP 文件
测试运行应用程序。
- 选择 Run
Run Hello.jspx。 这将启动默认的 Web 浏览器,并显示文本 Hello(如果没有将参数值传递到该页面)。

- 将 ?name=John 追加到地址栏中的 URL,然后按 Enter 键。
现在,Web 浏览器将显示文本 Hello John。

返回主任务列表
将呈现器工具包和视图处理器添加到 ADF Faces 配置
将呈现器工具包配置到 faces-config.xml 中。
- 在 Applications Navigator 中,选择 faces-config.xml 节点。
faces-config.xml 文件的结构将出现在 Structure 窗口中。
- 在 Structure 窗口中,右键单击托管 bean 节点,并选择 Insert after managed-bean - Hello
render-kit。
- 在 Create Render Kit 对话框中,输入 oracle.adf.async 作为 ID,输入 oracle.adfinternal.view.faces.ask.renderkit.AsyncRenderKit 作为类,然后单击 OK。

- 在 Structure 窗口中,双击 application 节点。
- 在 application Properties 对话框中,输入 oracle.adfinternal.view.faces.ask.application.AsyncViewHandlerImpl 作为视图处理器。

返回主任务列表
将 Ask 呈现器工具包实现和 ADF 共享添加到库中
将 Ask 呈现器工具包实现添加到库中。
- 在 Applications Navigator 中,右键单击 HelloPrj 节点并选择 Project Properties。
- 在 Project Properties 对话框的导航树中,单击 Libraries。

- 在 Libraries 页面上,单击 Add Library。
- 在 Add Library 对话框中,单击 New。

- 在 Create Library 对话框中,单击 Add Entry。

- 在 Select Path Entry 对话框中,导航到 JDeveloper 主目录下的 wireless/lib,选择 ask-adf-faces-impl.jar,然后单击 Select。

- 在 Create Library 对话框中,单击 OK。
- 在 Add Library 对话框中,单击 New。
注:我们需要重复几个步骤来添加 ADF 共享库。

- 在 Create Library 对话框中,单击 Add Entry。
- 在 Select Path Entry 对话框中,导航到 JDeveloper 主目录下的 BC4J\lib,选择 adfshare.jar,然后单击 Select。

- 在 Create Library 对话框中,单击 OK。
- 在 Add Library 对话框中,单击 OK。
- 在 Project Properties 对话框中,单击 OK。

返回主任务列表
创建部署配置文件
为应用程序创建部署配置文件。
- 从主菜单中,选择 Run
Deploy New Deployment Profile。
- 在 New Gallery 中,展开 General 节点并选择 Deployment Profiles 类别。
- 在 Items 中,双击 WAR File。

- 在 Create Deployment Profile -- WAR File 对话框中,输入 HelloApp 作为名称,然后单击 OK。

- 在 WAR Deployment Profile Properties 对话框的导航树中,展开 File Groups 节点,展开 WEB-INF/lib 节点,然后选择 Contributors。
- 在 Contributors 页面上,选中 ADF Common Runtime、Adfshare.jar 和 Adfshare.jar 复选框,然后单击 OK。

返回主任务列表
部署应用程序
部署应用程序。
- 从主菜单中,选择 Run
Deploy 1 HelloApp.deploy。 系统将在项目目录的 deploy 目录下创建 HelloApp.war 文件。
您现在可以使用该 war 文件将应用程序部署到默认的 OC4J 服务器。
返回主任务列表
|