概述
2009年4月16日星期四
在Region之间传递Event
概述
2009年4月15日星期三
监听dialog的取消按钮事件
function openPopup(evt){
var dialog = AdfPage.PAGE.findComponent('dlg2');
dialog.HandleEvent = function(event) {
if (event.getType() == AdfDialogEvent.EVENT_TYPE) {
event.propagatesToServer = function(){
return true;
}
}
}
AdfUIDialog.superclass.HandleEvent.call(this, event);
}
Manage Bean中向客户端写js
private void addScript(String script) {
FacesContext fc = FacesContext.getCurrentInstance();
ExtendedRenderKitService erks =
Service.getRenderKitService(fc, ExtendedRenderKitService.class);
erks.addScript(fc, script);
}
Oracle 数据库打开时出现ORA-16038
Oracle
10g默认启用日志归档,db_recovery_file默认为2GB,不清理日志一般经过一段时间的使用闪回区便被占满,造成数据库无法归档,无法启动的错误。一般ORA-16038、ORA-19809、ORA-00312这三个错误会同时出现。
解决方法通常包括:
1. 提高参数db_recovery_file_dest_size
- 使用sqlplus /nolog登录,SQL> connect /as sysdba;
- SQL> startup mount;
- SQL> ALTER SYSTEM SET
DB_RECOVERY_FILE_DEST_SIZE=4G SCOPE=BOTH; - SQL> alter database open;
2. 关闭闪回功能(如果你确实不再需要该功能)
- 使用sqlplus /nolog登录,connect /as sysdba;
- SQL> alter system archive log
stop;
3. 删除无用的归档文件并更新rman记录
- 查看对应initxxx.ora,找不到的话可以在$ORACLE_HOME下搜索,找对应SID的即可
- 在initxxx.ora中找到# File
Configuration部分,可以看到db_recovery_file_dest=XXXXX,即为数据闪回区的日志文件记录位置。 - 进入闪回区目录,查看对应SID下的archivelog文件夹内内容,删除旧的日志归档文件
- 使用RMAN命令,RMAN> connect target /
- 使用命令RMAN> crosscheck archivelog
all,该操作将标明哪些归档文件已被删除 - 使用命令RMAN> delete expired archivelog
all,该命令将删除rman controlfile中相应的记录
2009年4月14日星期二
使用Google文档发布日志到Blogger
1、安装Google Gears 。
2009年4月7日星期二
2009年3月30日星期一
在Task-Flow中实现页面间传值
本文主要说明ADF中如何实现在Task-Flow中的页面之间传值。
在本示例中将创建两个页面,分别为PageA和PageB,并完成PageA向PageB中的传值。
实现
思路:
步骤一:使用set action listener或set property listener,设置from,to,type(set property listener),将当前页面的值设置到pageFlowScope中,例如设置在#{pageFlowScope.var1}。
当然,在task-flow中传值时,可以在actionlistener里面设置值到pageFlowScope中。
步骤二:在页面中取值时,如果需要在一进入页面时就将该值取到并显示在页面中,可以将取值的相关代码写在页面对应的Backing Scope ManagedBean的构造方法中。
1、 创建应用,并基于Employees和Regions两张表创建EO/VO,并将各自实例添加到AM中。
2、 创建Bounded Task-Flow,拖两个View到该Task-Flow,Id分别为PageA和PageB,完成之间的导航设置。分别双击两个页面,用向导创建出PageA.jspx和PageB.jspx。
3、 在PageA中,右键点击导航到PageB的按钮,在其中添加Set Action Listener,如图完成相关值的传递。

注:此时#{pageFlowScope.var1}会被标红,忽略此处。
4、打开PageB对应的Backing Scope ManagedBean,在其构造方法中添加如下代码:
RequestContext rc = RequestContext.getCurrentInstance(); String value = (String)rc.getPageFlowScope().get("var"); List list = ADFUtils.getBindingContainer().getAttributeBindings(); for (int i = 0; i <> AttributeBinding abb = (AttributeBinding)list.get(i); if (abb.getName().equals("FirstName")) { abb.setInputValue(value); } } rc.getPageFlowScope().clear(); |
5、保存以上更改和设置,运行该Task-Flow,查看结果:


相关代码请查看:howtopassvaluebetweenpages.rar