JavaServer Faces 工具 - 发行说明


1.0 局限性
   1.1 Faces Client:具有未绑定 Faces Client 组件的 Faces JSP 不能在服务器上运行
   1.2 Faces Client:如果具有 Faces Client 数据的 Faces JSP 文件是从包含整数、浮点、布尔或字符数据类型的空值的 WDO 创建的,那么它们就不能在 WAS 5.1 上运行
   1.3 Faces Client:在插入“设置已选的对象作为目标组件的根”事件处理程序后,重新命名目标组件标识
   1.4 文件上载和下载组件在 portlet 中不受支持
   1.5 Faces Client:在服务器上将行添加到绑定到关系记录列表(在数据图中深度为两层或更多层)的数据网格失败
   1.6 嵌套 dataTable 中的输入字段不能正确运行
2.0 已知问题
   2.1 将数据放入从页面模板派生的 Faces JSP 文件时出现问题
   2.2 Faces 资源迁移未更新 SDO 配置
   2.3 inputText 上的验证页面未正确更新
   2.4 Faces Client:为 EGL 创建客户机数据后发生编译错误:“不能使用二进制名称引用嵌套类型..”
   2.5 Faces Client:使用相同的模型名称来跨 portlet 对 WDO/SDO 页数据共享 Faces Client 数据模型并非总是起作用
   2.6 Faces Client:Faces Client 控制事件因为缺少 viewId 而不能在门户网站中正常工作
   2.7 Faces Client:饼图标注和标题在绘图中重叠。
   2.8 Faces Client:树形视图中的定制打开和关闭图标未显示在门户网站中
   2.9 Faces Client:绘图运行时 - 某些值在 y 轴刻度中重复
   2.10 Faces Client:X 轴标注字符可能在 GraphDraw 中被切断
   2.11 Faces Client:在按计划将各项添加至数据网格后未添加标题/脚注栏
   2.12 Faces Client:在网络中调用 Web Service 失败
   2.13 Faces Client:创建客户机数据时“问题”视图中出现警告(未使用的导入类警告)
   2.14 Faces Client:“不能将 Faces Client 组件放在 clientData 标记之前”错误消息的变通方法
   2.15 Faces Client:将树形视图放到源代码中
   2.16 将图像文件放入“选项卡式面板”组件中
   2.17 Faces Client:将目标从 WebSphere Application Server V5.1 重新定为 V6.0 后会产生一些问题,在遵循迁移指南中的步骤解决这些问题后,可能会出现“断开的链接”警告
   2.18 无法在使用内部浏览器时编辑丰富文本编辑器
   2.19 丢失页状态 - 不会提交表单
   2.20 Faces Client:绑定到关系记录列表而只包含一列的数据网格无法在服务器上运行
   2.21 Faces Client:联机帮助主题“随 Faces Client 组件迁移 JavaServer Faces 资源”可能缺少信息
   2.22 JavaServer Face 页面似乎在提交时丢失内容

1.0 局限性

1.1 Faces Client:具有未绑定 Faces Client 组件的 Faces JSP 不能在服务器上运行

您不能在服务器上运行包含未绑定 Faces Client 组件的 Faces JSP 文件。您必须绑定 Faces Client 组件到客户机数据对象,以便能够在服务器上运行。

1.2 Faces Client:如果具有 Faces Client 数据的 Faces JSP 文件是从包含整数、浮点、布尔或字符数据类型的空值的 WDO 创建的,那么它们就不能在 WAS 5.1 上运行

此问题是由内部 WDO 代码中的 NullPointerExceptions 造成的。可通过将数据库中的空值替换为缺省值或将服务器升级至 WAS 6.0 来变通这一问题。如果进行升级,请确保遵循《迁移指南》中的“随 Faces Client 组件迁移 JavaServer Faces 资源”一节中的指示信息。

注意:由于同一原因,包含从空的关系记录创建的客户机数据的 Faces JSP 不能在 WAS 5.1 上运行。这一问题没有简单容易的变通方法。

1.3 Faces Client:在插入“设置已选的对象作为目标组件的根”事件处理程序后,重新命名目标组件标识

如果在创建“设置已选的对象作为目标组件的根”事件处理程序片段后,将该事件处理程序的目标组件重命名,JavaScript 将不正确。要变通此问题,请删除该片段并重新创建它。

1.4 文件上载和下载组件在 portlet 中不受支持

实现文件上载和下载功能的 Faces 组件在 portlet 中不受支持。这些 Faces 组件包括:

1.5 Faces Client:在服务器上将行添加到绑定到关系记录列表(在数据图中深度为两层或更多层)的数据网格失败

在将行添加到绑定到关系记录列表(在数据图中深度为两层或更多层)的数据网格后,当提交 Faces JSP 文件时,您收到 java.lang.IllegalArgumentException:“CUSTOMERS”的“CUSTOMERS_ORDERS”功能不是容器。

这是 Faces Client 处理更新的方式的局限性。在 SDO 中,所有关系都包含(containment=true)在“DatagraphRoot”中,并且每个关系都引用(containment=false)其它包含在根中的关系。Faces Client DiffHandler 总是试图添加新对象到“父级”而不是“容器”中。

