Oracle CertView

Posted on September 30, 2009 - Filed Under Uncategorized | Leave a Comment

今天在Oracle博客上讨论最多的话题是什么?就是CertView。 数日之前,Oracle宣布解除和Prometric的合作关系,转之以Pearson VUE。原先Prometric的数据需要自行转移到CertView。相对于之前更加方便的一点是:它提供了认证历史查看和证书外发功能。记得寻找第一份工作时,面试要带上所有的证书复印件,真是麻烦。虽然好多年没经历过了,但是那种拿着文件夹傻兮兮的样子,真是终生难忘。 基本上,有个OCP和OCE认证,除非真想做个Oracle数据库大师级人物,一般来讲,是不会去升级认证的了。不过,花点时间把Prometric数据转移到CertView还是值得的,至少也是职业生涯中的一段历史,保留一下也好。

APEX与EBS登录权限集成

Posted on September 28, 2009 - Filed Under APEX, E-Business Suite | Leave a Comment

APEX的访问权限主要分为两种:Authentication和Authorization,简单来说,前者控制登录权限,一次登录各处可用;后者控制各页面或模块的权限。事实上,APEX应用中甚至无需管理用户数据,你所需要的是管理逻辑上的权限,而不需要存储权限数据本身,如此,登录权限的管理便可以非常灵活。 而EBS的权限控制稍微复杂一点,但是从登录权限来看却简单许多,主要是通过包FND_WEB_SEC来进行验证,如: SQL> set serveroutput on SQL> exec dbms_output.put_line(fnd_web_sec.validate_login(‘ZEENO’, ‘PW123′)); Y PL/SQL procedure successfully completed 只需要调用该过程,即可直接使用EBS的用户登录了。如果APEX和EBS分处不同的数据库中,则可以使用远程过程调用方式: fnd_web_sec.validate_login@DBLINK(‘ZEENO’, ‘PW123′); 首先,APEX本地库中创建验证函数: CREATE FUNCTION ebs_auth(p_username IN VARCHAR2, p_password IN VARCHAR2) RETURN BOOLEAN AS BEGIN — 使用EBS远程验证 IF fnd_web_sec.validate_login@dblink(p_username, p_password) = ‘Y’ THEN RETURN TRUE; ELSE RETURN FALSE; END IF; END ebs_auth; 按照规范,需要添加p_username和p_password两个参数。 接下来,在APEX中创建新的Authentication Scheme,一切按正常方式进行,所需要改动的,是将上面的验证函数添加到Authentication Function: 如此,即可使用EBS用户、密码进行登录了。

为什么要学APEX

Posted on September 23, 2009 - Filed Under APEX | 1 Comment

why-learn-apex

XDB取消浏览器认证

Posted on September 22, 2009 - Filed Under APEX | Leave a Comment

APEX安装后,默认访问路径为http://host:port/apex/,如果直接访问根目录,会弹出浏览器认证窗口要求登录。对于多数浏览器,比如IE或者Firefox都没有问题,但是少数浏览器,会自动访问网站根目录,比如查找默认favicon,此时会时常弹出浏览器登录认证窗口,虽然可以直接取消,但是非常烦人。原因便是XDB对用户ANONYMOUS账号权限的设定,访问apex之外的目录需要登录。这个认证窗口,是可以取消的。 在安装APEX时,最后步骤要求UNLOCK ANONYMOUS账号: ALTER USER ANONYMOUS ACCOUNT UNLOCK; 该操作启用了ANONYMOUS账号,但是并没有赋予匿名访问XDB Repository的权限。 进入$ORACLE_HOME/RDBMS/Admin,用sysdba权限登录执行: SQL>@epgstat 检查Allow repository anonymouse access值,默认为false,即默认禁止匿名访问根目录。我们需要将该值修改为true。 所有XDB的配置都存放在xdbconfig.xml中,但是该文件需要编程修改。查看路径为: 1. EM用sysdba登录。 2. Database Instance > XML Database Resources > View XML Database Resource: xdbconfig.xml 默认httpconfig节点中并没有allow-repository-anonymous-access的配置,EM中无法修改该文件,我们需要用以下代码添加节点: DECLARE l_configxml xmltype; l_value VARCHAR2(5) := ‘true’; — (true/false) BEGIN l_configxml := dbms_xdb.cfg_get(); IF l_configxml.existsnode(‘/xdbconfig/sysconfig/protocolconfig/httpconfig/allow-repository-anonymous-access’) = 0 THEN — Add missing element. [...]

APEX:在系统后台跑PL/SQL

Posted on September 20, 2009 - Filed Under APEX | 2 Comments

在一个ERP环境中,经常遭遇到一些执行时间非常长的情况。对于EBS产品,可以考虑使用并发请求的方式来让表单将控制权快速返回给用户,有些人也喜欢利用Workflow来应对此类情况(使用Deferred特性)。在和Oracle的对话中,以及Oracle Database 11g产品组件透露的信息上可以看出,APEX(Application Express)越来越成为一个非常重要的角色。从以前独立版本的HTML DB,到现在直接内置到11g中,仿佛就是在向企业用户宣告了另一种企业信息化方案。开发的Web应用程序通常具备非常快速的响应,但是偶尔也会遭遇一些非常情形,比如某个财务报表的运算逻辑非常复杂,通常无法立即返回结果,这时该如何处理呢? 一种比较简单的方式就把这部分工作还给EBS,Web应用程序等处理完毕后再直接获取运算结果,这种方式不需要对原EBS应用做太大调整,而纯粹作为一个结果呈现的客户端。其实还有另外一种方式来处理该问题,即将PL/SQL代码放到后台去执行。APEX给出一个官方的解决方案,使用APEX_PLSQL_JOB。它的原理就是通过DBMS_JOB的功能来让代码延迟执行: APEX_PLSQL_JOB.SUBMIT_PROCESS ( p_sql IN VARCHAR2, p_when IN DATE DEFAULT SYSDATE, p_status IN VARCHAR2 DEFAULT ‘PENDING’) RETURN NUMBER; 该过程提交后台执行的PL/SQL代码,它会返回新创建的job number,可以根据该标识来跟踪job执行状态。这个包里已封装的过程主要包含: JOBS_ARE_ENABLED 判断是否支持使用APEX_PLSQL_JOB提交后台执行的PL/SQL代码。 PURGE_PROCESS 清理已提交的jobs。 SUBMIT_PROCESS 提交后台执行的PL/SQL TIME_ELAPSED 统计job提交后过了多少时间 UPDATE_JOB_STATUS 更新当前执行中的job状态,通常在提交的PL/SQL代码中调用。 为什么是DBMS_JOB而不是DBMS_SCHEDULER呢?众所周知,APEX的前身是HTML DB,它在10g版本以前的数据库中也可以正常工作,而DBMS_SCHEDULER则是10g时代才被引入的。事实上,在很多内部程序或表结构上,如今的APEX还是遗留有许多HTML DB的影子。 只要明白了原理,我们也可以设计更适合自己工作环境的wrapper package,比如可以考虑充分利用DBMS_SCHEDULER的新特性。

Oracle 将终止与 Prometric的合作

Posted on August 25, 2009 - Filed Under Uncategorized | 1 Comment

Oracle最近发布了一则公告称,他们将终止和Prometric的合作,将认证考试业务转给另一家公司,但是目前尚不知晓是哪一家。 Prometric Testing ID将转换到Oracle Testing ID,同时,原Hand-On Course的表单提交也将于今年9月份终止使用,将会另行启用新的课程提交系统。回想起我当初提交OCP的课程信息时,如果不按照指南,根本就无法顺利提交。新的课程提交系统还是很值得期待的。 在中国,Prometric的考场已经遍地开花了,不知道新的考试服务提供商(我是指中国的),会不会依旧会给广大考生提供如此大的便利。 公告原文见: http://www.oracle.com/global/us/education/certification/exam_vendor.html

« go back keep looking »

  • Recent Tweets

    • 通信企业内部禁止使用无线路由,是不是有点难以理解?
      6:52 AM Sep 09, 2010
    • 不管是常规行业还是高科技行业,总有一些匪夷所思的方案被提出来,并且总是外行在做决策。
      2:53 AM Sep 09, 2010
    • “模块就如同人的器官,具有特定的功能。人体中最出色的模块设计之一是手,手只有几种动作,却能做无限多的事情。人体中最糟糕的模块设计之一是嘴巴,嘴巴将最有价值但毫无相干的几种功能如吃饭、说话、亲吻混为一体,使之无法并行处理,真乃人类之不幸。”
      1:20 AM Sep 08, 2010
    • 本机架设个IMAP服务器可以解决任何客户端的邮件迁移问题,快速,便捷,高效。
      12:16 PM Sep 06, 2010
    • 大智慧新用户注册时提示密码“可以是英文字母或数字,区分大小写”,但是仅限纯粹字母,或者纯粹数字,如果字母加数字竟然被提示不合法。
      12:26 AM Sep 02, 2010

    Recent Comments

    • lifandong: 学习了,这网站可真清爽,资料也很多...
    • Zeeno: 可以免费的。 他有很多种授权方式,比如写篇博客推荐一番,他也可以给你授权码。...
    • Toney Wu: 有点意思。特别是这种手绘风格即能表达出其际功能,又省得界面开发出和画的不一样让人...
    • 明 强: 今天下班 在说笑中请到了三天假 他问我做什么 随便也提到了谢哥你的博客 我老大说...
    • Zeeno: Oracle ADF 是相对独立的开发框架,目前,ADF没有被EBS应用认证过,...