要变通这个问题,可以创建作为一级关系以新行更新的关系记录列表。例如,如果您想要添加行到 ORDERS 表(由 CUSTOMER 所有),而不是创建关系 CUSTOMER -> ORDERS 然后添加行到 ORDERS,您将要创建关系记录列表 ORDERS 并添加行到 ORDERS。

1.6 嵌套 dataTable 中的输入字段不能正确运行

如果您有嵌套在另一个 dataTable(例如,行的属性是一个集合)中的 dataTable,而且另一个 dataTable 在列中有输入组件,则数据模型将不能正确更新。

2.0 已知问题

2.1 将数据放入从页面模板派生的 Faces JSP 时出现问题

将数据放入从页面模板派生的 Faces JSP 文件时,生成的标记的位置可能不正确。如果模板的页体中有多个内容区域,则从“页数据”视图或“调色板”上的“数据抽屉”拖动数据总是会在第一个内容区域中生成新的标记。如果期望的目标不在该内容区域中,请切换到源代码模式。然后,将生成的源代码剪切并粘贴至正确的位置。确保选中了所有新标记(如果有外层的 h:form 标记,也包括它),并确保粘贴位置在期望内容区域的 hx:scriptCollector 标记中的某个位置。

2.2 Faces 资源迁移未更新 SDO 配置

如果使用的项目最初是使用 WSAD 5.1.2 开发的,系统可能会提示用户迁移项目中的 Faces 资源。如果选择“是”,系统会将 Faces 运行时自动更新到最新级别;然而,如果 WDO 是用于数据访问的,则需要手工执行补充配置:

  1. 在原始项目中创建新的临时 Faces JSP 文件。(单击文件 > 新建 > Faces JSP 文件。要获取帮助,请参阅联机帮助。)
  2. 将选用板上的“数据”抽屉中的关系记录组件拖至页面。选择重用现有元数据并选择列示的任何一个现有 WDO .xml 文件。这一过程生成继续在此项目中使用 WDO 所需的任何配置。
  3. 删除临时 JSP 文件。

有关更多信息,请参阅产品迁移指南。

2.3 inputText 上的验证页面未正确更新

当用户的页面上存在多个 inputText 字段时,inputText 字段的验证页面未能正确更新。如果 inputText 字段具有不同的转换器子标记,就会出现此问题。例如,如果一个 inputText 字段正使用 convertNumber 转换器而另一个具有一个 ConvertDateTime 转换器,则在标记间切换时将无法正确刷新验证页面。有两个可行的变通方法:切换到源代码模式并单击子验证或者帮助程序标记(此时页面将会刷新)。另一个变通方法是关闭并重新打开 JSP。

2.4 Faces Client:为 EGL 创建客户机数据后发生编译错误:“不能使用二进制名称引用嵌套类型..”

为 EGL 客户机数据生成的差别处理程序用于引用嵌套类型的语法不正确。要变通此问题,请编辑客户机数据介体类,以使用正确的语法。使用句点(.)代替美元符号($)。例如,如果您有以下代码:

if (_Root instanceof pagehandlers.overdueaccounts$COMPANYNAME)

将它更改为:

if (_Root instanceof pagehandlers.overdueaccounts.COMPANYNAME)

2.5 Faces Client:使用相同的模型名称来跨 portlet 对 WDO/SDO 页数据共享 Faces Client 数据模型并非总是起作用

当您创建重新使用已存在的 SDO/WDO 客户机数据的客户机数据时,请确保重新使用了 WDO/SDO 元数据文件以及模型名称。当您从“页数据”视图中创建 WDO/SDO 时,请选择“从现有的记录或记录列表中重新使用元数据定义。”接着,浏览并为您正在重新使用的 SDO 选择元数据文件。

2.6 Faces Client:Faces Client 控制事件因为缺少 viewId 而不能在门户网站中正常工作

要解决此问题,请确保所有 JSF 和 JSF 客户机控件在同一门户网站页面上使用的所有 portlet 中具有唯一标识。如果门户网站页面使用具有重复标识的未知 portlet,则可能发生冲突。建议包含 JSP 名称作为标识的一部分以确保标识的唯一性。

2.7 Faces Client:饼图标注和标题在绘图中重叠。

这一问题没有已知的变通方法。建议尽量少使用标注以避免混乱。

2.8 Faces Client:树形视图中的定制打开和关闭图标未显示在门户网站中

没有变通方法。不要在门户网站的树形视图中使用定制打开和关闭图标。

2.9 Faces Client:绘图运行时 - 某些值在 y 轴刻度中重复

当在 y 轴上绘制一系列结束值时,您可能会丢失缺省格式的精度。这种精度的缺少可能会造成值的重复。为避免此问题,请选择恰当的客户号码格式并且不要使用缺省值。

2.10 Faces Client:X 轴标注字符可能在 GraphDraw 中被切断

要变通此问题,请增大图形的大小。

2.11 Faces Client:在按计划将各项添加至数据网格后未添加标题/脚注栏

数据网格的页眉和页脚在以下场景中不显示:

  1. 当数据网格绑定到空的关系列表时
  2. 当按计划将各项添加至数据网格并且项数超出网格高度时

2.12 Faces Client:在网络中调用 Web Service 失败

将 webservice 和客户机放在两台不同的服务器上进行管理时,WebService 调用会失败。没有已知的变通方法,尽管 Macromedia Web 站点已经为这个跨域问题公布了一些解决方法。建议将 Web Service 与客户机放在同一服务器上。

2.13 Faces Client:创建客户机数据时“问题”视图中出现警告(未使用的导入类警告)

要从项目中除去这些警告,请右键单击 javasource 文件夹、项目或者带有警告的包。接着,在上下文菜单中选择 源代码 > 组织导入

2.14 Faces Client:“不能将 Faces Client 组件放在 clientData 标记之前”错误消息的变通方法

您在将 Faces Client 组件放入在同一页面上包含多重客户机数据的页面时可能会接收到此错误。要变通此问题,请切换到 JSP 的“源代码”视图,并且将所有 <odc:clientData> 标记移动到 <h:form> 标记正下方。

2.15 Faces Client:将树形视图放到源代码中

如果将树组件放到页面上或将树组件的源代码剪切并粘贴到页面上,则 <odc:tree> 标记偶然可能会带有 <p> 标记表示父代。这将导致树组件不正确地呈示在生成的 HTML 页面上。要解决此问题,删除 <odc:tree> 标记周围的 <p></p> 标记。

2.16 将图像文件放到“选项卡式面板”组件中

不能将“缩略图”视图或“项目资源管理器”视图中的图像文件放到选项卡式面板中。要将图像放到面板中,请从“选用板”视图的“HTML 标记”抽屉中拖放某个图像,然后选择想要放下的图像文件。

2.17 Faces Client:将目标从 WebSphere Application Server V5.1 重新定为 V6.0 后会产生一些问题,在遵循迁移指南中的步骤解决这些问题后,可能会出现“断开的链接”警告

在遵循迁移指南中关于为包含 Faces Client 组件的项目重新设定服务器目标(从 WebSphere Application Server V5.1 到 V6.0)的步骤后,可能会出现“断开的链接”警告。如果在 WebSphere Application Server V6.0 中运行页面时出现这些警告或者页面未正确显示,则关闭 Web 项目然后重新打开它。

2.18 无法在使用内部浏览器时编辑丰富文本编辑器

使用内部浏览器在服务器上运行丰富文本编辑器时,它会以形同只读的形式运行。在页面初次装入或在提交页面到服务器后可能会发生这个问题。使用外部浏览器可以变通这个问题。

2.19 丢失页状态 - 不会提交表单

产生这个问题的原因是,在到 Faces 页面的 URL 以及到页面资源的相对路径中使用了 Faces 前缀(css 和 images)。有两个变通此问题的方法:

1)使用到页面资源的标准路径名称。

2)使用到 Faces 页面的带有 .faces 扩展名但不带 faces/ 前缀的 URL。Faces 页面必须由 Faces servlet 处理。在项目 web.xml 文件中,缺省情况下向此 faces servlet 添加了两个映射。

<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.faces</url-pattern>
</servlet-mapping>

Faces 文件夹和带有 Faces 扩展名的文件都不实际存在。您只需要将它们作为 Faces 页面 URL 的一部分。要找到 page1.jsp,您可以使用 /faces/page1.jsp 或者 /page1.faces。这两个都可以配置(例如,您可以使用 .pages 作为扩展名)。

2.20 Faces Client:绑定到关系记录列表而只包含一列的数据网格无法在服务器上运行

当数据网格绑定到由只有一列的关系记录列表创建的客户机数据时,所生成的绑定是不正确的。例如:生成了 #{pc_Index1.surveys[0].NAME},而正确的绑定为 {pc_Index1.surveys}。变通方法是手工编辑 JSP 源代码以除去多余的索引和列名称(如以上示例所示)。

2.21 Faces Client:联机帮助主题“随 Faces Client 组件迁移 JavaServer Faces 资源”可能缺少信息

帮助主题的一些早期版本中,“随 Faces Client 组件迁移 JavaServer Faces 资源”可能在以下项中缺少信息:

如果您缺少此信息,请参阅《迁移指南》的 HTML 版本,它位于第一张 CD 的根目录或电子映像的 disk1/migrate.html 中。

2.22 JavaServer Face 页面似乎在提交时丢失内容

JavaServer Face(JSF)页面似乎在提交时丢失内容的地方出现问题。这可能与如何为页面保持状态以及如何为以相对路径(例如 theme/stylesheet.css)指定的页面资源(例如 css 和图像文件)处理请求相关。要变通此问题,到 JSF 页面的 URL 应该使用 .faces 扩展名选项。例如,到 JSF 页面 myPage.jsp 的 URL 应该为 /MyWebApp/myPages.faces。此扩展名在项目 web.xml 文件中定义。另一个选项是选择在客户机中保存状态

返回到主自述文件